diff --git a/.github/workflows/repo-ghc-8.6-cabal-2.4.yml b/.github/workflows/repo-ghc-8.6-cabal-2.4.yml new file mode 100644 index 0000000..4eaa7bb --- /dev/null +++ b/.github/workflows/repo-ghc-8.6-cabal-2.4.yml @@ -0,0 +1,63 @@ +name: install-hackage-ghc-8.6-cabal-2.4 + +# Trigger the workflow on push or pull request +on: + - pull_request + - push + +jobs: + cabal: + name: ${{ matrix.os }} / ghc ${{ matrix.ghc }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest] + cabal: ["2.4"] + ghc: + - "8.6" + + steps: + + - uses: haskell-actions/setup@main + id: setup-haskell-cabal + name: Setup Haskell + with: + ghc-version: ${{ matrix.ghc }} + cabal-version: ${{ matrix.cabal }} + + - name: Prepare environment + run: | + echo "$HOME/.ghcup/bin" >> $GITHUB_PATH + echo "$HOME/.cabal/bin" >> $GITHUB_PATH + + - uses: actions/checkout@v4 + + - name: Create sandbox + run: | + echo "$PWD/.cabal-sandbox/bin" >> $GITHUB_PATH + cabal v1-sandbox init + + - name: Install dependencies + run: | + cabal v1-install alex happy + + - name: Install ogma + run: | + # Some tests need the ogma executable to be in the path, which won't + # happen until installation completes successfully (which only happens + # after tests if running tests is enabled). We therefore need to run + # the installation twice: once without --run-tests, and again with + # --run-tests. + # + # We still --enable-tests in the first compilation to make sure that + # the dependencies do not change and cabal does not change the + # installation plan (which would mean we'd be running the tests with a + # version of ogma compiled with different dependencies). + cabal v1-install ogma-**/ --enable-tests + + - name: Test all packages + run: | + # We want to document the build process, and get detailed information + # if there is a problem (or if all goes well). We therefore execute the + # installation with -j1. + cabal v1-install ogma-**/ --enable-tests --run-tests -j1 diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index c15cddc..0000000 --- a/.travis.yml +++ /dev/null @@ -1,40 +0,0 @@ -language: haskell - -ghc: - - "8.8.4" - -env: - - PATH=${HOME}/.cabal/bin:${PATH} - -before_install: - - travis_retry sudo apt-get update - -install: - - travis_retry cabal install alex happy - - travis_retry cabal install --enable-tests --only-dependencies ogma-**/ - -script: - # We want to document the build process, and get detailed information if - # there is a problem (or if all goes well). We therefore execute the - # installation with -j1. - # - # Some tests need the ogma executable to be in the path, which won't happen - # until installation completes successfully (which only happens after tests - # if running tests is enabled). We therefore need to run the installation - # twice: once without --run-tests, and again with --run-tests. - # - # We still --enable-tests in the first compilation to make sure that the - # dependencies do not change and cabal does not change the installation plan - # (which would mean we'd be running the tests with a version of ogma compiled - # with different dependencies). - - cabal install --enable-tests -j1 ogma-**/ - - cabal install --run-tests -j1 ogma-**/ - -after_script: - -branches: - only: - - master - - /^develop.*$/ - - /^hotfix.*$/ - - /^release.*$/ diff --git a/ogma-cli/CHANGELOG.md b/ogma-cli/CHANGELOG.md index 0a59d3f..f02196b 100644 --- a/ogma-cli/CHANGELOG.md +++ b/ogma-cli/CHANGELOG.md @@ -1,5 +1,8 @@ # Revision history for ogma-cli +## [1.X.X] - 2024-05-19 +* Introduce CI test job (#139). + ## [1.3.0] - 2024-03-21 * Version bump 1.3.0 (#133).