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

GitHub Actions workflow improvements #6

Merged
merged 5 commits into from
Jun 7, 2024

Conversation

jgarber623
Copy link

@jgarber623 jgarber623 commented Jun 7, 2024

This PR refactors the existing CI workflow. Notable changes include:

  • renaming the file to ci.yml to better reflect its function,
  • replaces much of the setup-related job steps with CargoSense/setup-elixir-project reusable Action,
  • adds workflow_dispatch as an event trigger so that we may manually invoke the Action (should that prove useful)

I've retained the use of a matrix even though there's only one configured OTP and Elixir version. @billylanchantin and I have been chatting about what an improved test matrix might look like, but haven't yet come to a conclusion. One we do, I'm happy to update the matrix with additional versions.

Updated in c9e6068. Pulling out my commit message since it includes some relevant notes:

This required using an older version of Ubuntu to support older Erlang/OTP versions. Pulled that bit of knowledge from the README here:

https://github.com/erlef/setup-beam

Additionally, Erlang/OTP compatibility charts are maintained here:

https://hexdocs.pm/elixir/compatibility-and-deprecations.html#between-elixir-and-erlang-otp

…and lastly, the matrix expansion via include is documented here:

https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs#expanding-or-adding-matrix-configurations

I'm mostly confident this will work as desired.

This is duplicative of the project's default settings.
The biggest change here is that the workflow now uses the CargoSense/setup-elixir-project reusable Action.
@jgarber623 jgarber623 self-assigned this Jun 7, 2024
This required using an older version of Ubuntu to support older Erlang/OTP versions. Pulled that bit of knowledge from the README here:

https://github.com/erlef/setup-beam

Additionally, Erlang/OTP compatibility charts are maintained here:

https://hexdocs.pm/elixir/compatibility-and-deprecations.html#between-elixir-and-erlang-otp

…and lastly, the matrix expansion via `include` is documented here:

https://docs.github.com/en/actions/using-jobs/using-a-matrix-for-your-jobs#expanding-or-adding-matrix-configurations

I'm _mostly_ confident this will work as desired.
@jgarber623
Copy link
Author

I suspect the changes to this workflow aren't running as part of the PR status checks because I renamed the file. 🤦🏻

@billylanchantin billylanchantin self-requested a review June 7, 2024 16:36
Copy link
Member

@billylanchantin billylanchantin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

If we can't get the CI to run on this branch, I'm happy to merge into main then test later. We can always revert if it doesn't do what we want.

@jgarber623 jgarber623 merged commit 382572a into main Jun 7, 2024
@jgarber623 jgarber623 deleted the github-actions-improvements branch June 7, 2024 17:25
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.

3 participants