From 3313fb36046ad7848340b6be721ca7e1f6406e21 Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 08:58:27 -0400 Subject: [PATCH 1/6] Update Ubuntu to 24.04 --- .github/workflows/publish-dev-ci-base-image.yml | 2 +- ci-base-image.dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish-dev-ci-base-image.yml b/.github/workflows/publish-dev-ci-base-image.yml index f1b09321eb..51b924b745 100644 --- a/.github/workflows/publish-dev-ci-base-image.yml +++ b/.github/workflows/publish-dev-ci-base-image.yml @@ -21,7 +21,7 @@ jobs: env: IMAGE_NAME: ci-base-image BRANCH_NAME: ${{github.ref_name}} - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 permissions: contents: read diff --git a/ci-base-image.dockerfile b/ci-base-image.dockerfile index 661c2c75a8..0b2c2f99f3 100644 --- a/ci-base-image.dockerfile +++ b/ci-base-image.dockerfile @@ -1,7 +1,7 @@ # NOTE: If you make changes in this file, be sure to update IMAGE_VERSION in merge-pr.yml # ci-base-image is published IF and ONLY IF changes are detected in this dockerfile. -FROM --platform=linux/amd64 ubuntu:22.04 +FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive LABEL maintainer="Frequency" LABEL description="Frequency CI Base Image" From b44f013f382f9c2c99023530a0b6153b60812eef Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 08:58:40 -0400 Subject: [PATCH 2/6] Update Docker Action --- .github/workflows/publish-dev-ci-base-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish-dev-ci-base-image.yml b/.github/workflows/publish-dev-ci-base-image.yml index 51b924b745..ebf7e1fbe1 100644 --- a/.github/workflows/publish-dev-ci-base-image.yml +++ b/.github/workflows/publish-dev-ci-base-image.yml @@ -54,7 +54,7 @@ jobs: script: return `ghcr.io/${context.repo.owner.toLowerCase()}/${context.repo.repo.toLowerCase()}` - name: Build and Push Docker Image - uses: docker/build-push-action@v5 + uses: docker/build-push-action@v6 with: context: . push: true From 4a2e06ceca9248e08bb54234d3cca340c92d1aa8 Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 08:58:48 -0400 Subject: [PATCH 3/6] Update Rust Versions --- .github/workflows/publish-dev-ci-base-image.yml | 6 ++++-- ci-base-image.dockerfile | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/publish-dev-ci-base-image.yml b/.github/workflows/publish-dev-ci-base-image.yml index ebf7e1fbe1..1d4ce8eb7d 100644 --- a/.github/workflows/publish-dev-ci-base-image.yml +++ b/.github/workflows/publish-dev-ci-base-image.yml @@ -12,8 +12,10 @@ on: - "README.md" - "LICENSE" env: - RUST_VERSION: 1.76.0 - IMAGE_VERSION: 1.3.1 + RUST_VERSION: 1.84.1 + IMAGE_VERSION: 1.4.0 + # 1.86.0 + NIGHTLY_VERSION: nightly-2025-04-03 jobs: publish-ci-base-image: diff --git a/ci-base-image.dockerfile b/ci-base-image.dockerfile index 0b2c2f99f3..4f89d68d6e 100644 --- a/ci-base-image.dockerfile +++ b/ci-base-image.dockerfile @@ -23,8 +23,10 @@ RUN curl https://sh.rustup.rs -sSf | bash -s -- -y ENV PATH="/home/runner/.cargo/bin:/root/.cargo/bin:${PATH}" ENV RUSTUP_HOME="/root/.cargo" ENV CARGO_HOME="/root/.cargo" -RUN rustup toolchain install nightly-2024-03-01 -RUN rustup target add x86_64-unknown-linux-gnu --toolchain nightly-2024-03-01 -RUN rustup target add wasm32-unknown-unknown --toolchain nightly-2024-03-01 +RUN rustup toolchain install $NIGHTLY_VERSION +RUN rustup target add x86_64-unknown-linux-gnu --toolchain $NIGHTLY_VERSION +RUN rustup target add wasm32-unknown-unknown --toolchain $NIGHTLY_VERSION +RUN rustup target add wasm32-unknown-unknown --toolchain $NIGHTLY_VERSION +RUN rustup component add rust-src --toolchain $NIGHTLY_VERSION RUN git config --system --add safe.directory /__w/frequency/frequency From 24bbfad2f4eb8ff207c33f37a18d6538206795a8 Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 09:28:40 -0400 Subject: [PATCH 4/6] Update ci-base-image.dockerfile Co-authored-by: Joe Caputo --- ci-base-image.dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/ci-base-image.dockerfile b/ci-base-image.dockerfile index 4f89d68d6e..bc25ac02f2 100644 --- a/ci-base-image.dockerfile +++ b/ci-base-image.dockerfile @@ -26,7 +26,6 @@ ENV CARGO_HOME="/root/.cargo" RUN rustup toolchain install $NIGHTLY_VERSION RUN rustup target add x86_64-unknown-linux-gnu --toolchain $NIGHTLY_VERSION RUN rustup target add wasm32-unknown-unknown --toolchain $NIGHTLY_VERSION -RUN rustup target add wasm32-unknown-unknown --toolchain $NIGHTLY_VERSION RUN rustup component add rust-src --toolchain $NIGHTLY_VERSION RUN git config --system --add safe.directory /__w/frequency/frequency From e6bc0104de356553707b9fc41133251c82d3dabf Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 09:35:47 -0400 Subject: [PATCH 5/6] Fix NIGHTLY_VERSION usage --- .github/workflows/publish-dev-ci-base-image.yml | 1 + README.md | 1 + ci-base-image.dockerfile | 2 ++ 3 files changed, 4 insertions(+) diff --git a/.github/workflows/publish-dev-ci-base-image.yml b/.github/workflows/publish-dev-ci-base-image.yml index 1d4ce8eb7d..4bbb0ea1f7 100644 --- a/.github/workflows/publish-dev-ci-base-image.yml +++ b/.github/workflows/publish-dev-ci-base-image.yml @@ -67,3 +67,4 @@ jobs: build-args: | IMAGE_VERSION=${{env.IMAGE_VERSION}} RUST_VERSION=${{env.RUST_VERSION}} + NIGHTLY_VERSION=${{env.NIGHTLY_VERSION}} diff --git a/README.md b/README.md index e119ee87d2..91be80a1e3 100644 --- a/README.md +++ b/README.md @@ -7,6 +7,7 @@ A branch specifically for building the CI Docker image and publishing it to the - Go to [.github/workflows/publish-dev-ci-base-image.yml](.github/workflows/publish-dev-ci-base-image.yml) - Update `RUST_VERSION` env var - Bump `IMAGE_VERSION` env var + - Bump `NIGHTLY_VERSION` env var - Go to [./ci-base-image.dockerfile](./ci-base-image.dockerfile) - Update the `toolchain` references - Push diff --git a/ci-base-image.dockerfile b/ci-base-image.dockerfile index bc25ac02f2..714ba53223 100644 --- a/ci-base-image.dockerfile +++ b/ci-base-image.dockerfile @@ -11,6 +11,8 @@ LABEL version="${IMAGE_VERSION}" LABEL org.opencontainers.image.description "Frequency CI Base Image" ARG RUST_VERSION LABEL rust.version="${RUST_VERSION}" +ARG NIGHTLY_VERSION +LABEL rust.nightly-version="${NIGHTLY_VERSION}" WORKDIR /ci RUN apt-get update && \ From b95ad7d8d1cb11fd5481c5d4d45b22dab31806b6 Mon Sep 17 00:00:00 2001 From: Wil Wade Date: Tue, 15 Apr 2025 09:43:36 -0400 Subject: [PATCH 6/6] Fix issues with NIGHTLY_VERSION --- .github/workflows/publish-dev-ci-base-image.yml | 9 ++++++++- ci-base-image.dockerfile | 10 +++++----- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/.github/workflows/publish-dev-ci-base-image.yml b/.github/workflows/publish-dev-ci-base-image.yml index 4bbb0ea1f7..681d3cc5a8 100644 --- a/.github/workflows/publish-dev-ci-base-image.yml +++ b/.github/workflows/publish-dev-ci-base-image.yml @@ -11,6 +11,12 @@ on: paths-ignore: - "README.md" - "LICENSE" + pull_request: + branches: + - ci/ci-base-image + paths-ignore: + - "README.md" + - "LICENSE" env: RUST_VERSION: 1.84.1 IMAGE_VERSION: 1.4.0 @@ -42,6 +48,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Login to GitHub Container Registry + if: github.event_name == 'push' uses: docker/login-action@v3 with: registry: ghcr.io @@ -59,7 +66,7 @@ jobs: uses: docker/build-push-action@v6 with: context: . - push: true + push: ${{ github.event_name == 'push' }} file: ci-base-image.dockerfile tags: | ${{steps.repo_slug.outputs.result}}/${{env.IMAGE_NAME}}:latest diff --git a/ci-base-image.dockerfile b/ci-base-image.dockerfile index 714ba53223..9f6c603c7d 100644 --- a/ci-base-image.dockerfile +++ b/ci-base-image.dockerfile @@ -8,7 +8,7 @@ LABEL description="Frequency CI Base Image" # Image version is set by the CI pipeline in merge-pr.yml ARG IMAGE_VERSION LABEL version="${IMAGE_VERSION}" -LABEL org.opencontainers.image.description "Frequency CI Base Image" +LABEL org.opencontainers.image.description="Frequency CI Base Image" ARG RUST_VERSION LABEL rust.version="${RUST_VERSION}" ARG NIGHTLY_VERSION @@ -25,9 +25,9 @@ RUN curl https://sh.rustup.rs -sSf | bash -s -- -y ENV PATH="/home/runner/.cargo/bin:/root/.cargo/bin:${PATH}" ENV RUSTUP_HOME="/root/.cargo" ENV CARGO_HOME="/root/.cargo" -RUN rustup toolchain install $NIGHTLY_VERSION -RUN rustup target add x86_64-unknown-linux-gnu --toolchain $NIGHTLY_VERSION -RUN rustup target add wasm32-unknown-unknown --toolchain $NIGHTLY_VERSION -RUN rustup component add rust-src --toolchain $NIGHTLY_VERSION +RUN rustup toolchain install "${NIGHTLY_VERSION}" +RUN rustup target add x86_64-unknown-linux-gnu --toolchain "${NIGHTLY_VERSION}" +RUN rustup target add wasm32-unknown-unknown --toolchain "${NIGHTLY_VERSION}" +RUN rustup component add rust-src --toolchain "${NIGHTLY_VERSION}" RUN git config --system --add safe.directory /__w/frequency/frequency