diff --git a/.gitlab/ci/pipelines/debian.daily.yml b/.gitlab/ci/pipelines/debian.daily.yml index dbe2793ccd738f6e86b5d16c91020da8fc8f4564..735be576653ff30862f0e262cf328ddca1b670b1 100644 --- a/.gitlab/ci/pipelines/debian.daily.yml +++ b/.gitlab/ci/pipelines/debian.daily.yml @@ -53,8 +53,8 @@ oc.docker-systemd_tests_debian: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$DISTRIBUTION:$RELEASE parallel: @@ -90,8 +90,8 @@ oc.docker-systemd_tests_ubuntu: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$DISTRIBUTION:$RELEASE parallel: @@ -103,6 +103,84 @@ oc.docker-systemd_tests_ubuntu: - gcp_very_high_cpu - gcp_arm64 +oc.docker-systemd-test-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-systemd_tests_debian + dependencies: [] + timeout: 60 minutes + interruptible: false + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: systemd-tests + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - unstable + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + +oc.docker-systemd-test-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-systemd_tests_ubuntu + dependencies: [] + timeout: 60 minutes + interruptible: false + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - unstable + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.docker-build-debian-dependencies: image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 stage: images @@ -126,8 +204,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -140,8 +218,47 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + interruptible: false + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - unstable + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -164,8 +281,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -188,12 +305,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes interruptible: false @@ -209,8 +326,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -274,8 +391,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -287,8 +404,47 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + interruptible: false + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - unstable + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -311,8 +467,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -420,7 +576,7 @@ oc.install_bin_debian_bookworm_systemd_test: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -442,8 +598,8 @@ oc.install_bin_debian_bookworm_systemd_test: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm @@ -454,7 +610,7 @@ oc.upgrade_bin_debian_bookworm-systemd: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -476,8 +632,8 @@ oc.upgrade_bin_debian_bookworm-systemd: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm @@ -558,7 +714,7 @@ oc.install_bin_ubuntu_noble_systemd: tags: - gcp needs: - - oc.docker-systemd_tests_ubuntu + - oc.docker-systemd-test-ubuntu-dependencies.merge - apt_repo_ubuntu dependencies: [] allow_failure: true @@ -580,8 +736,8 @@ oc.install_bin_ubuntu_noble_systemd: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: ubuntu RELEASE: noble @@ -592,7 +748,7 @@ oc.upgrade_bin_ubuntu_jammy_systemd_test: tags: - gcp needs: - - oc.docker-systemd_tests_ubuntu + - oc.docker-systemd-test-ubuntu-dependencies.merge - apt_repo_ubuntu dependencies: [] allow_failure: true @@ -614,8 +770,8 @@ oc.upgrade_bin_ubuntu_jammy_systemd_test: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: ubuntu RELEASE: jammy @@ -626,7 +782,7 @@ oc.upgrade_bin_ubuntu_noble_systemd_test: tags: - gcp needs: - - oc.docker-systemd_tests_ubuntu + - oc.docker-systemd-test-ubuntu-dependencies.merge - apt_repo_ubuntu dependencies: [] allow_failure: true @@ -648,8 +804,8 @@ oc.upgrade_bin_ubuntu_noble_systemd_test: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: ubuntu RELEASE: noble diff --git a/.gitlab/ci/pipelines/debian_repository_partial.yml b/.gitlab/ci/pipelines/debian_repository_partial.yml index b545773148a301bd89432f87b71699636ef3cfae..14d0ead99c87c707eb82f4e6a4ebb2b22d596d17 100644 --- a/.gitlab/ci/pipelines/debian_repository_partial.yml +++ b/.gitlab/ci/pipelines/debian_repository_partial.yml @@ -67,8 +67,8 @@ oc.docker-systemd_tests_debian: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$DISTRIBUTION:$RELEASE parallel: @@ -79,6 +79,42 @@ oc.docker-systemd_tests_debian: TAGS: - gcp_very_high_cpu +oc.docker-systemd-test-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-systemd_tests_debian + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: systemd-tests + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + oc.docker-build-debian-dependencies: image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 stage: images @@ -101,8 +137,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -113,8 +149,44 @@ oc.docker-build-debian-dependencies: TAGS: - gcp_very_high_cpu +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -136,8 +208,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian CARGO_INCREMENTAL: "0" SCCACHE_GCS_BUCKET: $GCP_SCCACHE_BUCKET @@ -157,12 +229,12 @@ oc.build-debian: - gcp_very_high_cpu_ramfs oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -177,8 +249,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -270,7 +342,7 @@ oc.install_bin_debian_bookworm_systemd_test: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -291,8 +363,8 @@ oc.install_bin_debian_bookworm_systemd_test: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm @@ -303,7 +375,7 @@ oc.upgrade_bin_debian_bookworm-systemd: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -324,8 +396,8 @@ oc.upgrade_bin_debian_bookworm-systemd: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm diff --git a/.gitlab/ci/pipelines/debian_repository_partial_auto.yml b/.gitlab/ci/pipelines/debian_repository_partial_auto.yml index b545773148a301bd89432f87b71699636ef3cfae..14d0ead99c87c707eb82f4e6a4ebb2b22d596d17 100644 --- a/.gitlab/ci/pipelines/debian_repository_partial_auto.yml +++ b/.gitlab/ci/pipelines/debian_repository_partial_auto.yml @@ -67,8 +67,8 @@ oc.docker-systemd_tests_debian: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$DISTRIBUTION:$RELEASE parallel: @@ -79,6 +79,42 @@ oc.docker-systemd_tests_debian: TAGS: - gcp_very_high_cpu +oc.docker-systemd-test-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-systemd_tests_debian + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: systemd-tests + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + oc.docker-build-debian-dependencies: image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 stage: images @@ -101,8 +137,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -113,8 +149,44 @@ oc.docker-build-debian-dependencies: TAGS: - gcp_very_high_cpu +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -136,8 +208,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian CARGO_INCREMENTAL: "0" SCCACHE_GCS_BUCKET: $GCP_SCCACHE_BUCKET @@ -157,12 +229,12 @@ oc.build-debian: - gcp_very_high_cpu_ramfs oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -177,8 +249,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -270,7 +342,7 @@ oc.install_bin_debian_bookworm_systemd_test: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -291,8 +363,8 @@ oc.install_bin_debian_bookworm_systemd_test: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm @@ -303,7 +375,7 @@ oc.upgrade_bin_debian_bookworm-systemd: tags: - gcp needs: - - oc.docker-systemd_tests_debian + - oc.docker-systemd-test-debian-dependencies.merge - apt_repo_debian dependencies: [] allow_failure: true @@ -324,8 +396,8 @@ oc.upgrade_bin_debian_bookworm-systemd: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: systemd-tests - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION PREFIX: "" DISTRIBUTION: debian RELEASE: bookworm diff --git a/.gitlab/ci/pipelines/non_release_tag.yml b/.gitlab/ci/pipelines/non_release_tag.yml index 239c3531e9d559fb6e54ca5aad85b20bc4f9a87d..a24908ac9a57e2a0c5db79917d5458d90fc23dbf 100644 --- a/.gitlab/ci/pipelines/non_release_tag.yml +++ b/.gitlab/ci/pipelines/non_release_tag.yml @@ -374,8 +374,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -387,8 +387,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -410,8 +447,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -433,12 +470,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -453,8 +490,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -516,8 +553,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -529,8 +566,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -552,8 +626,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/non_release_tag_test.yml b/.gitlab/ci/pipelines/non_release_tag_test.yml index 0f2ad0f381c2562e552d08677036a7c44f038dfb..7a0bc74443416a74d2b77b40fa6b44711c084810 100644 --- a/.gitlab/ci/pipelines/non_release_tag_test.yml +++ b/.gitlab/ci/pipelines/non_release_tag_test.yml @@ -374,8 +374,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -387,8 +387,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -410,8 +447,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -433,12 +470,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -453,8 +490,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -516,8 +553,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -529,8 +566,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -552,8 +626,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_beta_release_tag.yml b/.gitlab/ci/pipelines/octez_beta_release_tag.yml index 4a24f43dee667cad182cc97fe1d773bf896a28b1..1f1d9d15595408007b27f4f79e71303480e038a1 100644 --- a/.gitlab/ci/pipelines/octez_beta_release_tag.yml +++ b/.gitlab/ci/pipelines/octez_beta_release_tag.yml @@ -376,8 +376,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -389,8 +389,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -412,8 +449,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -435,12 +472,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -455,8 +492,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -518,8 +555,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -531,8 +568,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -554,8 +628,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_beta_release_tag_test.yml b/.gitlab/ci/pipelines/octez_beta_release_tag_test.yml index 9b190511f49428d07bb928b3986a06f3cbae73bb..8023f38c79b574794ece0c0b5b864b38ea34e544 100644 --- a/.gitlab/ci/pipelines/octez_beta_release_tag_test.yml +++ b/.gitlab/ci/pipelines/octez_beta_release_tag_test.yml @@ -376,8 +376,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -389,8 +389,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -412,8 +449,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -435,12 +472,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -455,8 +492,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -518,8 +555,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -531,8 +568,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -554,8 +628,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_major_release_tag.yml b/.gitlab/ci/pipelines/octez_major_release_tag.yml index 3f7e6dbdc3821136cb3bc7d7edd2bd7f2e317c6a..64cabbb36f585e37454cbe55b1797deed0a8ee7c 100644 --- a/.gitlab/ci/pipelines/octez_major_release_tag.yml +++ b/.gitlab/ci/pipelines/octez_major_release_tag.yml @@ -376,8 +376,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -389,8 +389,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -412,8 +449,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -435,12 +472,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -455,8 +492,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -518,8 +555,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -531,8 +568,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -554,8 +628,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_major_release_tag_test.yml b/.gitlab/ci/pipelines/octez_major_release_tag_test.yml index 71dfc68476f34e0c09a84055f46bced055932400..31f0cf123974f166fedfb94c0763d07fa52ab1e7 100644 --- a/.gitlab/ci/pipelines/octez_major_release_tag_test.yml +++ b/.gitlab/ci/pipelines/octez_major_release_tag_test.yml @@ -376,8 +376,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -389,8 +389,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -412,8 +449,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -435,12 +472,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -455,8 +492,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -518,8 +555,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -531,8 +568,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -554,8 +628,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_minor_release_tag.yml b/.gitlab/ci/pipelines/octez_minor_release_tag.yml index c7849056c78bb3f441b29d87ad7b4d71fde0801c..47d05d1910a168f53195d8180ef91a9f8e6f4794 100644 --- a/.gitlab/ci/pipelines/octez_minor_release_tag.yml +++ b/.gitlab/ci/pipelines/octez_minor_release_tag.yml @@ -350,8 +350,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -363,8 +363,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -386,8 +423,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -409,12 +446,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -429,8 +466,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -492,8 +529,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -505,8 +542,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -528,8 +602,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/octez_minor_release_tag_test.yml b/.gitlab/ci/pipelines/octez_minor_release_tag_test.yml index 54c7c418c43e3514af5b865fbc46b7b0eeefe3c1..797fa82fad37455a2f74941f5b4be37b154b18ec 100644 --- a/.gitlab/ci/pipelines/octez_minor_release_tag_test.yml +++ b/.gitlab/ci/pipelines/octez_minor_release_tag_test.yml @@ -350,8 +350,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -363,8 +363,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -386,8 +423,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -409,12 +446,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -429,8 +466,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -492,8 +529,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -505,8 +542,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -528,8 +602,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/.gitlab/ci/pipelines/schedule_master_test_release.yml b/.gitlab/ci/pipelines/schedule_master_test_release.yml index f558fea9301109a720ada452a7cad552c1643471..e0f8282f43b330a24bfe60ed5a73fc671a0685e6 100644 --- a/.gitlab/ci/pipelines/schedule_master_test_release.yml +++ b/.gitlab/ci/pipelines/schedule_master_test_release.yml @@ -377,8 +377,8 @@ oc.docker-build-debian-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -390,8 +390,45 @@ oc.docker-build-debian-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-debian-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: debian + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-debian: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -413,8 +450,8 @@ oc.build-debian: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" @@ -436,12 +473,12 @@ oc.build-debian: - gcp_arm64 oc.build-data_packages: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS needs: - - oc.docker-build-debian-dependencies + - oc.docker-build-debian-dependencies.merge dependencies: [] timeout: 60 minutes before_script: @@ -456,8 +493,8 @@ oc.build-data_packages: - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: debian RELEASE: trixie TAGS: gcp @@ -519,8 +556,8 @@ oc.docker-build-ubuntu-dependencies: variables: DOCKER_VERSION: 24.0.7 FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu BASE_IMAGE: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/${DISTRIBUTION}:${RELEASE} parallel: @@ -532,8 +569,45 @@ oc.docker-build-ubuntu-dependencies: - gcp_very_high_cpu - gcp_arm64 +oc.docker-build-ubuntu-dependencies.merge: + image: ${GCP_REGISTRY}/tezos/docker-images/ci-docker:v1.13.0 + stage: images + tags: + - gcp + needs: + - oc.docker-build-debian-dependencies + dependencies: [] + timeout: 60 minutes + before_script: + - SCRIPT_STEP_BEGIN=$(date +%s) + - . ./scripts/ci/datadog_send_job_info.sh + - ./scripts/ci/docker_initialize.sh + - . ./scripts/ci/datadog_send_job_cache_info.sh 'before' + script: + - scripts/ci/docker-merge-base-images.sh + - . ./scripts/ci/datadog_send_job_script_step_time.sh || true + after_script: + - . ./scripts/ci/datadog_send_job_cache_info.sh 'after' + services: + - docker:${DOCKER_VERSION}-dind + variables: + DOCKER_VERSION: 24.0.7 + FLAVOUR: build + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION + DISTRIBUTION: ubuntu + IMAGE_NAME: $DEP_IMAGE + parallel: + matrix: + - RELEASE: + - bookworm + - trixie + TAGS: + - gcp_very_high_cpu + - gcp_arm64 + oc.build-ubuntu: - image: $DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} + image: ${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA} stage: build tags: - $TAGS @@ -555,8 +629,8 @@ oc.build-ubuntu: - ./scripts/ci/sccache-stop.sh variables: FLAVOUR: build - DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE - DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE + DEP_IMAGE: ${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION + DEP_IMAGE_PROTECTED: ${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION DISTRIBUTION: ubuntu DUNE_BUILD_JOBS: -j 12 CARGO_INCREMENTAL: "0" diff --git a/ci/lib_tezos_ci_jobs/debian_repository.ml b/ci/lib_tezos_ci_jobs/debian_repository.ml index d3027ea3006e20293417df8c9889b949d9bfb5ec..020143c086329ef2ac022699b14e73ca0eb218be 100644 --- a/ci/lib_tezos_ci_jobs/debian_repository.ml +++ b/ci/lib_tezos_ci_jobs/debian_repository.ml @@ -20,7 +20,8 @@ open Common.Helpers let build_debian_packages_image = Image.mk_external - ~image_path:"$DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}" + ~image_path: + "${DEP_IMAGE}:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}" (* the name of the image depends on the variables in the parallel matrix. we delcare it once, but we use it in two different contexts *) @@ -105,13 +106,11 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = let variables ?(kind = "build") add = ("FLAVOUR", kind) :: ( "DEP_IMAGE", - "${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE" - ) + "${GCP_REGISTRY}/$CI_PROJECT_NAMESPACE/tezos/$FLAVOUR-$DISTRIBUTION" ) (* this second variable is for a read only registry and we want it to be tezos/tezos *) :: ( "DEP_IMAGE_PROTECTED", - "${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION-$RELEASE" - ) + "${GCP_PROTECTED_REGISTRY}/tezos/tezos/$FLAVOUR-$DISTRIBUTION" ) :: add in let make_job_docker_systemd_tests ~__POS__ ~name ~matrix ~distribution = @@ -148,6 +147,32 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~distribution:"ubuntu" ~matrix:(ubuntu_package_release_matrix pipeline_type) in + let job_merge_systemd_test_debian_dependencies = + job_docker_authenticated + ~__POS__ + ~name:"oc.docker-systemd-test-debian-dependencies.merge" + ~stage:Stages.images + ~dependencies: + (Dependent [Job job_docker_systemd_test_debian_dependencies]) + ~variables: + (variables + ~kind:"systemd-tests" + [("DISTRIBUTION", "debian"); ("IMAGE_NAME", "$DEP_IMAGE")]) + ~parallel:(Matrix (debian_package_release_matrix pipeline_type)) + ["scripts/ci/docker-merge-base-images.sh"] + in + let job_merge_systemd_test_ubuntu_dependencies = + job_docker_authenticated + ~__POS__ + ~name:"oc.docker-systemd-test-ubuntu-dependencies.merge" + ~stage:Stages.images + ~dependencies: + (Dependent [Job job_docker_systemd_test_ubuntu_dependencies]) + ~variables: + (variables [("DISTRIBUTION", "ubuntu"); ("IMAGE_NAME", "$DEP_IMAGE")]) + ~parallel:(Matrix (debian_package_release_matrix pipeline_type)) + ["scripts/ci/docker-merge-base-images.sh"] + in let make_job_docker_build_debian_dependencies ~__POS__ ~name ~matrix ~distribution = @@ -222,6 +247,28 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ] |> enable_sccache in + let job_merge_debian_build_deps = + job_docker_authenticated + ~__POS__ + ~name:"oc.docker-build-debian-dependencies.merge" + ~stage:Stages.images + ~dependencies:(Dependent [Job job_docker_build_debian_dependencies]) + ~variables: + (variables [("DISTRIBUTION", "debian"); ("IMAGE_NAME", "$DEP_IMAGE")]) + ~parallel:(Matrix (debian_package_release_matrix pipeline_type)) + ["scripts/ci/docker-merge-base-images.sh"] + in + let job_merge_ubuntu_build_deps = + job_docker_authenticated + ~__POS__ + ~name:"oc.docker-build-ubuntu-dependencies.merge" + ~stage:Stages.images + ~dependencies:(Dependent [Job job_docker_build_debian_dependencies]) + ~variables: + (variables [("DISTRIBUTION", "ubuntu"); ("IMAGE_NAME", "$DEP_IMAGE")]) + ~parallel:(Matrix (debian_package_release_matrix pipeline_type)) + ["scripts/ci/docker-merge-base-images.sh"] + in (* data packages. we build them once *) let job_build_data_packages : tezos_job = @@ -233,7 +280,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~variables: (variables [("DISTRIBUTION", "debian"); ("RELEASE", "trixie"); ("TAGS", "gcp")]) - ~dependencies:(Dependent [Job job_docker_build_debian_dependencies]) + ~dependencies:(Dependent [Job job_merge_debian_build_deps]) ~tag:Dynamic ~artifacts:(artifacts ["packages/$DISTRIBUTION/$RELEASE"]) [ @@ -374,7 +421,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~dependencies: (Dependent [ - Job job_docker_systemd_test_ubuntu_dependencies; + Job job_merge_systemd_test_ubuntu_dependencies; Job job_apt_repo_ubuntu; ]) ~variables: @@ -393,7 +440,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~dependencies: (Dependent [ - Job job_docker_systemd_test_ubuntu_dependencies; + Job job_merge_systemd_test_ubuntu_dependencies; Job job_apt_repo_ubuntu; ]) ~variables: @@ -412,7 +459,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~dependencies: (Dependent [ - Job job_docker_systemd_test_ubuntu_dependencies; + Job job_merge_systemd_test_ubuntu_dependencies; Job job_apt_repo_ubuntu; ]) ~variables: @@ -448,7 +495,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~dependencies: (Dependent [ - Job job_docker_systemd_test_debian_dependencies; + Job job_merge_systemd_test_debian_dependencies; Job job_apt_repo_debian; ]) ~variables: @@ -471,7 +518,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = ~dependencies: (Dependent [ - Job job_docker_systemd_test_debian_dependencies; + Job job_merge_systemd_test_debian_dependencies; Job job_apt_repo_debian; ]) ~variables: @@ -492,6 +539,7 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = let debian_jobs = [ job_docker_build_debian_dependencies; + job_merge_debian_build_deps; job_build_debian_package; job_build_data_packages; job_apt_repo_debian; @@ -500,18 +548,28 @@ let jobs ?(limit_dune_build_jobs = false) pipeline_type = let ubuntu_jobs = [ job_docker_build_ubuntu_dependencies; + job_merge_ubuntu_build_deps; job_build_ubuntu_package; job_apt_repo_ubuntu; ] in match pipeline_type with | Partial -> - (job_docker_systemd_test_debian_dependencies :: debian_jobs) + ([ + job_docker_systemd_test_debian_dependencies; + job_merge_systemd_test_debian_dependencies; + ] + @ debian_jobs) @ test_debian_packages_jobs | Full -> - job_docker_systemd_test_debian_dependencies - :: job_docker_systemd_test_ubuntu_dependencies :: debian_jobs - @ ubuntu_jobs @ test_debian_packages_jobs @ test_ubuntu_packages_jobs + [ + job_docker_systemd_test_debian_dependencies; + job_docker_systemd_test_ubuntu_dependencies; + job_merge_systemd_test_debian_dependencies; + job_merge_systemd_test_ubuntu_dependencies; + ] + @ debian_jobs @ ubuntu_jobs @ test_debian_packages_jobs + @ test_ubuntu_packages_jobs | Release -> debian_jobs @ ubuntu_jobs let register ~auto ~description pipeline_type = diff --git a/scripts/ci/build-packages-dependencies.sh b/scripts/ci/build-packages-dependencies.sh index 18cc6465bc7a4a7f9ad4ca1400e99131f4bde160..63876349bbc7f00d621b97ff0a307d3e9d3038bc 100755 --- a/scripts/ci/build-packages-dependencies.sh +++ b/scripts/ci/build-packages-dependencies.sh @@ -25,7 +25,10 @@ gcp | gcp_dev | gcp_high_cpu | gcp_very_high_cpu | gcp_very_high_cpu_ramfs | gcp ;; esac -LOCAL_IMAGE_NAME="$DEP_IMAGE:${ARCHITECTURE}-${CI_COMMIT_REF_SLUG}" +ARCH_IMAGE_PREFIX="${DEP_IMAGE}" +ARCH_IAMGE_TAG="${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}-${ARCHITECTURE}" +ARCH_IMAGE_NAME="${ARCH_IMAGE_PREFIX}:${ARCH_IAMGE_TAG}" + # Set as a variable in the job definition BASE_IMAGE="${BASE_IMAGE:?Must set base image to run this script}" @@ -52,51 +55,6 @@ docker build \ --build-arg OPAM_VERSION="${opam_version}" \ --cache-from="${DEP_IMAGE}:${ARCHITECTURE}-${CI_COMMIT_REF_SLUG}" \ --cache-from="${DEP_IMAGE_PROTECTED}:master" \ - -t "$LOCAL_IMAGE_NAME" \ + -t "$ARCH_IMAGE_NAME" \ $(if [ "$skip_registry_cache_check" = "true" ]; then echo "--no-cache"; fi) \ . - -# The LATEST_TAG is used to compile the images in the CI pipelines -# where we want to make sure to always have the latest available -# image ( we use IfNotPresent as pull policy ) -# The LATEST_TAG_GENERIC tag is used for the docker cache and -# general use where we can control the pull policy -LATEST_TAG="${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}" -LATEST_TAG_GENERIC="${CI_COMMIT_REF_SLUG}" - -if [ "$skip_registry_cache_check" != "true" ]; then - echo "Checking for existence of image $DEP_IMAGE:$LATEST_TAG" - docker buildx imagetools inspect "$DEP_IMAGE:$LATEST_TAG" || export IMAGE_EXISTS="false" -else - export IMAGE_EXISTS="false" - echo "Force rebuild of CI images: we use the locally build image for the manifest" -fi - -if [ "$IMAGE_EXISTS" = "false" ]; then - echo "Creating image manifesto for $DEP_IMAGE:$LATEST_TAG" - docker buildx imagetools create -t "$DEP_IMAGE:$LATEST_TAG" "$LOCAL_IMAGE_NAME" -else - echo "Appending to image manifesto for $DEP_IMAGE:$LATEST_TAG with new ${ARCHITECTURE} image" - - # we get the sha of the image of the "other" architecture - OTHER_SHA=$(docker manifest inspect "${DEP_IMAGE}:$LATEST_TAG" | jq -r ".manifests[] | select(.platform.architecture != \"$ARCHITECTURE\") | .digest" | head -n1) - - if [ "${OTHER_SHA}" != "" ]; then - # we create a new manifest ( override the old one ) with both the - # local image and the image that was in the old manifest - docker buildx imagetools create \ - -t "${DEP_IMAGE}:$LATEST_TAG" \ - -t "${DEP_IMAGE}:$LATEST_TAG_GENERIC" \ - "$LOCAL_IMAGE_NAME" \ - "$DEP_IMAGE@$OTHER_SHA" - else - # we associate to "$DEP_IMAGE:$LATEST_TAG" the latest image with tag - # "$LOCAL_IMAGE_NAME" and replace the old one. - docker buildx imagetools create \ - -t "$DEP_IMAGE:$LATEST_TAG" \ - -t "$DEP_IMAGE:$LATEST_TAG_GENERIC" \ - "$LOCAL_IMAGE_NAME" - fi -fi - -docker buildx imagetools inspect "${DEP_IMAGE}:${LATEST_TAG}" diff --git a/scripts/ci/docker-merge-base-images.sh b/scripts/ci/docker-merge-base-images.sh index d772cf9274c301b06064b7bd901d52c842a11229..aa43889c37804080c94f50120d7fd7a24755f6f3 100755 --- a/scripts/ci/docker-merge-base-images.sh +++ b/scripts/ci/docker-merge-base-images.sh @@ -31,22 +31,37 @@ LATEST_TAG_GENERIC="${RELEASE}-${CI_COMMIT_REF_SLUG}" create_and_push_manifest() { local TAG="$1" + set -x echo "Inspect ${IMAGE_NAME}:${LATEST_TAG}-amd64" docker buildx imagetools inspect "${IMAGE_NAME}:${LATEST_TAG}-amd64" + set +e # Disable exit on error temporarily + echo "Inspect ${IMAGE_NAME}:${LATEST_TAG}-arm64" docker buildx imagetools inspect "${IMAGE_NAME}:${LATEST_TAG}-arm64" + ARM64_INSPECT=$? + + set -e # Re-enable exit on error echo "📦 Creating multi-arch manifest for tag: ${TAG}" - docker manifest create "${IMAGE_NAME}:${TAG}" \ - --amend "${IMAGE_NAME}:${LATEST_TAG}-amd64" \ - --amend "${IMAGE_NAME}:${LATEST_TAG}-arm64" + echo "Adding ${IMAGE_NAME}:${LATEST_TAG}-amd64 to the manifest." + AMEND="--amend ${IMAGE_NAME}:${LATEST_TAG}-amd64" + + # Amend the manifest if the arm64 image exists + if [ $ARM64_INSPECT -eq 0 ]; then + echo "Adding ${IMAGE_NAME}:${LATEST_TAG}-arm64 to the manifest." + AMEND="$AMEND --amend ${IMAGE_NAME}:${LATEST_TAG}-arm64" + fi + docker manifest create "${IMAGE_NAME}:${TAG}" ${AMEND} + + # Push the manifest docker manifest push "${IMAGE_NAME}:${TAG}" echo "Pushed manifest: ${IMAGE_NAME}:${TAG}" + } create_and_push_manifest "${LATEST_TAG}" diff --git a/scripts/packaging/tests/systemd-docker-test.sh b/scripts/packaging/tests/systemd-docker-test.sh index 8a33ce287af6bd9cc2be66e866f250307673735f..377abab30c483a6398a23a2cf335885b64558b15 100755 --- a/scripts/packaging/tests/systemd-docker-test.sh +++ b/scripts/packaging/tests/systemd-docker-test.sh @@ -20,7 +20,7 @@ GCP_LINUX_PACKAGES_BUCKET=${GCP_LINUX_PACKAGES_BUCKET:-tezos-linux-repo} #shellcheck disable=SC2236 if [ ! -z ${DEP_IMAGE+x} ]; then - IMAGE="$DEP_IMAGE:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}" + IMAGE="$DEP_IMAGE:${RELEASE}-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHORT_SHA}" docker pull "$IMAGE" else # for local execution, we assume the image name is "systemd"