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

Run OS compatiblity workflow on dependabot updates to the workflow #36105

Closed
wants to merge 2 commits into from

Conversation

wadells
Copy link
Contributor

@wadells wadells commented Dec 28, 2023

We recently saw CI miss failures in #35848 because the workflow was skipped on a dependabot PR that updated the github actions workflow file itself.

This problem is systemic (a combo of #19745 and #31119), but I've chosen to solve it for only OS Comparability at the moment. Why?

  • OS Compatibility is one of the few workflows that regularly breaks on dependabot updates due to its use of the centos:7 buildbox
  • I'm checking that this implementation works as expected -- if so I'll roll it out to all CI in the repo.

This also fixes GitHub actions to skip the check in the merge queue if it was skipped on CI -- as discussed at #32973.

This should work with required checks:

If, however, a job within a workflow is skipped due to a conditional, it will report its status as "Success".

per https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/collaborating-on-repositories-with-code-quality-features/troubleshooting-required-status-checks#handling-skipped-but-required-checks

Testing

#36108 is a faux-dependabot PR that updates the workflow, targeting this branch. We expect OS compat to fail on this pr.

#36107 here is a docs only change targeting this branch. We expect OS compat to not run (but pass) on this PR.

OS compat is seen to run on this PR here: https://github.com/gravitational/teleport/actions/runs/7352008654/job/20016164332?pr=36105

@wadells wadells added the no-changelog Indicates that a PR does not require a changelog entry label Dec 28, 2023
We recently saw CI miss some failures because this workflow was skipped
on a dependabot update that updates the workflow file itself.

This also fixes GitHub actions to skip this build in the merge queue if
it was skipped on CI.
@wadells wadells changed the title Run os-compat workflow on dependabot updates to the workflow Run OS compatiblity workflow on dependabot updates to the workflow Dec 28, 2023
This is no longer needed with dorny/paths filter targeting.
filters: |
this-workflow:
- '.github/workflows/os-compatibility-test.yaml'
binary-sources:
Copy link
Contributor

Choose a reason for hiding this comment

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

Is this sufficient to capture the requirements? What about Rust files, shell scripts, and Docker files that are used in the build? Or e ref updates? Our build process is such a mess that I don't think that we can whitelist file extensions and still have the same level of coverage that trigger currently has.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
no-changelog Indicates that a PR does not require a changelog entry size/sm
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants