-
Notifications
You must be signed in to change notification settings - Fork 35
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
Mechanism to re-trigger a test run? (The idea and the specifications) #382
Comments
@pypingou I think if bodhi (As it is doing for taskotron fedora-infra/bodhi#1779) can send the messages with the detail from the failure this is possible. I assume that is essentially what the button for taskotron is doing and we would want the same. The rev (commit) and repo (package) and branch are probably what is needed at a minimum. On our side we may have to add to messages the CI_MESSAGE, which contains all the above as I mentioned and more. Then bodhi can just resend that message and then we can run it once again as we did the first time. Thanks for the issue I think this helps the pipeline grow! |
I was thinking about this this morning and I am not sure relying on an existing message is wise. I think a potential good solution would be to have a new message, with a topic something like: Food for more thoughts :) |
That sounds reasonable. We just want to make sure we have the fields that are submitted as part of the dist-git message that you outlined. namespace, repo, rev. This is where I disagree that original_nvr_spec is critical it should be able to rerun with namespace, repo, rev. This makes it unique and why we store this as part of nvr which has part of the rev (commit id) |
I don't think we disagree, but I just can't give you rev with the current tooling in place :) |
Yes I believe we are! I think that is a requirement for this to work seamlessly IMHO. This way if there is a failure at any point a message can be sent to re-trigger things even with the separate topic as you mentioned. |
I very much agree with you that this is the ideal situation, but this relies on something that I cannot do today (we cannot from a build go to a git hash, we could if the ticket on koji I linked to above was fixed, but atm, it isn't :(), so I'm trying to find the next-best-thing which is definitely less ideal :( |
@pypingou well this can't be we hack and do workarounds on the pipeline side. If this is an issue and needs to be added to Fedora infrastructure then that avenue should be pushed and raised as a blocker. |
Then I think we do have a blocker :) |
@pypingou Can you add the issue you here on the Fedora Infra side so we know it is being tracked? |
This is blocked on https://pagure.io/koji/issue/550 that was asked for 2 months ago and the pipeline is not responsible for a workaround. Other related PR - fedora-infra/bodhi#1847 |
Why is this closed? Is is fixed? |
Because there is nothing to do on our end as I stated before we need the changes in Fedora. Then a new message can be sent via a button in bodhi like you are doing for taskotron. I am not sure what work you can do besides a hack. In that case I see no work for us to do atm. |
On Wed, Oct 04, 2017 at 12:30:18PM -0700, Ari LiVigni wrote:
Because there is nothing to do on our end as I stated before we need the
changes in Fedora. then a new message can be sent via a button we are NOT
working on this as I already stated
I don't think I ever asked you to work on this, did I?
This ticket was opened as a communication channel to help brainstorm and come to
an agreement about what to do and how to do it.
If you think we have such agreement then I guess it can be closed and once the
blocker are lifted we can open a new one.
I know I would have left it open so that once the blocker are lifted the
conversation can start again with the original context still present, but we all
have our ways to manage project so as you prefer :)
|
I didn't say you did but something I have definitely stated is issues in this repo are for issues with the pipeline. |
Sometime the CI pipeline fails due to a bug in the pipeline, an infrastructure issue or an outage in one of the system it depends (like the small outage that dist-git had in Fedora 2 days ago).
When this happens, if gating is enabled, the update will end up being blocked in bodhi because its tests failed. Currently the only way around this would be to "waive" the test results in waiverdb. However, this should be a rel-eng only action and is going a little bit against the idea of CI (since we would be waiving the results not because the tests failed but because we failed to run them).
The better solution, would be to have a way to re-trigger a pipeline run.
There is already a discussion that started on fedora-infra/bodhi#1779 to add a 'Re-run test' button to bodhi for taskotron tests. I believe we should try to come up with a solution that satisfies both taskotron and the Atomic CI pipeline.
My proposal on that PR was to have a dedicated service that would receive API calls and emit fedmsg message with the information needed to re-run the tests.
(Having it a separate service would allow integrating it in multiple places, such as bodhi and pagure)
What do you think of this idea?
Could you describe what information you would need in a fedmsg message to re-trigger a run? (Keeping in mind that bodhi does not know the commit hash corresponding to a build, so we may only be able to provide the combo repository/branch).
@AdamWill Could you also described what information you would like to have to re-trigger a test in taskotron?
Thanks :)
The text was updated successfully, but these errors were encountered: