mirror of
https://github.com/flatcar/scripts.git
synced 2025-08-07 21:16:57 +02:00
Before, we were relying on the toolchains job to build and upload packages that were part of the SDK. With this change, all packages that should be part of the SDK are built and uploaded by the SDK job. The toolchains job only builds toolchain packages specific for the release. This change includes several adjustments done to both the SDK and the toolchains jobs to make this work: * Make the SDK job build all cross toolchains, including Rust * Stop building Rust in the toolchains job and use the one in the SDK instead. * In toolchain_util.sh: detect when the symlink folder for crossdev packages is missing and run crossdev to create it during update_chroot setup. * Make it possible to build the SDK starting from stage 4 instead of stage 1, to make the SDK building faster for PR branches / nightlies (full build should still be done for releases / weeklies).
50 lines
1.3 KiB
Bash
Executable File
50 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Copyright (c) 2013 The CoreOS Authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
SCRIPT_ROOT=$(dirname $(readlink -f "$0"))
|
|
. "${SCRIPT_ROOT}/common.sh" || exit 1
|
|
|
|
TYPE="coreos-toolchains"
|
|
FORCE_STAGES="stage4"
|
|
|
|
. "${BUILD_LIBRARY_DIR}/catalyst.sh" || exit 1
|
|
|
|
# include upload options
|
|
. "${BUILD_LIBRARY_DIR}/release_util.sh" || exit 1
|
|
|
|
ROOT_OVERLAY="${TEMPDIR}/stage4-${ARCH}-$FLAGS_version-overlay"
|
|
|
|
## Define the stage4 config template
|
|
catalyst_stage4() {
|
|
cat <<EOF
|
|
target: stage4
|
|
pkgcache_path: $BINPKGS
|
|
stage4/packages: @system
|
|
stage4/fsscript: ${BUILD_LIBRARY_DIR}/catalyst_toolchains.sh
|
|
stage4/root_overlay: ${ROOT_OVERLAY}
|
|
EOF
|
|
catalyst_stage_default
|
|
}
|
|
|
|
catalyst_init "$@"
|
|
check_gsutil_opts
|
|
|
|
# toolchain_util.sh is required by catalyst_toolchains.sh
|
|
mkdir -p "${ROOT_OVERLAY}/tmp"
|
|
cp "${BUILD_LIBRARY_DIR}/toolchain_util.sh" "${ROOT_OVERLAY}/tmp"
|
|
|
|
catalyst_build
|
|
|
|
# TODO: Actually just TOOLCHAIN_PKGS and the exact dependencies should be uploaded
|
|
for board in $(get_board_list); do
|
|
board_packages="${BINPKGS}/target/${board}"
|
|
def_upload_path="${UPLOAD_ROOT}/boards/${board}/${FLAGS_version}"
|
|
sign_and_upload_files "board toolchain packages" "${def_upload_path}" \
|
|
"toolchain/" "${board_packages}"/*
|
|
done
|
|
|
|
command_completed
|