-
Notifications
You must be signed in to change notification settings - Fork 107
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
Create a nightly pipeline for GA/EUS releases #4046
Conversation
887bdd8
to
4905193
Compare
Sample succesfull run of the GA/EUS Nightly pipeline (debug): |
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.
Can you please rename it to just GA pipeline? The nightly pipeline is called that way because it's testing nightly composes while this is supposed to be testing GA composes which is something else, nightly GA doesn't make sense. So please also update all instances of "ga" and "nightly" used together to just "ga".
The rules don't seem to work, I see many jobs on GA runners on the regular PR pipeline.
6bfbb02
to
8ab3ede
Compare
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.
Minor comments
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'm thinking that it would be enough to just call it GA
not GA/EUS
because there is also ELS
and idk what else and it's basically all a subset of GA. Every released RHEL version no matter the support level can still be considered GA. What do you think @atodorov ?
Also the rules don't seem to work, I see many GA jobs in the PR pipeline. The way these rules work by default is that whenever it matches the conditions it will schedule the job. Since you've added these new rules it will enabled to run it in the scheduled GA pipeline but there is nothing preventing it from running on PRs for that I think you'll need to modify the upstream rules to exclude these jobs
So what seems to work is if you take your exclude rule and add it to the upstream rules and build rules for example:
There is also the upstream rule for x86_64 which will require a little bit different regex and then there are a few jobs which have their own rules defined like |
+1 for the proposed simplified naming. Let's use what you propose for now and update it later if need be. |
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've added some comments in the code. One of the main issues I see right now is that I don't think it will run on main
after a PR is merged. It's defined as one of the goals in the Jira ticket, we just want to remove these jobs from running on each PR.
@thozza I wanted to ask you if you agree with this change. The goal here is to not run tests on GA releases on PRs but instead run them only on main
and in a schedule similar to current nightly pipelines. This will make PR testing faster with minimum impact to quality if and an issue does occur on some of the GA releases we'll see it reported on main
and in Slack along with nightly pipelines.
We should keep testing on PRs at least for GA releases used in our SaaS deployment. Otherwise, this LGTM. @ondrejbudai @croissanne WDYT? |
So, for the SaaS version, we need to keep testing the latest RHEL-9 GA release (9.4). WRT the specific test cases, the following ones are relevant for the Saas: @ondrejbudai @croissanne feel free to add / correct me. |
This PR is stale because it has been open 30 days with no activity. Remove "Stale" label or comment or this will be closed in 7 days. |
098e858
to
b34676c
Compare
@tkoscieln can you execute the new so called GA pipeline and post a link here so we can compare the results ? |
I have updated the pipeline to re-add the tests specified by @thozza earlier. I have left the re-added test which now run in the PR pipeline again in the GA pipeline as well. What do you think @atodorov @jrusz ? Do we want to test them in both pipelines or just in the PR one? |
https://gitlab.com/redhat/services/products/image-builder/ci/osbuild-composer/-/pipelines/1348643668 (from pull #4232) - 217 test jobs
^^^ 271 test jobs - quite a lot more actually.
The rest of the jobs in the list are the same, need to examine a bit better whether or not the expected runners are used.
What is the expected result here? That test jobs are executed only on GA runners and not on nightly runners, isn't it ? |
This number includes some cancelled jobs, so I checked and it is actually lower than 217.
I left
Yes, it should contain jobs run on GA runners only, with some of the tests cases being extracted from the PR pipeline entirely to be run only in this GA pipeline. |
Can you git push this PR again so we can see the real number of jobs being scheduled.
Container job should be executed on PRs to detect changes which break container builds from
So it looks like this job, Packer, needs to be executed on pull requests as well, seems important to me. |
Ok, will add back the |
@atodorov it seems that with this optimalization we are down to 136 jobs in the PR pipeline from 217 including the |
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
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.
Looks good, just some cosmetic changes requested.
6499a4e
to
e86d47c
Compare
e86d47c
to
4a02b46
Compare
29650e8
to
7c8ec26
Compare
7c8ec26
to
a5df0a1
Compare
Pipelines results: |
Separate RHEL GA/EUS releases testing to nightly pipeline from the pipeline ran on every PR.
This pull request includes: