diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a1013c0..875fe85 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -127,8 +127,7 @@ jobs: argus: name: Argus - # Souffle's PPA package needs libffi7, which Ubuntu 24.04 no longer ships. - runs-on: ubuntu-22.04 + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 @@ -140,6 +139,11 @@ jobs: - name: Install Souffle run: | + # Souffle's PPA package links against libffi7, which Ubuntu 24.04 + # dropped; install the Ubuntu 20.04 build (checksum-pinned) first. + curl -fsSLo /tmp/libffi7.deb http://archive.ubuntu.com/ubuntu/pool/main/libf/libffi/libffi7_3.3-4_amd64.deb + echo "4584aa8fef1bf5086168ce2f7078cd2ebd78fdc4cc0d86d958d795d4e0b0f50d /tmp/libffi7.deb" | sha256sum -c - + sudo apt-get install -y /tmp/libffi7.deb sudo wget https://souffle-lang.github.io/ppa/souffle-key.public -O /usr/share/keyrings/souffle-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/souffle-archive-keyring.gpg] https://souffle-lang.github.io/ppa/ubuntu/ stable main" | sudo tee /etc/apt/sources.list.d/souffle.list sudo apt-get update @@ -151,9 +155,9 @@ jobs: path: | deps _build - key: mix-argus-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-${{ hashFiles('**/mix.lock') }} + key: mix-argus-u2404-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}-${{ hashFiles('**/mix.lock') }} restore-keys: | - mix-argus-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}- + mix-argus-u2404-${{ steps.beam.outputs.otp-version }}-${{ steps.beam.outputs.elixir-version }}- - run: mix deps.get --check-locked - run: mix argus --fail-above 0