Skip to content
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

osc-staging: provide rebuild command. #714

Merged
merged 1 commit into from Mar 10, 2017

Conversation

@jberry-suse
Copy link
Contributor

jberry-suse commented Mar 8, 2017

Often packages will fail to build after becoming stuck or other false negative cases and need to have a rebuild triggered. The process can be tedious if several packages failed in various stagings.

For instance today, there are three Factory stagings that all had stuck packages, but otherwise built fine (E, F, and H). This is another part of the automation flow that I plan to add logic to try and be smart so it can be run automatically, but this is useful as it stands.

I have been keeping a list of stuck and flaky builds that could be used as a basis for the tool. Alternatively, plugging into statistics data should with simple flaky detection pattern should provide fairly decent automation to avoid stuck stagings that just need a package or to rebuilt.

For example the three stuck packages in Factory had the typical:

[31113s] qemu-system-x86_64: terminating on signal 15 from pid 21485


Job seems to be stuck here, killed. (after 28800 seconds of inactivity)
Often packages will fail to build after becoming stuck or other false
negative cases and need to have a rebuild triggered. The process can be
tedious if several packages failed in various stages.
@coveralls

This comment has been minimized.

Copy link

coveralls commented Mar 8, 2017

Coverage Status

Coverage decreased (-0.1%) to 44.425% when pulling 13b7ae9 on jberry-suse:rebuild-command into 19a37c0 on openSUSE:master.

@lnussel

This comment has been minimized.

Copy link
Member

lnussel commented Mar 9, 2017

maybe we should name it rebuild-broken? 'rebuild' suggests unconditional rebuild

@nilxam

This comment has been minimized.

Copy link
Contributor

nilxam commented Mar 9, 2017

sorry, I lost the point why not just use osc rebuildpac -f?

if it's about providing new feature to the automation flow, it should stop try to rebuild the package if that package failed to build few times ie. it's broken in real.

@jberry-suse

This comment has been minimized.

Copy link
Contributor Author

jberry-suse commented Mar 9, 2017

@lnussel Could do that, I was trying to be consistent with osc rebuild although it would be with -f. Probably makes sense to rename.

@nilxam Yes, it is not much different from osc rebuild -f. The one helpful difference is that it does subprojects so it includes :DVD on letter stagings. As noted I planned to plug it into the build stats and limits on retry attempts, but figured it was useful first step. Since it has the list of broken packages it can perform the necessary logic, but need to read build history and preferably statistics indicating flakiness. If we want to hold off until then like I was originally planning that's fine. I just found it helpful to run osc staging rebuild E F H on Factory as I do on Leap regularly.

@lnussel lnussel merged commit 0a3f07e into openSUSE:master Mar 10, 2017
1 check passed
1 check passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@jberry-suse jberry-suse deleted the jberry-suse:rebuild-command branch Mar 10, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.