mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-06 02:25:23 +00:00
d1dbefc9dc
This replaces the existing tooling at ./ci/ with the new tooling at ./tools. BUG=b:199951064 TEST=./ci/kokoro/simulate_all Change-Id: Id0296d5a46ca0f3eb0f655d85d1aed801ee3b434 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3226275 Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Dennis Kempin <denniskempin@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
60 lines
1.8 KiB
Bash
Executable file
60 lines
1.8 KiB
Bash
Executable file
#!/bin/bash
|
|
# Copyright 2021 The Chromium OS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# Enable SSH access to the kokoro builder.
|
|
# Use the fusion2/ UI to trigger a build and set the DEBUG_SSH_KEY environment
|
|
# variable to your public key, that will allow you to connect to the builder
|
|
# via SSH.
|
|
# Note: Access is restricted to the google corporate network.
|
|
# Details: https://yaqs.corp.google.com/eng/q/6628551334035456
|
|
if [[ ! -z "${DEBUG_SSH_KEY}" ]]; then
|
|
echo "${DEBUG_SSH_KEY}" >>~/.ssh/authorized_keys
|
|
external_ip=$(
|
|
curl -s -H "Metadata-Flavor: Google" \
|
|
http://metadata/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip
|
|
)
|
|
echo "SSH Debug enabled. Connect to: kbuilder@${external_ip}"
|
|
fi
|
|
|
|
setup_source() {
|
|
if [ -z "${KOKORO_ARTIFACTS_DIR}/git" ]; then
|
|
echo "This script must be run in kokoro"
|
|
exit 1
|
|
fi
|
|
|
|
mkdir -p "${KOKORO_ARTIFACTS_DIR}/logs"
|
|
|
|
cd "${KOKORO_ARTIFACTS_DIR}/git/crosvm"
|
|
|
|
echo "Fetching Submodules..."
|
|
git submodule update --init
|
|
}
|
|
|
|
cleanup() {
|
|
# Sleep after the build to allow for SSH debugging to continue.
|
|
if [[ ! -z "${DEBUG_SSH_KEY}" ]]; then
|
|
echo "Build done. Blocking for SSH debugging."
|
|
sleep 1h
|
|
fi
|
|
|
|
# List files in the logs directory which are uploaded to sponge.
|
|
echo "Build Artifacts:"
|
|
ls "${KOKORO_ARTIFACTS_DIR}/logs"
|
|
}
|
|
|
|
# Setup source when the script is loaded. Clean up on exit.
|
|
trap cleanup EXIT
|
|
setup_source || {
|
|
echo "Failed to setup_source"
|
|
exit 1
|
|
}
|
|
|
|
# Set logs directory so we can copy them to sponge
|
|
export CROSVM_BUILDER_LOGS_DIR="${KOKORO_ARTIFACTS_DIR}/logs"
|
|
cd "${KOKORO_ARTIFACTS_DIR}/git/crosvm"
|
|
|
|
# Log how long it takes to pull the docker container
|
|
echo "Downloading dev container image"
|
|
time ./tools/dev_container echo "done"
|