-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
ci: use dorny/paths-filter
to filter paths when running go-tests
#3675
Conversation
@GenPage I defer this one to you since you have done considerable amount of work on the workflows |
As the original writer of #3123 of the negative tests, as (previously) recommended by github docs, FWIW, I'm completely OK with removing the negative tests which are finicky and tricky to debug. This proposed method of using a separate action to do the path filtering will reduce maintenance and make it easier to troubleshoot the triggered action. |
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.
I think this will be more consistent in the long-run, thank you for proposing this.
This is just a proposal / discussion starter
what
Instead of having 2 separate workflow files, one that runs tests based on changed paths and the other runs on other changed files, have only one workflow that makes sure to either run tests or no tests.
why
concurrency
lock, whoever wins executes.on.*.paths
, there is no way to ensuretest-required.yml
is only run iftest.yml
is skipped (i.e. always give priority totest.yml
)Examples of when
test.yml
failed to run while there are changed go files:test.yml
skippedtest-required.yml
taking overtests
I tested in ghaiszaher#51
drawbacks
(I still see it better than risking skipping tests when they are actually failing)
alternatives
references