| #!/usr/bin/env bash |
| |
| # Copyright 2019 The Fuchsia Authors |
| # |
| # Use of this source code is governed by a MIT-style |
| # license that can be found in the LICENSE file or at |
| # https://opensource.org/licenses/MIT |
| |
| set -eo pipefail |
| |
| declare -r DEBIAN_GUEST_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" |
| declare -r FUCHSIA_DIR=$(git rev-parse --show-toplevel) |
| declare -r CIPD="${FUCHSIA_DIR}/.jiri_root/bin/cipd" |
| |
| case "${1}" in |
| arm64) |
| ARCH=${1};; |
| x64) |
| ARCH=${1};; |
| *) |
| echo "usage: ${0} {arm64, x64}" |
| exit 1;; |
| esac |
| |
| ${CIPD} auth-login |
| |
| # Clean the existing images directory. |
| declare -r IMAGE_DIR="${FUCHSIA_DIR}/prebuilt/virtualization/packages/debian_guest/images/${ARCH}" |
| rm -rf "${IMAGE_DIR}" |
| mkdir -p "${IMAGE_DIR}" |
| |
| # Clean the tests source directory. |
| declare -r TESTS_DIR="/tmp/linux-tests" |
| rm -rf "${TESTS_DIR}" |
| |
| # Build Debian. |
| ${DEBIAN_GUEST_DIR}/build-image.sh \ |
| -o ${IMAGE_DIR} \ |
| ${ARCH} |
| |
| # Build tests. |
| ${DEBIAN_GUEST_DIR}/mktests.sh \ |
| -d "${TESTS_DIR}" \ |
| -o "${IMAGE_DIR}/tests.img" \ |
| -u \ |
| ${ARCH} |
| TESTS_GIT_HASH="$( cd ${TESTS_DIR} && git rev-parse --verify HEAD )" |
| |
| declare -r CIPD_PATH="fuchsia_internal/linux/debian_guest-${ARCH}" |
| ${CIPD} create \ |
| -in "${IMAGE_DIR}" \ |
| -name "${CIPD_PATH}" \ |
| -install-mode copy \ |
| -tag "tests_git_revision:${TESTS_GIT_HASH}" |