diff --git a/.github/workflows/ci-toolchain.yml b/.github/workflows/ci-toolchain.yml index 803111b91..c3b3fa659 100644 --- a/.github/workflows/ci-toolchain.yml +++ b/.github/workflows/ci-toolchain.yml @@ -43,6 +43,7 @@ jobs: uses: alire-project/alr-install@v1 with: crates: gnat_native^${{matrix.gcc_version}} gprbuild + cache: false - name: Build alr with toolchain from `alr install` shell: bash diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d44685008..b9d9e1dfd 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -21,14 +21,14 @@ jobs: fail-fast: false # Attempt to generate as many of them as possible matrix: os: - - macos-14 - macos-12 + - macos-14 - ubuntu-20.04 - windows-latest steps: - name: Check out repository - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: submodules: true @@ -36,19 +36,23 @@ jobs: uses: alire-project/alr-install@v1 with: crates: gnat_native gprbuild + prefix: alire_prefix - - name: Replace toolchain with aarch64 - if: ${{ runner.arch == 'ARM64' }} + - name: Display toolchain configuration and verify matching arch + shell: bash run: | - curl -L https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-14.1.0-3/gnat-aarch64-darwin-14.1.0-3.tar.gz \ - | tar xzf - --strip-components=1 -C /Users/runner/work/alire/alire/alire_prefix - curl -L https://github.com/alire-project/GNAT-FSF-builds/releases/download/gprbuild-24.0.0-1/gprbuild-aarch64-darwin-24.0.0-1.tar.gz \ - | tar xzf - --strip-components=1 -C /Users/runner/work/alire/alire/alire_prefix - which gcc - gcc -v + case ${{runner.arch}} in + X64) target_arch=x86_64;; + ARM64) target_arch=aarch64;; + *) echo "Unknown arch" && exit 1;; + esac + which gcc + gcc -v + gcc -dumpmachine && gcc -dumpmachine | grep -q $target_arch || exit 1 + gprbuild --version && gprbuild --version | grep -q $target_arch || exit 1 - name: Install Python 3.x (required for the testsuite) - uses: actions/setup-python@v2 + uses: actions/setup-python@v5 with: python-version: '3.x' @@ -56,6 +60,13 @@ jobs: run: scripts/ci-github.sh shell: bash + # Ascertain whether alr can run without the toolchain that built it + - name: Remove toolchain used for building & testing + shell: bash + run: | + rm -rf alire_prefix + which gnat || { echo "Toolchain purged"; ./bin/alr version; } + - name: Upload logs (if failed) if: failure() uses: actions/upload-artifact@v4