diff --git a/.gitlab/ci/common.gitlab-ci.yml b/.gitlab/ci/common.gitlab-ci.yml index 314d53955b060a31e738451fd25d99d6d7d8c249..650a010f442b8e21912d573d7e2253c32c68c05e 100644 --- a/.gitlab/ci/common.gitlab-ci.yml +++ b/.gitlab/ci/common.gitlab-ci.yml @@ -41,6 +41,17 @@ - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" - populate_stable_image_vars after_script: + # Variables set in `before_script` aren't available in `after_script`. + # Hence, we need to duplicate code setting UBI_PIPELINE and FIPS_PIPELINE + # variables based on various conditions. + - if [[ "${CI_COMMIT_TAG}" == *-ubi8 || "${CI_COMMIT_REF_NAME}" == *-ubi8 ]]; then + - export UBI_PIPELINE="true" + - elif [[ "${CI_COMMIT_TAG}" == *-fips || "${CI_COMMIT_REF_NAME}" == *-fips ]]; then + - export FIPS_PIPELINE="true" + - fi + - if [ "${FIPS_PIPELINE}" = "true" ]; then + - export UBI_PIPELINE="true" + - fi - source build-scripts/build.sh - list_artifacts ## cleanup all mocked container tags from import_assets diff --git a/.gitlab/ci/fips.gitlab-ci.yml b/.gitlab/ci/fips.gitlab-ci.yml index 50021fc7a43606bc6ebe39465ea6e6d65c6c94bb..730d269ee217f48364045f099c72e80f5ee956df 100644 --- a/.gitlab/ci/fips.gitlab-ci.yml +++ b/.gitlab/ci/fips.gitlab-ci.yml @@ -35,6 +35,15 @@ include: - export BUILD_IMAGE="${CI_REGISTRY_IMAGE}/gitlab-ubi-builder:${BUILD_IMAGE_VERSION}-ubi8" - docker login -u "$CI_DEPENDENCY_PROXY_USER" -p "$CI_DEPENDENCY_PROXY_PASSWORD" "$CI_DEPENDENCY_PROXY_SERVER" - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" + after_script: + - if [[ "${CI_COMMIT_TAG}" == *-fips || "${CI_COMMIT_REF_NAME}" == *-fips ]]; then + - export FIPS_PIPELINE="true" + - fi + - export UBI_PIPELINE="true" + - source build-scripts/build.sh + - list_artifacts ubi + ## cleanup all mocked container tags from import_assets + - cleanup_mock_tags artifacts: paths: - artifacts/ diff --git a/.gitlab/ci/ubi.gitlab-ci.yml b/.gitlab/ci/ubi.gitlab-ci.yml index f6b62bf9c923bc55f2acee1500eff1ee685513c9..c7c3e9864191fa623135a5741bfec8e56b943c86 100644 --- a/.gitlab/ci/ubi.gitlab-ci.yml +++ b/.gitlab/ci/ubi.gitlab-ci.yml @@ -49,6 +49,12 @@ gitlab-ubi-builder: - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" - list_artifacts ubi after_script: + # Variables set in `before_script` aren't available in `after_script`. + # Hence, we need to duplicate code setting UBI_PIPELINE and FIPS_PIPELINE + # variables based on various conditions. + - if [[ "${CI_COMMIT_TAG}" == *-ubi8 || "${CI_COMMIT_REF_NAME}" == *-ubi8 ]]; then + - export UBI_PIPELINE="true" + - fi - source build-scripts/build.sh - list_artifacts ubi ## cleanup all mocked container tags from import_assets diff --git a/build-scripts/build.sh b/build-scripts/build.sh index 3ec36519acb77ead1f5843bb8af18444904b9daa..9776842dda541beb5af09af49288264075db41c0 100644 --- a/build-scripts/build.sh +++ b/build-scripts/build.sh @@ -437,7 +437,7 @@ mock_tags_from_assets() { # Clean the macked container versions tag files, so they do not pollute # artifacts that will be used by later jobs. cleanup_mock_tags() { - if [ "${UBI_PIPELINE}" = 'true' ]; then + if [ "${UBI_PIPELINE}" = 'true' ] || [ "${FIPS_PIPELINE}" = 'true' ]; then echo "==== Cleaning up mocked tags from UBI import_assets" shopt -s nullglob containers="artifacts/container_versions/*_tag.txt"