-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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 separate Jenkins jobs for daily master tests + CI documentation overhaul #14997
Conversation
Note: ideally we would also fix all the jobs in Jobs Overview, as they are completely outdated. I propose we do that in a separate PR in order to get the links to the CI matrix and updated trigger phrases out in the wild ASAP for contributors to use. Updated intel re: jobs can come in later in my opinion, please feel free to give your POV. |
Also: I deliberately removed |
8ae0598
to
9f444de
Compare
test-missed-k8s |
9f444de
to
47463dc
Compare
47463dc
to
89451d0
Compare
Added |
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.
Just one more question about the other table.
89451d0
to
25bbecb
Compare
This reverts commit f3ff8be following decision to split K8s all job directly via Jenkins jobs triggers, rather than rely on the older `ginkgo-kubernetes-all.Jenkinsfile` infrastructure. The revert itself is there to help with the transition, since another job is still dependent upon `ginkgo-kubernetes-all.Jenkinsfile`: https://jenkins.cilium.io/view/Quarantine%20Pipelines/job/cilium-master-K8s-all-Quarantine/ Signed-off-by: Nicolas Busseneau <nicolas@isovalent.com>
bac0f02
to
49a3183
Compare
Following today's cartography and multiple fixes, documentation has been updated accordingly. Context When splitting `ginkgo-kubernetes-all.Jenkinsfile` in #14861, we offloaded the actual work to PR jobs. However, this means daily `cilium-master-K8s-all`-triggered job results were mixed in with PR-triggered job results. For tracking purposes, separate jobs needed to be setup. We took this oppurtunity to review, document, and accordingly fix a big part of the CI jobs, notably: - What to test automatically at regular intervals. - Which jobs are required for which PRs. - Which phrases trigger which jobs. Detailed recap of changes made so far: - Creation and publication of The Table of Truth™️ https://docs.google.com/spreadsheets/d/1TThkqvVZxaqLR-Ela4ZrcJ0lrTJByCqrbdCjnI32_X0 - Master jobs - Automated testing jobs running every 4 hours or daily have been setup according to the Table of Truth™️. - Most jobs have been renamed to make it clear which K8s version and Kernel version they're running. - `cilium-master-K8s-all`, now superseded by individual jobs, has been disabled and moved to the `Obsolete` view. - PR jobs - All jobs marked as required for a PR in the Table of Truth™️ have been setup accordingly on GitHub. - All the triggers in required PR jobs have been reviewed, fixed according to the Table of Truth™️, and documented below the Table of Truth™️. - `Cilium-PR-Ginkgo-Tests-Kernel` (job for K8s 1.19 / Kernel 4.19) edited to correctly use K8s version 1.19 (and not 1.18, which seems to be a leftover). Note: unlike 1.8 and 1.9, `test-backport-1.7` does not trigger individual jobs. It still triggers the old `Cilium-PR-Ginkgo-Tests-K8s`, because we were unsure of the robustness of `ginkgo-kernel.Jenkinsfile` on 1.7. We may backport the updated `ginkgo-kernel.Jenkinsfile` to 1.7 in a future PR. Signed-off-by: Nicolas Busseneau <nicolas@isovalent.com>
49a3183
to
a9c6afe
Compare
I was going to trigger the k8s-all jobs so we can merge this (it's the only jobs that should be affected AFAICT), but I actually can't find the information on how to do that anywhere (apart from looking at the Jenkins configuration). Did we miss some documentation? |
test-missed-k8s |
That's because you are not supposed to trigger it anymore. If you insist, you can do it with |
What if we made changes to the Jenkinsfile and want to verify all works as expected (e.g., present PR)? Or if we fixed a flake that affected those jobs and want to check the fix on master? Does that also mean |
Cilium-PR-Ginkgo-Tests-K8s is obsolete and only used by backports for 1.7 still, because we didn't want to backport other changes required for using separate jobs. Thus there is no point in making changes on But still, we can test it manually on
|
Ok, I wasn't clear above. That's ☝️ what I want. I thought with this PR,
in the docs. Probably good enough for such rarely used trigger phrase 👍 |
Considering the above and given all reviews are in, I think this is good to merge. |
Following today's cartography and multiple fixes, documentation has been updated accordingly.
Context
When splitting
ginkgo-kubernetes-all.Jenkinsfile
in #14861, we offloaded the actual work to PR jobs. However, this means dailycilium-master-K8s-all
-triggered job results were mixed in with PR-triggered job results. For tracking purposes, separate jobs needed to be setup.We took this oppurtunity to review, document, and accordingly fix a big part of the CI jobs, notably:
Detailed recap of changes made so far
cilium-master-K8s-all
, now superseded by individual jobs, has been disabled and moved to theObsolete
view.Cilium-PR-Ginkgo-Tests-Kernel
(job for K8s 1.19 / Kernel 4.19) edited to correctly use K8s version 1.19 (and not 1.18, which seems to be a leftover).Note: unlike 1.8 and 1.9,
test-backport-1.7
does not trigger individual jobs. It still triggers the oldCilium-PR-Ginkgo-Tests-K8s
,because we were unsure of the robustness of
ginkgo-kernel.Jenkinsfile
on 1.7. We may backport the updatedginkgo-kernel.Jenkinsfile
to 1.7 in a future PR.Partial revert of #14861
The previous changes to
ginkgo-kubernetes-all.Jenkinsfile
in #14861 are now unneeded. These changes were reverted as part of this PR to help with the transition, since another job is still dependent uponginkgo-kubernetes-all.Jenkinsfile
: https://jenkins.cilium.io/view/Quarantine%20Pipelines/job/cilium-master-K8s-all-Quarantine/