From 79ceb2fc44608880dbcff6da8266ead81b955532 Mon Sep 17 00:00:00 2001 From: Nicholas Cioli Date: Wed, 15 Jan 2025 15:26:41 -0500 Subject: [PATCH 1/9] update CircleCI base image This commit fixes an issue with a downstream dependency (`aws-lc-sys`) caused by using an old version of GCC by updating the base CircleCI image to `current`. This was realistically a long-time coming because the previous tag of `stable` was deprecated in favor of `current` back in 2022. Below is a quote from the [docker hub page](https://hub.docker.com/r/cimg/base) explaining the change to the tag names: | current - This image tag points to the latest, production ready | base image. This is a replacement for the old stable tag. This | image should be used by projects that want a decent level of | stability but would like to get occasional software updates. | It is typically updated once a month. --- .circleci/config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index bcbd3d95f2..10c4c8ddf9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -12,18 +12,18 @@ orbs: executors: amd_linux_build: &amd_linux_build_executor docker: - - image: cimg/base:stable + - image: cimg/base:current resource_class: xlarge environment: CARGO_BUILD_JOBS: 4 RUST_TEST_THREADS: 6 amd_linux_helm: &amd_linux_helm_executor docker: - - image: cimg/base:stable + - image: cimg/base:current resource_class: small amd_linux_test: &amd_linux_test_executor docker: - - image: cimg/base:stable + - image: cimg/base:current - image: cimg/redis:7.4.1 - image: jaegertracing/all-in-one:1.54.0 - image: openzipkin/zipkin:3.4.3 @@ -929,7 +929,7 @@ jobs: publish_github_release: docker: - - image: cimg/base:stable + - image: cimg/base:current resource_class: small environment: <<: *common_job_environment From c383e4e335be6ec7d13961c540c14d053ddf9a8e Mon Sep 17 00:00:00 2001 From: Nicholas Cioli Date: Wed, 15 Jan 2025 15:41:52 -0500 Subject: [PATCH 2/9] circleci: populate package cache --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 10c4c8ddf9..e3c302d157 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -237,6 +237,7 @@ commands: command: | if [[ ! -d "$HOME/.deb" ]]; then mkdir $HOME/.deb + sudo apt-get update sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install libssl-dev libdw-dev fi sudo dpkg -i $HOME/.deb/*.deb From 22a1eca444530fd7b8c42c26db0bfebb743141d1 Mon Sep 17 00:00:00 2001 From: Lenny Burdette Date: Thu, 16 Jan 2025 09:28:13 -0500 Subject: [PATCH 3/9] gcc-10 --- .circleci/config.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e3c302d157..9af137a39b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -238,7 +238,8 @@ commands: if [[ ! -d "$HOME/.deb" ]]; then mkdir $HOME/.deb sudo apt-get update - sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install libssl-dev libdw-dev + sudo apt remove gcc-9 + sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install libssl-dev libdw-dev gcc-10 fi sudo dpkg -i $HOME/.deb/*.deb From f6b960e8db39898396426f38182e4b8050f2b161 Mon Sep 17 00:00:00 2001 From: Lenny Burdette Date: Thu, 16 Jan 2025 09:59:53 -0500 Subject: [PATCH 4/9] build essentials? --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 9af137a39b..2b08f9c0a5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -238,6 +238,7 @@ commands: if [[ ! -d "$HOME/.deb" ]]; then mkdir $HOME/.deb sudo apt-get update + sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential sudo apt remove gcc-9 sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install libssl-dev libdw-dev gcc-10 fi From 292fe0dd162fb47c735bea97a730772947320930 Mon Sep 17 00:00:00 2001 From: Lenny Burdette Date: Thu, 16 Jan 2025 10:04:58 -0500 Subject: [PATCH 5/9] trying stuff --- .circleci/config.yml | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 2b08f9c0a5..50fb78daa6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -238,9 +238,13 @@ commands: if [[ ! -d "$HOME/.deb" ]]; then mkdir $HOME/.deb sudo apt-get update - sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential - sudo apt remove gcc-9 - sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install libssl-dev libdw-dev gcc-10 + sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential libssl-dev libdw-dev gcc-10 + sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 + sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100 + cc --version + gcc --version + g++ --version + ld --version fi sudo dpkg -i $HOME/.deb/*.deb From 1bc7bcf83aac658c81a638c296747b4c32946f27 Mon Sep 17 00:00:00 2001 From: Lenny Burdette Date: Thu, 16 Jan 2025 10:14:15 -0500 Subject: [PATCH 6/9] undo stuff --- .circleci/config.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 50fb78daa6..3efdb83709 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -239,12 +239,6 @@ commands: mkdir $HOME/.deb sudo apt-get update sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential libssl-dev libdw-dev gcc-10 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 100 - cc --version - gcc --version - g++ --version - ld --version fi sudo dpkg -i $HOME/.deb/*.deb From 5b510c29fc08ee840149288a3abc3a969e55c3d8 Mon Sep 17 00:00:00 2001 From: Nicholas Cioli Date: Thu, 16 Jan 2025 12:57:16 -0500 Subject: [PATCH 7/9] update arm to newer images --- .circleci/config.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 3efdb83709..d828ec7a28 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -33,13 +33,13 @@ executors: CARGO_BUILD_JOBS: 4 arm_linux_build: &arm_linux_build_executor machine: - image: ubuntu-2004:2024.01.1 + image: cimg/base:current resource_class: arm.large environment: CARGO_BUILD_JOBS: 8 arm_linux_test: &arm_linux_test_executor machine: - image: ubuntu-2004:2024.01.1 + image: cimg/base:current resource_class: arm.xlarge environment: CARGO_BUILD_JOBS: 8 From f94032097611f65bbf19f4dd840075e36c07bb22 Mon Sep 17 00:00:00 2001 From: Nicholas Cioli Date: Thu, 16 Jan 2025 12:58:32 -0500 Subject: [PATCH 8/9] remove old gcc version --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index d828ec7a28..e29dd2d550 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -238,7 +238,7 @@ commands: if [[ ! -d "$HOME/.deb" ]]; then mkdir $HOME/.deb sudo apt-get update - sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential libssl-dev libdw-dev gcc-10 + sudo apt-get --download-only -o Dir::Cache="$HOME/.deb" -o Dir::Cache::archives="$HOME/.deb" install build-essential libssl-dev libdw-dev fi sudo dpkg -i $HOME/.deb/*.deb From b64ab4abb53516488dcc5a29e21d0cf7525897d7 Mon Sep 17 00:00:00 2001 From: Nicholas Cioli Date: Thu, 16 Jan 2025 13:25:27 -0500 Subject: [PATCH 9/9] use containers for arm-linux --- .circleci/config.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index e29dd2d550..167ee409ae 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -32,14 +32,14 @@ executors: environment: CARGO_BUILD_JOBS: 4 arm_linux_build: &arm_linux_build_executor - machine: - image: cimg/base:current + docker: + - image: cimg/base:current resource_class: arm.large environment: CARGO_BUILD_JOBS: 8 arm_linux_test: &arm_linux_test_executor - machine: - image: cimg/base:current + docker: + - image: cimg/base:current resource_class: arm.xlarge environment: CARGO_BUILD_JOBS: 8