-
Notifications
You must be signed in to change notification settings - Fork 15
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
Reusable workflows #331
Reusable workflows #331
Conversation
* Allows the whole matrix to run under a single CI run while making the base workflow reusable by other branches so that we can stop replicating CI pipelines in release branches. This has the following benefits: 1. The whole matrix runs a lot faster (~4h for all combinations instead of 2h per combination in some cases) 2. It's much easier to understand what fails in the whole matrix by inspecting a single page (it used to be 8) 3. We can now test the workflow in PRs that affect it * Adds wrappers for workflow_dispatch, so that we can still run custom jobs with `gh workflow run`... * Makes artifacts unique per reusable workflow inputs. This is necessary since when using reusable workflows and calling a reusable workflow multiple times from the same caller workflow will result in artifact-name collisions.
When using reusable workflows job names get prefixed with the caller job name in the github UI. Shorter names make it easier to distinguish jobs and understand what each job is doing.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, but I'm not much use as a reviewer for gh workflow files ;-)
I mostly include you and Karm in those to make sure you are aware of the changes and to spot potential high level issues. I don't expect you to parse the yaml file :) |
graalvm#331 added reusable workflows that allow us to invoke them from different branches (even repositories) and avoid duplicating workflow definitions across branches (and repositories).
graalvm#331 added reusable workflows that allow us to invoke them from different branches (even repositories) and avoid duplicating workflow definitions across branches (and repositories).
#331 added reusable workflows that allow us to invoke them from different branches (even repositories) and avoid duplicating workflow definitions across branches (and repositories).
#331 added reusable workflows that allow us to invoke them from different branches (even repositories) and avoid duplicating workflow definitions across branches (and repositories).
The whole matrix runs a lot faster (~4h for all combinations instead of ~2h per combination in some cases)
Before:

After:

It's much easier to understand what fails in the whole matrix by inspecting a single page (it used to be 8)
We can now test the workflow in PRs that affect it
gh workflow run
...Special thanks to @gvre for:
workflow_dispatch
toworkflow_call