diff --git a/.github/workflows/ci-community.yml b/.github/workflows/ci-community.yml new file mode 100644 index 000000000..28b353ace --- /dev/null +++ b/.github/workflows/ci-community.yml @@ -0,0 +1,72 @@ +name: Community Edition +# Check proper build using the community edition of the AdaCore toolchain + +on: + pull_request: + paths-ignore: + - 'doc/**' + - '**.md' + - '**.rst' + - '**.txt' + workflow_dispatch: + +jobs: + + build: + name: ce${{matrix.version}} on ${{ matrix.version }} + + runs-on: ${{ matrix.os }} + + strategy: + fail-fast: false # Attempt to generate as many of them as possible + matrix: + os: + - macos-latest + - ubuntu-latest + - windows-latest + version: + - 2020 + - 2021 + exclude: + - os: macos-latest + version: 2021 # it was never released for macOS + + steps: + - name: Check out repository + uses: actions/checkout@v2 + with: + submodules: true + + # Until some stable alr with `alr install` is available, we cannot rely on + # the alr-install action, as that introduces a circular dependency. If a + # nightly build were to fail, there's no way to do an `alr install` anymore + # TODO: replace with `alr-install` once alr 2.0 is out. + - name: Install Community toolchain + uses: ada-actions/toolchain@dev + with: + distrib: community + community_year: ${{ matrix.version }} + + - name: Install Python 3.x (required for the testsuite) + uses: actions/setup-python@v2 + with: + python-version: '3.x' + + - name: Run test script + run: scripts/ci-github.sh + shell: bash + + - name: Upload logs (if failed) + if: failure() + uses: actions/upload-artifact@master + with: + name: e3-log-linux.zip + path: testsuite/out + + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: alr-bin-${{ matrix.os }}.zip + path: | + bin/alr* + LICENSE.txt \ No newline at end of file diff --git a/.github/workflows/ci-docker.yml b/.github/workflows/ci-docker.yml index 6327c3960..6808694c8 100644 --- a/.github/workflows/ci-docker.yml +++ b/.github/workflows/ci-docker.yml @@ -1,4 +1,5 @@ name: CI Docker +# Check builds on supported Linux distributions on: pull_request: diff --git a/.github/workflows/tarball-full.yml b/.github/workflows/tarball-full.yml index f7232ae27..cc49c54a2 100644 --- a/.github/workflows/tarball-full.yml +++ b/.github/workflows/tarball-full.yml @@ -1,4 +1,7 @@ name: Full sources +# Create a tarball that includes everything necessary for building, +# particularly 3rd party dependencies in submodules which are not included in +# GitHub automatic source tarballs. on: release: