Skip to content
list

GitHub Action

Test supported GHC versions

v0.1.7.1 Latest version

Test supported GHC versions

list

Test supported GHC versions

Generate a test matrix from your cabal file's `tested-with` stanza

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Test supported GHC versions

uses: Kleidukos/get-tested@v0.1.7.1

Learn more about this action in Kleidukos/get-tested

Choose a version

get-tested

A CLI tool that retrieves the tested-with stanza of a cabal file and formats it in such a way that GitHub Actions can use it.

Usage

The inputs of the action (under the with: stanza) are the following:

  • cabal-file:
    The path to your cabal file, e.g. somefolder/myproject.cabal.
    Required: true

  • version:
    The version of the get-tested tool that is used.
    Required: false
    Default: The latest release

  • windows:
    (deprecated) Enable Windows runner, latest version.
    Required: false
    Default: false

  • windows-version:
    Enable Windows runner. If both windows and windows-version inputs are set, the explicit version will take priority.
    Required: false
    Default: Not set

  • macos:
    (deprecated) Enable macOS runner, latest version.
    Required: false
    Default: false

  • macos-version:
    Enable macOS runner. If both macos and macos-version inputs are set, the explicit version will take priority.
    Required: false
    Default: Not set

  • ubuntu:
    (deprecated) Enable Ubuntu runner, latest version.
    Required: false
    Default: false

  • ubuntu-version:
    Enable Ubuntu runner. If both ubuntu and ubuntu-version inputs are set, the explicit version will take priority.
    Required: false
    Default: Not set

  • newest:
    Enable only the newest GHC version found in the cabal file
    Required: false
    Default: false

  • oldest:
    Enable only the oldest GHC version found in the cabal file
    Required: false
    Default: false

See below for an example:

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.7.1
        with:
          cabal-file: get-tested.cabal
          ubuntu-version: "latest"
          macos-version: "latest"
          version: 0.1.7.1
  tests:
    name: ${{ matrix.ghc }} on ${{ matrix.os }}
    needs: generate-matrix
    runs-on: ${{ matrix.os }}
    strategy:
      matrix: ${{ fromJSON(needs.generate-matrix.outputs.matrix) }}