Skip to content

Conversation

@markmc
Copy link
Contributor

@markmc markmc commented May 13, 2019

This is proof-of-concept showing how virt-operator could be adapted to work as an OpenShift ClusterOperator, and be included in a custom release payload:

  • The image-references from the input payload is used to construct an image stream with all of the images from the input payload
  • The virt-operator image is added to the image stream, along with all of the images listed in its image-references
  • oc adm release new is called to build a new payload from this image stream, and tag it into the ‘kni/release’ image stream
  • See prep_release.sh and release-payload.md for more details

Note: this builds on #401

markmc added 19 commits May 7, 2019 10:51
There's no straightforward way to get the installer pinned RHCOS
version from an installer binary or a release payload, so let's not
become reliant on this. We can easily pin dev-scripts to the correct
RHCOS image each time we pin to a new release payload.

Also, ultimately we need to get away from this way of caching a
pre-defined RHCOS image version - we instead need a way of caching
whatever version is driven by either openshift-install or machine
config upgrades.
Now that we can build and publish release payloads with our installer
fork, let's consume the installer the same way stock installer builds
are intended to be consumed - by extracting it from the release
payload.

Note - we use extract --command=openshift-install to avoid roundtrip
to tar.gz involved with using --tools.
Use mktemp --tmpdir so we use /tmp, remove the image-references file
from tmpdir when we're done with it, move the wait_for_tag() function,
and change wait_for_tag() to not wait for a specific image digest.
This is a manifest of all of the images referenced in this dir.
This will also 'oc adm release new' to change the manifests to the
images referenced by the release payload, and also will ensure that
'oc adm release mirror' will be able to change the manifests to point
at the mirrored images.
This asks it to create/update a ClusterOperator resource.
This takes an existing image, adds manifests, and adds the
io.openshift.release.operator label.
Allow passing a list of operators which we will then tag into the
image stream, and also tag all of the dependencies listed in their
manifests.
@markmc
Copy link
Contributor Author

markmc commented May 17, 2019

Closing this. I'm not proposing actually merging this, it was just a prototype

@markmc markmc closed this May 17, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant