-
Notifications
You must be signed in to change notification settings - Fork 375
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] - Test skipping publishing step for daily 7.17 and 8.x test jobs #5884
Conversation
b99a8d6
to
5955947
Compare
🌐 Coverage report
|
The result of this run against 8.7.1-SNAPSHOT shows a lot test failures. This image shows only test cases that failed. There a more integrations that failed to install before a test case executed (like jolokia_input, cel, zeek, cloud_defend, and barracuda_cloudgen_firewall). An interesting failure is that input packages no longer install due to the template. The errors are:
UDP package failed with:
|
As an optimization add a parameter to skip the package publishing step. This avoids any interaction with the remote publishing Jenkins pipeline so it can avoid errors not related to testing. There is no need to attempt publishing for jobs that only are concerned with testing (e.g. daily tests agains 7.17 and 8.x).
416973d
to
fef95c9
Compare
Pinging @elastic/fleet (Team:Fleet) |
cc @mrodm - I think you'd be best suited to look into this. |
I created an issue for the input packages not working. elastic/kibana#155057 |
Previously it was like that, but publishing new package versions were delayed too much when PR. Even if testing was not successful, publishing was performed too:
So it was decided to move that step before testing, so publish of new packages was carried out first (#4647).
There is an ongoing PR to try to solve these errors. They are related to a limit of GitHub checks per SHA. Following this approach to speed up the tests by avoiding to run the publishing stage, what about adding a third job in parallel to just run the publishing stage ? @andrewkroh @jsoriano That would require adding another boolean parameter like |
Thanks for the background info on the existing structure.
That's sound equivalent and should address the issue of testing being blocked (or stopped) by publishing. The scheduled 7.latest/8.latest testing jobs would not launch the publishing job, right? |
Another issue that went undiagnosed was #5912. |
That's right, with that this schedule daily would trigger three Jenkins builds:
PR related to remove notifications to GitHub was already merged, that also should help to avoid those errors 🤞 |
It looks like the publishing errors have gone away. 👍 Could we merge this PR to take that publishing step out of those daily jobs anyways? |
Yes, I think it could help in some cases. In any case, I've created this other issue #5947 to create that third job mentioned in #5884 (comment) |
What does this PR do?
As an optimization add a parameter to skip the package publishing step.
This avoids any interaction with the remote publishing Jenkins pipeline
so it can avoid errors not related to testing.
There is no need to attempt publishing for jobs that only are concerned
with testing (e.g. daily tests agains 7.17 and 8.x).
Background
This PR began as just a test to try to understand why CI jobs are failing.
I am concerned that daily CI testing is not running for all packages against the latest 8.7 snapshot. There is a job that is running daily, but I suspect it’s not doing any real testing. It mostly fails on publishing and never gets to the point of running package or system tests.
Investigation
The integrations/main job (https://fleet-ci.elastic.co/blue/organizations/jenkins/Ingest-manager%2Fintegrations/detail/main/1283/pipeline) fails while invoking the remote publishing job. Then it never advances to testing. Why not move the testing before the publishing?
publishing-job-remote fails with NPE.
https://internal-ci.elastic.co/job/package_storage/job/publishing-job-remote/5504/console