From 7ef33a3539d5b974763e06363bf4de78d0ce02ae Mon Sep 17 00:00:00 2001 From: aram price Date: Tue, 14 Apr 2026 11:39:53 -0700 Subject: [PATCH 1/2] CI: ensure that the correct resource is used when running tasks It is important that code-under-test, and tasks-in-use come from the non-CI resource `bosh-linux-stemcell-builder` and not `bosh-stemcells-ci` (current naming) so that code executed has satisfied the expected pass constraints. --- ci/tasks/build-docker-args.sh | 2 +- ci/tasks/build-release-metadata.sh | 6 +++--- ci/tasks/build.sh | 11 ++++++----- ci/tasks/bump-bosh-agent.sh | 9 ++++++--- ci/tasks/bump-bosh-blobstore-cli.sh | 2 +- ci/tasks/commit-build-time.sh | 2 +- ci/tasks/os-images/build.sh | 2 +- ci/tasks/test-unit.sh | 2 +- 8 files changed, 20 insertions(+), 16 deletions(-) diff --git a/ci/tasks/build-docker-args.sh b/ci/tasks/build-docker-args.sh index beeb9ea540..9e7da2b8b9 100755 --- a/ci/tasks/build-docker-args.sh +++ b/ci/tasks/build-docker-args.sh @@ -28,7 +28,7 @@ yq_cli_url="$(curl -s https://api.github.com/repos/mikefarah/yq/releases/latest ruby_install_url="$(curl -s https://api.github.com/repos/postmodern/ruby-install/releases/latest \ | jq -r '.assets[] | select(.name | endswith ("tar.gz")) | .browser_download_url')" -ruby_version="$(cat "${REPO_ROOT}/.ruby-version")" +ruby_version="$(cat "${REPO_PARENT}/bosh-linux-stemcell-builder/.ruby-version")" gem_home="/usr/local/bundle" cat << EOF > "${REPO_PARENT}/docker-build-args/docker-build-args.json" diff --git a/ci/tasks/build-release-metadata.sh b/ci/tasks/build-release-metadata.sh index e9e5d08600..5ef9a4049d 100755 --- a/ci/tasks/build-release-metadata.sh +++ b/ci/tasks/build-release-metadata.sh @@ -36,7 +36,7 @@ pushd "${REPO_PARENT}/candidate-stemcell" kernel_version=$(grep "${KERNEL_PACKAGE}" packages.txt | awk '{print $3}') popd -bosh_agent_version=$(cat "${REPO_ROOT}/stemcell_builder/stages/bosh_go_agent/assets/bosh-agent-version") +bosh_agent_version=$(cat "${REPO_PARENT}/bosh-linux-stemcell-builder/stemcell_builder/stages/bosh_go_agent/assets/bosh-agent-version") { echo "## Metadata:" echo "**BOSH Agent Version**: ${bosh_agent_version}" @@ -45,9 +45,9 @@ bosh_agent_version=$(cat "${REPO_ROOT}/stemcell_builder/stages/bosh_go_agent/ass if [[ "${OS_NAME}" == "ubuntu" ]]; then # Ensure URL for usn-log from metalink exists before attempting to download. - usn_log_json_file="${REPO_ROOT}/usn-log.json" + usn_log_json_file="${REPO_PARENT}/bosh-linux-stemcell-builder/usn-log.json" touch "${usn_log_json_file}" - usn_metalink_path="${REPO_ROOT}/bosh-stemcell/image-metalinks/${BRANCH}/${OS_NAME}-${OS_VERSION}.meta4" + usn_metalink_path="${REPO_PARENT}/bosh-linux-stemcell-builder/bosh-stemcell/image-metalinks/${BRANCH}/${OS_NAME}-${OS_VERSION}.meta4" if [[ -n "$(meta4 file-urls --metalink "${usn_metalink_path}" --file usn-log.json)" ]]; then meta4 file-download \ --skip-hash-verification \ diff --git a/ci/tasks/build.sh b/ci/tasks/build.sh index 00c34a73d8..a068d6a8f6 100755 --- a/ci/tasks/build.sh +++ b/ci/tasks/build.sh @@ -71,7 +71,8 @@ for i in $(seq 0 64); do fi done -chown -R ubuntu:ubuntu "${REPO_ROOT}" +chown -R ubuntu:ubuntu "${REPO_ROOT}" # ci resource +chown -R ubuntu:ubuntu "${REPO_PARENT}/bosh-linux-stemcell-builder" chown -R ubuntu:ubuntu /mnt OS_IMAGE="" @@ -84,7 +85,7 @@ sudo chmod u+s "$(which sudo)" sudo --preserve-env --set-home --user ubuntu -- /bin/bash --login -i <&2 exit 1 @@ -116,14 +117,14 @@ fi if [ -e "${raw_images[0]}" ] ; then # openstack currently publishes raw files raw_stemcell_filename="${stemcell_name}-raw.tgz" - mv "${REPO_ROOT}/tmp"/*-raw.tgz "${REPO_PARENT}/stemcell/${raw_stemcell_filename}" + mv "${REPO_PARENT}/bosh-linux-stemcell-builder/tmp"/*-raw.tgz "${REPO_PARENT}/stemcell/${raw_stemcell_filename}" meta4 import-file --metalink="$meta4_path" --version="${CANDIDATE_BUILD_NUMBER}" "${REPO_PARENT}/stemcell/${raw_stemcell_filename}" meta4 file-set-url --metalink="$meta4_path" --file="${raw_stemcell_filename}" "https://${S3_API_ENDPOINT}/${STEMCELL_BUCKET}/${IAAS}/${raw_stemcell_filename}" fi stemcell_filename="${stemcell_name}.tgz" -mv "${REPO_ROOT}/tmp/${stemcell_filename}" "${REPO_PARENT}/stemcell/${stemcell_filename}" +mv "${REPO_PARENT}/bosh-linux-stemcell-builder/tmp/${stemcell_filename}" "${REPO_PARENT}/stemcell/${stemcell_filename}" meta4 import-file --metalink="$meta4_path" --version="${CANDIDATE_BUILD_NUMBER}" "${REPO_PARENT}/stemcell/${stemcell_filename}" meta4 file-set-url --metalink="$meta4_path" --file="${stemcell_filename}" "https://${S3_API_ENDPOINT}/${STEMCELL_BUCKET}/${IAAS}/${stemcell_filename}" diff --git a/ci/tasks/bump-bosh-agent.sh b/ci/tasks/bump-bosh-agent.sh index ecf8fa91bc..222828b5b7 100755 --- a/ci/tasks/bump-bosh-agent.sh +++ b/ci/tasks/bump-bosh-agent.sh @@ -10,12 +10,15 @@ if [[ -n "${DEBUG:-}" ]]; then export BOSH_LOG_PATH="${BOSH_LOG_PATH:-${REPO_PARENT}/bosh-debug.log}" fi -git clone "${REPO_ROOT}" "${REPO_PARENT}/bosh-linux-stemcell-builder-out" +git clone "${REPO_PARENT}/bosh-linux-stemcell-builder" \ + "${REPO_PARENT}/bosh-linux-stemcell-builder-out" version=$( cat "${REPO_PARENT}/bosh-agent/.resource/version" ) -cp "${REPO_PARENT}/bosh-agent/.resource/metalink.meta4" "${REPO_PARENT}/bosh-linux-stemcell-builder-out/stemcell_builder/stages/bosh_go_agent/assets/" -cp "${REPO_PARENT}/bosh-agent/.resource/version" "${REPO_PARENT}/bosh-linux-stemcell-builder-out/stemcell_builder/stages/bosh_go_agent/assets/bosh-agent-version" +cp "${REPO_PARENT}/bosh-agent/.resource/metalink.meta4" \ + "${REPO_PARENT}/bosh-linux-stemcell-builder-out/stemcell_builder/stages/bosh_go_agent/assets/" +cp "${REPO_PARENT}/bosh-agent/.resource/version" \ + "${REPO_PARENT}/bosh-linux-stemcell-builder-out/stemcell_builder/stages/bosh_go_agent/assets/bosh-agent-version" pushd "${REPO_PARENT}/bosh-linux-stemcell-builder-out" if [ "$(git status --porcelain)" != "" ]; then diff --git a/ci/tasks/bump-bosh-blobstore-cli.sh b/ci/tasks/bump-bosh-blobstore-cli.sh index e37bfb6c51..f82d23ca1a 100755 --- a/ci/tasks/bump-bosh-blobstore-cli.sh +++ b/ci/tasks/bump-bosh-blobstore-cli.sh @@ -10,7 +10,7 @@ if [[ -n "${DEBUG:-}" ]]; then export BOSH_LOG_PATH="${BOSH_LOG_PATH:-${REPO_PARENT}/bosh-debug.log}" fi -git clone "${REPO_ROOT}" "${REPO_PARENT}/bosh-linux-stemcell-builder-out" +git clone "${REPO_PARENT}/bosh-linux-stemcell-builder" "${REPO_PARENT}/bosh-linux-stemcell-builder-out" url=$(cat "${REPO_PARENT}/bosh-blobstore-cli/url") version=$(cat "${REPO_PARENT}/bosh-blobstore-cli/version") diff --git a/ci/tasks/commit-build-time.sh b/ci/tasks/commit-build-time.sh index e1850726c3..3d8688a1b9 100755 --- a/ci/tasks/commit-build-time.sh +++ b/ci/tasks/commit-build-time.sh @@ -13,7 +13,7 @@ fi build_time="$(cat "${REPO_PARENT}/build-time/timestamp")" formatted_build_time="$(date --date "${build_time%.*}" +%Y%m%dT%H%M%SZ)" -pushd "${REPO_ROOT}" +pushd "${REPO_PARENT}/bosh-linux-stemcell-builder" echo "${formatted_build_time}" > build_time.txt git add -A git config --global user.email "ci@localhost" diff --git a/ci/tasks/os-images/build.sh b/ci/tasks/os-images/build.sh index ce6af26d0c..41d606ee8e 100755 --- a/ci/tasks/os-images/build.sh +++ b/ci/tasks/os-images/build.sh @@ -35,7 +35,7 @@ sudo chmod u+s "$(which sudo)" sudo --preserve-env --set-home --user ubuntu -- /bin/bash --login -i < Date: Tue, 14 Apr 2026 19:05:00 +0000 Subject: [PATCH 2/2] [ci skip] bump OS image --- .../ubuntu-jammy/ubuntu-jammy.meta4 | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/bosh-stemcell/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 b/bosh-stemcell/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 index 64f7c4d50d..4c00c84627 100644 --- a/bosh-stemcell/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 +++ b/bosh-stemcell/image-metalinks/ubuntu-jammy/ubuntu-jammy.meta4 @@ -1,22 +1,22 @@ - 1ae10489791ca43287eb2c217edbdb9723ed3c89bd74450aff804f6f824ac393b892256f8c7d45c0427b91aaef413403503bb7c336f2046dea33498feaeba322 - 73c0bbea5dc27a811405c5450677aa1d140f0957c949194e9164e050a06bf597 - 119b0a16b05fb705bdf580cd0a90b73f146c1d7c - 39f9ff838dfc1a37dc271a6233af9720 - 434705274 + b5c91bdcf2969f0cbee8df9513958117d909801400e2e11be64c14199eb5ea945fac54b7122101b309c35bf34b3d3f37e3384339d1b63b2ba185cec9cfd7511d + 19e94a752bfa7a0c5cde8ab31dbf1d1efc95a67b146cba3773102bab09e30f00 + 6695c41b30c17439e849a606a034a106b74fc5f7 + 29f945ad658687f708d39b1ef8f09aac + 434722087 https://storage.googleapis.com/bosh-os-images/ubuntu-jammy/ubuntu-jammy.tgz - 1018.0.0 + 1019.0.0 - c03931a922ef64d2b6940a1d6a74bc7d6c923d5f7a0103fde7d5badd4b27d184ceb17f0ea9fb4e3d0fdef8e5ffc8332ae92dbeaa2ce0ff8b9411ba27715f77b5 - caa477de0c9b7ae163d684274f444cdd7114c8f047ccc7c55f80a636032fd38b - 2372defcd63a0dd06c8be838856124f586ebaaf6 - 89491d68f7b2679b8bf2204165de2c37 - 37318 + edf545365ede71d2e783796433736fd1310b8ad40c792ad644927e1ec2d3f58815de42b2b6846008688cca00eb90e43c364c2408f7dde35ef873cd4d436b8dca + 4ebc08acff97ba3e73610bb2709f2bdb70a20aff818b4885a65959a022862014 + 65ff07e6e82b0456eb074fe027ab3df7e124f4a3 + 30ac82f5de02847aad429d62cfb90e40 + 39010 https://storage.googleapis.com/bosh-os-images/ubuntu-jammy/usn-log.json - 1018.0.0 + 1019.0.0 metalink-repository-resource/0.0.0 - 2026-04-14T02:46:31.744665597Z + 2026-04-14T19:04:48.654632488Z