Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various CI improvements #10

Merged
merged 4 commits into from
Sep 17, 2023
Merged

Various CI improvements #10

merged 4 commits into from
Sep 17, 2023

Conversation

DigitalBrains1
Copy link
Owner

@DigitalBrains1 DigitalBrains1 commented Sep 12, 2023

  • CI all job checks needs job failures

    By making only the all test a required status check for merging to main on GitHub, we can just use the needs of that test to determine which CI jobs are required.

  • Update GitHub actions

  • Better caching

    The documentation for the haskell/actions/setup action demonstrated a nice improvement to caching, where a cache is created even if the project itself fails to build. It also demonstrated cache invalidation based on hashes of all the dependencies, which improves caching efficiency.

  • Pass --pedantic to stack build and don't invoke cabal v2-update unnecesarily (it's already done by the setup action)

  • Simplify Stack version bumps

    The .ci directory contains stack.yaml files for each GHC version we test with Stack on CI. These files used to be named after the full GHC version, which is annoying if you want to bump to a later minor version. The files are now named only after the major GHC version so the file doesn't change name on such a bump.

  • Minor improvements

@DigitalBrains1 DigitalBrains1 force-pushed the only-all-check-required branch 10 times, most recently from 1e36376 to 202c106 Compare September 17, 2023 11:02
@DigitalBrains1 DigitalBrains1 changed the title CI all test is the only required test Various CI improvements Sep 17, 2023
By making only the `all` test a required status check for merging to
`main` on GitHub, we can just use the `needs` of that test to determine
which CI jobs are required.
The documentation for the `haskell/actions/setup` action demonstrated a
nice improvement to caching, where a cache is created even if the
project itself fails to build. It also demonstrated cache invalidation
based on hashes of all the dependencies, which improves caching
efficiency.

Also pass `--pedantic` to `stack build` and don't invoke
`cabal v2-update` unnecesarily (it's already done by the setup action)
The `.ci` directory contains `stack.yaml` files for each GHC version we
test with Stack on CI. These files used to be named after the full GHC
version, which is annoying if you want to bump to a later minor version.
The files are now named only after the major GHC version so the file
doesn't change name on such a bump.
@DigitalBrains1 DigitalBrains1 merged commit ac0f40a into main Sep 17, 2023
14 checks passed
@DigitalBrains1 DigitalBrains1 deleted the only-all-check-required branch September 17, 2023 11:42
DigitalBrains1 added a commit that referenced this pull request Sep 17, 2023
Fixes mistake introcuded in #10 (commit 20df524)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant