-
Notifications
You must be signed in to change notification settings - Fork 2k
[Infra] Skip CI workflows on documentation-only changes #5641
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
base: master
Are you sure you want to change the base?
Conversation
c27kwan
left a comment
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.
Nice! The change seems sensible to me. Some questions
| @@ -1,5 +1,23 @@ | |||
| name: "Kernel Unity Catalog" | |||
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 wonder if it's better to call this "Java Kernel Unity Catalog" if we're making assumptions that we'll only run this for scala/Java files.
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.
Or maybe it is better to express this as a "disallow" list with paths-ignore like the rest.
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.
Could be, however, I decided to make the minimal change without renaming the action itself. If we rename it then potential downstream metrics will not link back. (but I do not know if we have any downstream metrics)
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 agree that an ignores makes more sense here (so you don't forget to add new patterns for opt-in...) but we can do this as a followup and keep this PR to retain status quo
| ** | ||
| .github/workflows/** |
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.
If we don't specify paths under push/pull_request, then is it every file by default?
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.
Yes, except the ones matching 'paths-ignore'.
c27kwan
left a comment
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.
lgtm!
scottsand-db
left a comment
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.
Thanks!
allisonport-db
left a comment
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.
LGTM. I think we could improve our logic to be more selective and avoid more unnecessary runs but this can be done later.
| on: | ||
| push: | ||
| paths-ignore: | ||
| - '**.md' | ||
| - '**.txt' | ||
| pull_request: | ||
| paths-ignore: | ||
| - '**.md' | ||
| - '**.txt' |
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.
let's add spark/** here maybe? we use latest released delta-spark here now so no need to run these. Fine to do this as a follow-up though to keep this scoped
| @@ -1,5 +1,23 @@ | |||
| name: "Kernel Unity Catalog" | |||
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 agree that an ignores makes more sense here (so you don't forget to add new patterns for opt-in...) but we can do this as a followup and keep this PR to retain status quo
| name: "Delta Kernel" | ||
|
|
||
| on: [push, pull_request] | ||
| on: |
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.
oh -- we have no path diffing checks today for kernel?
we should run these if there are changes in:
- kernel folder
- storage // for delta-storage
Anything else? I think we can be much more selective here cc @allisonport-db
Replace technote-space/get-diff-action with native GitHub Actions paths-ignore to prevent workflows from running on .md and .txt file changes. This saves CI resources by not allocating runners for documentation-only PRs. Also removes references to non-existent unity/** directory in kernel_unitycatalog_test.yaml (Unity Catalog code is at kernel/unitycatalog/, already covered by kernel/**).
dfa943a to
5ca4979
Compare
Replace technote-space/get-diff-action with native GitHub Actions paths-ignore to prevent workflows from running on .md and .txt file changes. This saves CI resources by not allocating runners for documentation-only PRs.
Also removes references to non-existent unity/** directory in kernel_unitycatalog_test.yaml (Unity Catalog code is at kernel/unitycatalog/, already covered by kernel/**).
Which Delta project/connector is this regarding?
Description
Documentation-only changes (.md, .txt files) currently trigger all CI workflows, wasting compute resources on unnecessary test runs. Using native paths-ignore prevents workflows from starting entirely, saving CI time and removing the dependency on third-party actions.
How was this patch tested?
YAML syntax was validated locally. The workflows will be fully tested when this PR is pushed—GitHub Actions will verify the workflow files parse correctly and the path filtering behaves as expected on subsequent commits.
Does this PR introduce any user-facing changes?
No