You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.4 KiB
55 lines
1.4 KiB
4 months ago
|
#!/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.
|
||
|
|
||
|
# Clean scratch directory if requested.
|
||
|
if [ "$1" = "--clean" ]; then
|
||
|
shift
|
||
|
echo "Cleaning scratch directory..."
|
||
|
rm -rf /workspace/scratch/*
|
||
|
fi
|
||
|
|
||
|
echo "Building ChromeOS dependencies..."
|
||
|
if ! make -j $(nproc) -C ci/build_environment \
|
||
|
>/workspace/logs/build_environment.log 2>&1; then
|
||
|
echo "Failed to build ChromeOS dependencies"
|
||
|
cat /workspace/logs/build_environment.log
|
||
|
# Drop into an interactive shell for debugging.
|
||
|
if [[ $# -eq 0 ]]; then
|
||
|
/bin/bash
|
||
|
fi
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
if [ "$1" = "--vm" ]; then
|
||
|
shift
|
||
|
echo "Starting testing vm..."
|
||
|
(cd /workspace/vm && screen -Sdm vm ./start_vm)
|
||
|
export CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUNNER="\
|
||
|
/workspace/src/platform/crosvm/ci/vm_tools/exec_binary_in_vm"
|
||
|
|
||
|
if [[ $# -eq 0 ]]; then
|
||
|
test_target="Virtual Machine (See 'screen -r vm' or 'ssh vm')"
|
||
|
else
|
||
|
test_target="Virtual Machine"
|
||
|
fi
|
||
|
export CROSVM_USE_VM=1
|
||
|
else
|
||
|
test_target="Native execution"
|
||
|
fi
|
||
|
|
||
|
echo ""
|
||
|
echo "crosvm builder is ready:"
|
||
|
echo " Cargo version: $(cargo --version)"
|
||
|
echo " Test target: ${test_target}"
|
||
|
echo ""
|
||
|
|
||
|
# Run user provided command or interactive shell
|
||
|
if [[ $# -eq 0 ]]; then
|
||
|
/bin/bash
|
||
|
else
|
||
|
echo "$ $@"
|
||
|
/bin/bash -c "$@"
|
||
|
fi
|