Skip to content

RaphaelBut/cluster-version-operator

 
 

Repository files navigation

Cluster Version Operator (CVO)

Building and Publishing CVO

./hack/build-image.sh && REPO=<your personal repo (quay.io/ahbinavdahiya | docker.io/abhinavdahiya)> ./hack/push-image.sh
  1. This builds image locally and then pushes ${VERSION} and latest tags to ${REPO}/origin-cluster-version-operator.

  2. ${VERSION} encodes the Git commit used to build the images.

Building release image using local CVO

  1. Make sure you have oc binary from https://github.com/openshift/origin master as it requires adm release subcommand.

  2. Run the following command to create release-image at docker.io/abhinavdahiya/origin-release:latest:

oc adm release new -n origin \
    --from-image-stream=origin-v4.0 \
    --to-image-base=docker.io/abhinavdahiya/origin-cluster-version-operator:latest \
    --to-image docker.io/abhinavdahiya/origin-release:latest

Installing CVO and operators in cluster.

  1. Use CVO render to render all the manifests from release-payload to a directory. Refer the Using CVO to render the release-image locally section for more information.

  2. Create the operators from the manifests by using oc create -f <directory when CVO rendered manifests>.

Using CVO to render the release-image locally

  1. Run the following command to get render the release-payload contents to /tmp/cvo
podman run --rm -ti \
    -v /tmp/cvo:/tmp/cvo:z \
    <release image> \
        render \
        --output-dir=/tmp/cvo \
        --release-image="<release image>"

<release image> can be personal release image generated using this or Origin's release image like registry.ci.openshift.org/openshift/origin-release:v4.0.

Running CVO tests

# Run all unit tests
go test ./...

# Run integration tests against a cluster (creates content in a given namespace)
# Requires the CVO CRD to be installed.
export KUBECONFIG=<admin kubeconfig>
TEST_INTEGRATION=1 go test ./... -test.run=^TestIntegration

Contributing

Contributions welcome!

Documentation

The documentation around CVO is split between two code repositories i.e. enhancements/dev-guide/cluster-version-operator and cluster-version-operator/docs.

Here are some pointers to start with the documentation

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 97.2%
  • Python 2.2%
  • Other 0.6%