Comments (11)
From an implementation perspective:
https://docs.prow.k8s.io/docs/jobs/#triggering-jobs
skip_if_only_changed can be used, however different repos need different paths.
I recommend being careful with this because you might have surprise interactions between paths you didn't think were relevant, and limiting it to only something like skip_if_only_changed: ^site/
for unit tests etc seems reasonable.
A maintainer of this repo will need to approve the config changes.
from prow.
Hello there!!
I agree with your suggestion!! However, some parts of the proposal seem to have already been implemented. FYI:
I am not sure if Netlify's deploy preview supports this feature, but are there other Kubernetes or CNCF repos that could serve as a reference for implementing this suggestion?? thanks
from prow.
Your suggestion seems very reasonable @BenTheElder.
Do you think it would be better to remove the skip_if_only_changed: '^site/'
setting from the pull-prow-integration
and pull-prow-image-build-test
?
from prow.
Sorry I missed this.
Do you think it would be better to remove the skip_if_only_changed: '^site/' setting from the pull-prow-integration and pull-prow-image-build-test?
It depends on how confident we are that whatever runs in those will not ever have a dependency on site/
.
If we have e.g. a spelling check or something like that, we'd still want to include site/
But probably e.g. unit tests or prow images do not ever need to run when site/ changes.
from prow.
I completely agree with your suggestion. It seems that spellcheck (or like this) are not included. Excluding the /site
from some CI would be a good first step.
If there are no objections or barriers within approximately 48 hours, I would like to work on this change. Alternatively, anyone is free to work it on.
from prow.
In k-sigs/prow, Unit Test CI is marked as "Required." According to the documentation, it seems that if tests are run conditionally, they cannot be marked as required. Since it doesn't seem possible to remove the "Required" status for Unit Test, it appears challenging to run these tests conditionally.
I think it's gonna be fine (eventually) - iirc the branchprotector sets the job as required
because it is unconditionally triggered (until your PR lands). Once it is conditionally triggered, next branchprotector run should remove the BP config.
from prow.
Sounds good to me
from prow.
/sig contributor-experience
from prow.
/assign
opened kubernetes/test-infra#33134 - please have a look :)
In k-sigs/prow, Unit Test CI is marked as "Required." According to the documentation, it seems that if tests are run conditionally, they cannot be marked as required. Since it doesn't seem possible to remove the "Required" status for Unit Test, it appears challenging to run these tests conditionally.
FYI: https://docs.prow.k8s.io/docs/jobs/#requiring-job-statuses
Protecting Status Contexts
The branch protection rules will only enforce the presence of jobs that run unconditionally and have required status contexts. As conditionally-run jobs may or may not post a status context to GitHub, they cannot be required through this mechanism.
from prow.
I see, so we should focus on whether or not Prow should trigger unit tests conditionally.
I think Prow doesnโt need to trigger unit tests when only site/ is changed. WDYT?
from prow.
Thanks, updated kubernetes/test-infra#33134, please take a look!
from prow.
Related Issues (20)
- Prow issue: I am installing containerd 1.7.16 and kubernetes 1.30.0 on RHEL centos machines onpremise.The pods are unable to run HOT 4
- Renaming a presubmit job triggered builds on draft pull requests
- Allow renaming Prow's `test` container for individual jobs HOT 3
- prow: handle the case of re-triggering an expired GitHub workflow
- Prow issue: Bad invalid commit message for npm dependencies #28257 HOT 1
- Allow `ok-to-test` label to approve GitHub workflow runs for new contributors #25210 HOT 1
- Reporting periodic jobs failures to slack channel after number of consequent failures HOT 1
- Prow seems to assign Assignees who are not in OWNERS file HOT 3
- Prow web UI exposes private repositories HOT 5
- plugins: do we still need the `cla` plugin? HOT 2
- [BUG] CC multiple people does not work anymore HOT 13
- Configured Tests Dashboard HOT 1
- Branch protection rules prevent first PR of a merge-batch from being merged
- Crier failing to report OOMed pods HOT 7
- switch to aws-sdk-go-v2 as v1 is going away HOT 1
- Prow issue:
- prow config: where possible, all config should behave like branchprotector for overrides
- Prow issue: HOT 2
- Git providers other than GitHub HOT 1
- Tide re-ran an overridden second stage job
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prow.