diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7068fee..483a2a9 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,15 +14,30 @@ concurrency: cancel-in-progress: true jobs: + generate-matrix: + name: "Generate matrix from cabal" + outputs: + matrix: ${{ steps.set-matrix.outputs.matrix }} + runs-on: ubuntu-latest + steps: + - name: Extract the tested GHC versions + id: set-matrix + uses: kleidukos/get-tested@v0.1.6.0 + with: + cabal-file: dotenv.cabal + ubuntu: true + version: 0.1.6.0 + build-and-test: + name: GHC ${{ matrix.ghc }} on ${{ matrix.os }} + needs: generate-matrix runs-on: ${{ matrix.os }} strategy: - matrix: - ghc: ["8.10", "9.0", "9.2", "9.4", "9.6"] - os: [ubuntu-latest] - include: + matrix: + include: - os: macos-latest - ghc: "9.2" + ghc: 9.2 + json: ${{ fromJSON(needs.generate-matrix.outputs.matrix) }} steps: - uses: actions/checkout@v3