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

Strengthen build-arch rebuild capabilities #566

Closed
jlebon opened this issue Jul 18, 2022 · 4 comments · Fixed by #1003
Closed

Strengthen build-arch rebuild capabilities #566

jlebon opened this issue Jul 18, 2022 · 4 comments · Fixed by #1003
Labels
enhancement New feature or request low_priority

Comments

@jlebon
Copy link
Member

jlebon commented Jul 18, 2022

Right now, if build-arch fails, one can mostly rerun it with the same parameters. There is one gotcha: if the failure happens at any point after the Archive step, the artifacts for the given build ID and arch will already exist.

We should strengthen the job so that it handles this window better.

@jlebon
Copy link
Member Author

jlebon commented Jul 18, 2022

One simple solution @dustymabe and I we came up with is to check upfront if the artifacts already exist, and if so just skip straight to the Sign Images step.

@jlebon
Copy link
Member Author

jlebon commented May 16, 2023

A temporary hack on this is to have a salvage-build job that we can run manually that just fetches the artifacts of a build, signs them, emits the compose repo import, and schedules the follow-up kola jobs.

@prestist prestist added the enhancement New feature or request label Jun 29, 2023
@prestist
Copy link
Contributor

This might be a bit complicated, for little gain; revisit with @jlebon; This #566 (comment) seems the most relevant.

@jschintag
Copy link
Contributor

One option is to have the steps that notifies the ostree repo to be a warning instead of a failure, saving us from having to run cloud and update tests manually for the build.

jlebon added a commit to jlebon/fedora-coreos-pipeline that referenced this issue Jun 17, 2024
Very often, our pipeline flakes after the final archiving stage, e.g. if
the fedora-messaging queue is down, or Robosignatory is backed up.

Ideally, as discussed in coreos#566, we could just rerun the job and have it
know to salvage the builds, but there's a lot of details there that we
need to get right. (And... it's probably not worth tackling if we're
eventually moving away from Jenkins anyway.)

For now at least, it's not hard to just have a separate job that reruns
those last final steps from the `build` and `build-arch` jobs so we can
salvage those builds.

You need to know what you're doing when using this job. It should only
be used when strictly necessary. It's often better to just do a new
build instead.

Fixes: coreos#566
jlebon added a commit to jlebon/fedora-coreos-pipeline that referenced this issue Jun 17, 2024
Very often, our pipeline flakes after the final archiving stage, e.g. if
the fedora-messaging queue is down, or Robosignatory is backed up.

Ideally, as discussed in coreos#566, we could just rerun the job and have it
know to salvage the builds, but there's a lot of details there that we
need to get right. (And... it's probably not worth tackling if we're
eventually moving away from Jenkins anyway.)

For now at least, it's not hard to just have a separate job that reruns
those last final steps from the `build` and `build-arch` jobs so we can
salvage those builds.

You need to know what you're doing when using this job. It should only
be used when strictly necessary. It's often better to just do a new
build instead.

Fixes: coreos#566
jlebon added a commit that referenced this issue Jun 17, 2024
Very often, our pipeline flakes after the final archiving stage, e.g. if
the fedora-messaging queue is down, or Robosignatory is backed up.

Ideally, as discussed in #566, we could just rerun the job and have it
know to salvage the builds, but there's a lot of details there that we
need to get right. (And... it's probably not worth tackling if we're
eventually moving away from Jenkins anyway.)

For now at least, it's not hard to just have a separate job that reruns
those last final steps from the `build` and `build-arch` jobs so we can
salvage those builds.

You need to know what you're doing when using this job. It should only
be used when strictly necessary. It's often better to just do a new
build instead.

Fixes: #566
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request low_priority
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants