che-operator/olm
Anatoliy Bazko f7a4e22b2e Update nightly olm files
Signed-off-by: Anatoliy Bazko <abazko@redhat.com>
2020-05-15 18:20:13 +03:00
..
eclipse-che-preview-kubernetes Update nightly olm files 2020-05-15 18:20:13 +03:00
eclipse-che-preview-openshift Update nightly olm files 2020-05-15 18:20:13 +03:00
README.md fix: Check identity providers for oauth instead of check amount users. (#248) 2020-05-15 11:43:58 +03:00
addDigests.sh CRW-579 don't include dupe entries; if not quiet, echo contents of digests-mapping.txt; add --tls-verify=false when doing skopeo inspect (#213) 2020-03-31 09:11:27 +03:00
buildDigestMap.sh CRW-579 don't include dupe entries; if not quiet, echo contents of digests-mapping.txt; add --tls-verify=false when doing skopeo inspect (#213) 2020-03-31 09:11:27 +03:00
check-yq.sh CRW-579 add three new scripts for adding digests, building map of digests in registries, and introspecting containers (including scratch ones) to extract files (#202) 2020-03-19 18:53:51 +02:00
docker-run.sh Don't allow installing Che with Openshift Oauth when no OAuth user exist (#74) 2019-09-02 18:47:30 +02:00
dockerContainerExtract.sh CRW-563 improve generation of digests from tags in registries and operator (#206) 2020-03-26 10:43:12 +02:00
olm.sh Remove catalogsource CRD olm 2020-05-06 10:38:29 +02:00
prepare-community-operators-update.sh Release 7.8.0 (#163) 2020-02-03 15:47:48 +02:00
push-olm-files-to-quay.sh Improve scripts for local testing installation che-operator via OLM. 2020-02-06 15:36:29 +02:00
release-olm-files.sh Update release files 2020-05-15 17:37:14 +03:00
testCSV.sh Improve scripts for local testing installation che-operator via OLM. 2020-02-06 15:36:29 +02:00
testCatalogSource.sh add logs for debug to tests and update olm version 2020-05-13 14:13:29 +02:00
testUpdate.sh Implement OLM operator tests on PRs (#177) 2020-03-02 14:57:50 +02:00
update-cr-crd-files.sh Add script to update cr/crd files (#180) 2020-02-26 11:15:14 +02:00
update-nightly-olm-files.sh Update release files 2020-05-15 17:37:14 +03:00

README.md

Pre-Requisites

OLM packages scripts are using some required dependencies that need to be installed

WARNING: Please make sure to use the precise v0.10.0 version of the operator-sdk. If you use a more recent version, you might generate a CRD that is not compatible with Kubernetes 1.11 and Openshift 3.11 (see issue https://github.com/eclipse/che/issues/15396).

If these dependencies are not installed, docker-run.sh can be used as a container bootstrap to run a given script with the appropriate dependencies.

Example : $ docker-run.sh update-nightly-olm-files.sh

Make new changes to OLM artifacts

Every change needs to be done in a new OLM artifact as previous artifacts are frozen.

A script is generating new folders/files that can be edited.

In olm folder

  • If all dependencies are installed on the system:
$ update-nightly-olm-files.sh
  • To use a docker environment
$ docker-run.sh update-nightly-olm-files.sh

Then the changes can be applied in the newly created CSV files.

Local testing che-operator development version using OLM

To test a che-operator with OLM you need to have an application registry. You can register on the quay.io and use application registry from this service. Build your custom che-operator image and push it to the image registry(you also can use quay.io). Change in the deploy/operator.yaml operator image from official to development.

Generate new nightly olm bundle packages:

$ ./update-nightly-olm-files.sh

Olm bundle packages will be generated in the folders olm/eclipse-che-preview-${platform}.

Push che-operator bundles to your application registry:

$ export QUAY_USERNAME=${username} && \
export QUAY_PASSWORD=${password} && \
export APPLICATION_REGISTRY=${application_registry_namespace} && \
./push-olm-files-to-quay.sh

Go to the quay.io and use ui(tab Settings) to make your application public. Start minikube(or CRC) and after that launch test script in the olm folder:

$ export APPLICATION_REGISTRY=${application_registry_namespace} && ./testCSV.sh ${platform} ${package_version} ${optional-namespace}

Where are:

  • platform - 'openshift' or 'kubernetes'
  • package_version - your generated che-operator package version(for example: 7.8.0 or 9.9.9-nightly.1562083645)
  • optional-namespace - kubernetes namespace to deploy che-operator. Optional parameter, by default operator will be deployed to the namespace eclipse-che-preview-test

To test che-operator with OLM files without push to a related Quay.io application, we can build a required docker image of a dedicated catalog, in order to install directly through a CatalogSource. To test this options start minikube and after that launch test script in the olm folder:

$ ./testCatalogSource.sh {platform} ${channel} ${namespace}

This scripts should install che-operator using OLM and check that the Che server was deployed.