mirror of
https://github.com/flatcar/scripts.git
synced 2025-09-21 21:51:57 +02:00
ci-automation: Add an environment variable to skip build shortcuts
This will be used for the "run all tests" days in Jenkins.
This commit is contained in:
parent
60f214508a
commit
fbb962c7f6
@ -31,6 +31,10 @@ CI_GIT_EMAIL="infra+ci@flatcar-linux.org"
|
|||||||
CONTAINER_TORCX_ROOT="/home/sdk/build/torcx"
|
CONTAINER_TORCX_ROOT="/home/sdk/build/torcx"
|
||||||
CONTAINER_IMAGE_ROOT="/home/sdk/build/images"
|
CONTAINER_IMAGE_ROOT="/home/sdk/build/images"
|
||||||
|
|
||||||
|
# Set it to "1" or "true" or "t" or "y" or "yes" to always run a full
|
||||||
|
# nightly build. Any other value will allow build shortcuts.
|
||||||
|
: ${AVOID_NIGHTLY_BUILD_SHORTCUTS:=0}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Image / vendor tests settings
|
# Image / vendor tests settings
|
||||||
#
|
#
|
||||||
|
@ -507,3 +507,17 @@ function apply_local_patches() {
|
|||||||
done
|
done
|
||||||
}
|
}
|
||||||
# --
|
# --
|
||||||
|
|
||||||
|
# Returns 0 if passed value is either "1" or "true" or "t", otherwise
|
||||||
|
# returns 1.
|
||||||
|
function bool_is_true() {
|
||||||
|
case "${1}" in
|
||||||
|
1|true|t|yes|y)
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
# --
|
||||||
|
@ -48,6 +48,9 @@
|
|||||||
#
|
#
|
||||||
# 6. A file ../portage.patch to apply with "git am -3" for the portage-stable sub-module.
|
# 6. A file ../portage.patch to apply with "git am -3" for the portage-stable sub-module.
|
||||||
#
|
#
|
||||||
|
# 7. AVOID_NIGHTLY_BUILD_SHORTCUTS. Environment variable. Tells the script to build the SDK even if nothing has changed since last nightly build.
|
||||||
|
# See the description in ci-config.env.
|
||||||
|
#
|
||||||
# OUTPUT:
|
# OUTPUT:
|
||||||
#
|
#
|
||||||
# 1. Updated scripts repository
|
# 1. Updated scripts repository
|
||||||
@ -98,7 +101,14 @@ function _packages_tag_impl() {
|
|||||||
&& [[ "$(git -C sdk_container/src/third_party/portage-stable/ rev-parse --abbrev-ref HEAD)" =~ ^flatcar-[0-9]+$ ]] ; then
|
&& [[ "$(git -C sdk_container/src/third_party/portage-stable/ rev-parse --abbrev-ref HEAD)" =~ ^flatcar-[0-9]+$ ]] ; then
|
||||||
push_branch="true"
|
push_branch="true"
|
||||||
local existing_tag=""
|
local existing_tag=""
|
||||||
|
# Check for the existing tag only when we allow shortcutting
|
||||||
|
# the builds. That way we can skip the checks for build
|
||||||
|
# shortcutting.
|
||||||
|
if bool_is_true "${AVOID_NIGHTLY_BUILD_SHORTCUTS}"; then
|
||||||
|
echo "Continuing the build because AVOID_NIGHTLY_BUILD_SHORTCUTS is bool true (${AVOID_NIGHTLY_BUILD_SHORTCUTS})" >&2
|
||||||
|
else
|
||||||
existing_tag=$(git tag --points-at HEAD) # exit code is always 0, output may be empty
|
existing_tag=$(git tag --points-at HEAD) # exit code is always 0, output may be empty
|
||||||
|
fi
|
||||||
# If the found tag is a release or nightly tag, we stop this build if there are no changes
|
# If the found tag is a release or nightly tag, we stop this build if there are no changes
|
||||||
if [[ "${existing_tag}" =~ ^(stable|alpha|beta|lts)-[0-9.]+(|-nightly-[-0-9]+)$ ]]; then
|
if [[ "${existing_tag}" =~ ^(stable|alpha|beta|lts)-[0-9.]+(|-nightly-[-0-9]+)$ ]]; then
|
||||||
local ret=0
|
local ret=0
|
||||||
|
@ -53,6 +53,9 @@
|
|||||||
#
|
#
|
||||||
# 10. A file ../portage.patch to apply with "git am -3" for the portage-stable sub-module.
|
# 10. A file ../portage.patch to apply with "git am -3" for the portage-stable sub-module.
|
||||||
#
|
#
|
||||||
|
# 11. AVOID_NIGHTLY_BUILD_SHORTCUTS. Environment variable. Tells the script to build the SDK even if nothing has changed since last nightly build.
|
||||||
|
# See the description in ci-config.env.
|
||||||
|
#
|
||||||
# OUTPUT:
|
# OUTPUT:
|
||||||
#
|
#
|
||||||
# 1. SDK tarball (gentoo catalyst output) of the new SDK, pushed to buildcache.
|
# 1. SDK tarball (gentoo catalyst output) of the new SDK, pushed to buildcache.
|
||||||
@ -106,7 +109,14 @@ function _sdk_bootstrap_impl() {
|
|||||||
&& [ "$(git -C sdk_container/src/third_party/portage-stable/ rev-parse --abbrev-ref HEAD)" = "main" ] ; then
|
&& [ "$(git -C sdk_container/src/third_party/portage-stable/ rev-parse --abbrev-ref HEAD)" = "main" ] ; then
|
||||||
push_branch="true"
|
push_branch="true"
|
||||||
local existing_tag=""
|
local existing_tag=""
|
||||||
|
# Check for the existing tag only when we allow shortcutting
|
||||||
|
# the builds. That way we can skip the checks for build
|
||||||
|
# shortcutting.
|
||||||
|
if bool_is_true "${AVOID_NIGHTLY_BUILD_SHORTCUTS}"; then
|
||||||
|
echo "Continuing the build because AVOID_NIGHTLY_BUILD_SHORTCUTS is bool true (${AVOID_NIGHTLY_BUILD_SHORTCUTS})" >&2
|
||||||
|
else
|
||||||
existing_tag=$(git tag --points-at HEAD) # exit code is always 0, output may be empty
|
existing_tag=$(git tag --points-at HEAD) # exit code is always 0, output may be empty
|
||||||
|
fi
|
||||||
# If the found tag is a nightly tag, we stop this build if there are no changes
|
# If the found tag is a nightly tag, we stop this build if there are no changes
|
||||||
if [[ "${existing_tag}" =~ ^main-[0-9.]+-nightly-[-0-9]+$ ]]; then
|
if [[ "${existing_tag}" =~ ^main-[0-9.]+-nightly-[-0-9]+$ ]]; then
|
||||||
local ret=0
|
local ret=0
|
||||||
|
Loading…
x
Reference in New Issue
Block a user