build RHCOS as an OCI image#27779
Conversation
|
Skipping CI for Draft Pull Request. |
ac40a56 to
a8984d0
Compare
|
/retest |
c7c11df to
617891e
Compare
ed0a370 to
b217755
Compare
1b85152 to
2abe1a4
Compare
965c9cf to
72dba36
Compare
|
/assign cgwalters |
There was a problem hiding this comment.
I think since we know we have passwordless sudo enabled int the cosa container this could also just be a && sudo chgrp -Rf root ... or so attached to the previous RUN invocation?
But good to know we're squashing anyways.
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
3 similar comments
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/retest-required Please review the full test history for this PR and help us cut down flakes. |
|
/test build05-dry |
72dba36 to
23d4284
Compare
|
/approve |
|
/assign @bparees Context for approval: While setting up the PR builds, I was somewhat surprised to see that we were promoting and mirroring the |
|
approving removal of the mirroring config for this image, thanks for the explanation! /approve |
23d4284 to
83f07d2
Compare
|
@cheesesashimi: The following tests failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
|
@cheesesashimi Thank you for doing this and wiring it all together! The comments are immensely useful for understanding how this is pieced together. Let's see it in action! /lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: bparees, cgwalters, cheesesashimi, miabbott The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@cheesesashimi: Updated the following 5 configmaps:
DetailsIn response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
The introduction of new Prow periodic jobs (openshift/release#27779) means we have to keep the `prow-build.sh` and `prow-build-test-qemu.sh` scripts in sync, with regards to fetching the repo configs. This brings `prow-build.sh` in sync with the changes from openshift#796. Closes openshift#801
The introduction of new Prow periodic jobs (openshift/release#27779) means we have to keep the `prow-build.sh` and `prow-build-test-qemu.sh` scripts in sync, with regards to fetching the repo configs. This brings `prow-build.sh` in sync with the changes from openshift#796. Closes openshift#801
The introduction of new Prow periodic jobs (openshift/release#27779) means we have to keep the `prow-build.sh` and `prow-build-test-qemu.sh` scripts in sync, with regards to fetching the repo configs. This brings `prow-build.sh` in sync with the changes from openshift#796. Closes openshift#801
The introduction of new Prow periodic jobs (openshift/release#27779) means we have to keep the `prow-build.sh` and `prow-build-test-qemu.sh` scripts in sync, with regards to fetching the repo configs. This brings `prow-build.sh` in sync with the changes from openshift#796. Closes openshift#801
This PR enables us to build RHCOS as a container image and take advantage of OpenShift CI's container-based workflow.
There are two key things which make this possible:
oci-archivewhich allows one to write a Containerfile which points to an OCI archive on disk, e.g.,FROM oci-archive:/path/to/oci/archive.How this works is:
cosa-build). Naturally, this OCI archive baked into another image is not very useful.cosa-buildimage and placed someplace where we can easily import it (cosa-oci-archive)cosa-oci-archiveimage as an input tomachine-os-oci-context. This reads the OCI image from the build context and uses it to build a new image. Since all we do isFROM oci-archive:/path/to/oci/archive, this performs a very basic image build and pushes the final image to the ephemeral CI ImageStream for further consumption.cosa-buildimage because it has the full COSA build context contained within it. However, we can now shard the tests, which allows the suite to run concurrently and offers additional control over which tests should be executed / retried / etc.For now, the periodic tests are duplicates of the PR builds and is configured to push images to the
rhcos-develnamespace, whereas PR builds will not produce an artifact. Additionally, it was discovered that we were unintentionally mirroring thebuild-test-qemu-imgvia thecore-services/image-mirroring/openshift/mapping_origin_4_11file. A future TODO is to enable the PR builds to layer OS content on top of the nightly-built images which should dramatically reduce the total build / test time for PRs. This would likely require additional work within COSA to facilitate.A more complete braindump of how this works as well as caveats / pitfalls encountered along the way is in progress here: openshift/os#780