-
Notifications
You must be signed in to change notification settings - Fork 30k
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
Discuss: should we require Travis and GitHub Actions to succeed before landing PRs #32335
Comments
I personally liked the previous simplicity of only having one thing to check (the Jenkins CI run) but we've since allowed Travis CI for doc-only changes (#30330). Our tooling hasn't caught up (which is why #29770 is still open). There are advantages to having things in Travis/Actions:
The main downside is Travis/Actions doesn't cover all of our supported platforms. I'm leaning towards doing less in Travis as it is more restrictive than Actions in terms of things like job running time limit (50 mins on Travis vs 6 hours on Actions) and concurrency (5 concurrent jobs for open source on Travis vs 20 on Actions). |
I rely heavily on |
I think if we have actions/travis jobs that run automatically for each PR then they should pass and be a blocker for landing, otherwise why are we running them? |
Agreed. Also, keeping only one should make maintenance simpler (in theory at least).
We already have the building blocks to check GitHub CI status on ncu, just need to make some changes so that it's possible to check both Jenkins and GitHub CI (we might need to fix something on github-bot first though). |
I am +1 on require those CI. But travis sometimes being flaky like those https://travis-ci.com/github/nodejs/node/jobs/299678389, I see it mulit times. |
I'll probably send a PR to remove Travis 👀 Just need to double-check that everything we have on Travis is covered on Actions. |
If I'm not mistaken, |
Not sure if it should, but it could require the last CI to be successful before landing. |
IIRC, it checks that there is a |
It might be more robust to only check the green-or-not status of node-test-pull-request. It's often the case that a subtask (e.g., node-test-commit-linux-containered) still shows as red even after a newer run has passed. |
|
It's a blue
This is already implemented on ncu, but we need to check that a Jenkins CI was run (today we only check if a GitHub Checks is present). Also, bugs like this can hinder the results collected by ncu. |
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs#324 Ref: nodejs/node#32335
Latest |
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs/node-core-utils#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs/node-core-utils#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs/node-core-utils#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs/node-core-utils#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
Doc-only changes don't need a full Jenkins CI, instead we can check if the last Actions run was successful. Therefore this commit also adds check for Action runs. Jenkins CI messages were improved as well. Fix: nodejs/node-core-utils#324 Fix: nodejs/node#32335 Fix: nodejs/node#29770
According to our current CI policy, before landing a Pull Request, only Jenkins jobs are required to succeed. While I imagine most of us are careful to not land a PR when Travis/Actions are red, our policy or tooling doesn't reflect that practice. Now that we have Travis and Actions enabled in the repository for a while, the question is: should we consider those as official CI options and consider them as well in our policy?
On one hand, adding more CI results to consider can make our policy more complex. On the other hand, if we treat Actions as an official CI, we can move some tests from Jenkins to here, simplifying our Jenkins infrastructure (for example, tests involving different
./configure
options). We would probably still need to test on every platform on Jenkins though.I don't have strong opinions either way, but I'd like to hear what others think.
The text was updated successfully, but these errors were encountered: