packages feed

hackport-0.8.0.0: cabal/.github/workflows/bootstrap.yml

name: Bootstrap

# See: https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#concurrency.
concurrency:
  group: ${{ github.ref }}-${{ github.workflow }}
  cancel-in-progress: true

on:
  push:
    branches:
      - master
  pull_request:
  release:
    types:
      - created

jobs:
  bootstrap:
    strategy:
      matrix:
        os: [ubuntu-latest]
        ghc: ["8.6.5", "8.8.4", "8.10.7", "9.0.2", "9.2.3"]
        include:
          - os: macos-latest
            ghc: "9.2.3"
    name: Bootstrap ${{ matrix.os }} ghc-${{ matrix.ghc }}
    runs-on: ${{ matrix.os }}
    steps:
      - uses: actions/checkout@v2
      - name: bootstrap.py
        run: |
          GHC_VERSION=${{ matrix.ghc }}
          ghcup config set cache true
          ghcup install ghc $GHC_VERSION
          # We use linux dependencies also on macos
          python3 bootstrap/bootstrap.py -w $(ghcup whereis ghc $GHC_VERSION) -d bootstrap/linux-$GHC_VERSION.json

      - name: Smoke test
        run: |
          _build/bin/cabal --version

      - uses: actions/upload-artifact@v2
        with:
          name: cabal-${{ matrix.os }}-${{ matrix.ghc }}-bootstrapped
          path: _build/artifacts/*