From 68c7acdbef67527fa3ea4e892a3189c01bbb8811 Mon Sep 17 00:00:00 2001 From: Luke Parker Date: Sat, 9 Aug 2025 12:26:26 -0400 Subject: [PATCH] Attempt using rootless Docker in CI via the setup-docker-action Restores using ubuntu-latest. Basically, at some point in the last year the existing Docker e2e tests started failing. I'm unclear if this is an issue with the OS, the docker packages, or what. This just tries to find a solution. --- .github/actions/build-dependencies/action.yml | 25 ++++++++++++++++--- .github/workflows/coordinator-tests.yml | 2 +- .github/workflows/full-stack-tests.yml | 2 +- .github/workflows/message-queue-tests.yml | 2 +- .github/workflows/monero-tests.yaml | 4 +-- .github/workflows/networks-tests.yml | 2 +- .github/workflows/processor-tests.yml | 2 +- .github/workflows/reproducible-runtime.yml | 2 +- .github/workflows/tests.yml | 6 ++--- 9 files changed, 33 insertions(+), 14 deletions(-) diff --git a/.github/actions/build-dependencies/action.yml b/.github/actions/build-dependencies/action.yml index 0463aae3..da86d011 100644 --- a/.github/actions/build-dependencies/action.yml +++ b/.github/actions/build-dependencies/action.yml @@ -13,9 +13,6 @@ runs: sudo apt remove -y --allow-remove-essential -f shim-signed # This command would fail, due to shim-signed having unmet dependencies, hence its removal sudo apt remove -y "*qemu*" "*sql*" "*texinfo*" "*imagemagick*" - sudo apt autoremove -y - sudo apt clean - docker system prune -a --volumes if: runner.os == 'Linux' - name: Remove unused packages @@ -47,5 +44,27 @@ runs: svm install 0.8.25 svm use 0.8.25 + - name: Remove preinstalled Docker + shell: bash + run: | + docker system prune -a --volumes + sudo apt remove -y *docker* + if: runner.os == "Linux" + + - name: Update system dependencies + shell: bash + run: | + sudo apt update -y + sudo apt upgrade -y + sudo apt autoremove -y + sudo apt clean + if: runner.os == "Linux" + + - name: Install rootless Docker + uses: docker/setup-docker-action@b60f85385d03ac8acfca6d9996982511d8620a19 + with: + rootless: true + if: runner.os == "Linux" + # - name: Cache Rust # uses: Swatinem/rust-cache@a95ba195448af2da9b00fb742d14ffaaf3c21f43 diff --git a/.github/workflows/coordinator-tests.yml b/.github/workflows/coordinator-tests.yml index c11e3b31..b956f752 100644 --- a/.github/workflows/coordinator-tests.yml +++ b/.github/workflows/coordinator-tests.yml @@ -29,7 +29,7 @@ on: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/full-stack-tests.yml b/.github/workflows/full-stack-tests.yml index 622f9446..7bcce866 100644 --- a/.github/workflows/full-stack-tests.yml +++ b/.github/workflows/full-stack-tests.yml @@ -11,7 +11,7 @@ on: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/message-queue-tests.yml b/.github/workflows/message-queue-tests.yml index 40198e8b..aa6f9328 100644 --- a/.github/workflows/message-queue-tests.yml +++ b/.github/workflows/message-queue-tests.yml @@ -25,7 +25,7 @@ on: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/monero-tests.yaml b/.github/workflows/monero-tests.yaml index 886d576e..a72a85a5 100644 --- a/.github/workflows/monero-tests.yaml +++ b/.github/workflows/monero-tests.yaml @@ -18,7 +18,7 @@ on: jobs: # Only run these once since they will be consistent regardless of any node unit-tests: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac @@ -43,7 +43,7 @@ jobs: # Doesn't run unit tests with features as the tests workflow will integration-tests: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest # Test against all supported protocol versions strategy: matrix: diff --git a/.github/workflows/networks-tests.yml b/.github/workflows/networks-tests.yml index a807282f..5966a6a8 100644 --- a/.github/workflows/networks-tests.yml +++ b/.github/workflows/networks-tests.yml @@ -19,7 +19,7 @@ on: jobs: test-networks: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/processor-tests.yml b/.github/workflows/processor-tests.yml index 3c15e694..5f6043eb 100644 --- a/.github/workflows/processor-tests.yml +++ b/.github/workflows/processor-tests.yml @@ -29,7 +29,7 @@ on: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/reproducible-runtime.yml b/.github/workflows/reproducible-runtime.yml index e8f082cc..2c418bd5 100644 --- a/.github/workflows/reproducible-runtime.yml +++ b/.github/workflows/reproducible-runtime.yml @@ -25,7 +25,7 @@ on: jobs: build: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 615cc273..05c25972 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,7 +27,7 @@ on: jobs: test-infra: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac @@ -47,7 +47,7 @@ jobs: -p serai-docker-tests test-substrate: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac @@ -77,7 +77,7 @@ jobs: -p serai-node test-serai-client: - runs-on: ubuntu-22.04 + runs-on: ubuntu-latest steps: - uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac