Olm bundles for stable channel (#690)

* Create and use stable channel for OLM bundles.

Signed-off-by: Oleksandr Andriienko <oandriie@redhat.com>
pull/709/head
Oleksandr Andriienko 2021-03-09 16:34:04 +02:00 committed by GitHub
parent bd60ac5e18
commit 36edfbe887
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
59 changed files with 8873 additions and 726 deletions

View File

@ -58,10 +58,10 @@ installOperatorSDK() {
}
checkNightlyOlmBundle() {
local CSV_FILE_KUBERNETES="deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml"
local CSV_FILE_OPENSHIFT="deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml"
local CRD_FILE_KUBERNETES="deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/org_v1_che_crd.yaml"
local CRD_FILE_OPENSHIFT="deploy/olm-catalog/eclipse-che-preview-openshift/manifests/org_v1_che_crd.yaml"
local CSV_FILE_KUBERNETES="deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml"
local CSV_FILE_OPENSHIFT="deploy/olm-catalog/nightly/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml"
local CRD_FILE_KUBERNETES="deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/manifests/org_v1_che_crd.yaml"
local CRD_FILE_OPENSHIFT="deploy/olm-catalog/nightly/eclipse-che-preview-openshift/manifests/org_v1_che_crd.yaml"
export NO_DATE_UPDATE="true"
export NO_INCREMENT="true"

23
.github/bin/common.sh vendored
View File

@ -52,7 +52,7 @@ initDefaults() {
initOpenShiftDefaults() {
export OAUTH="true"
export OPENSHIFT_NIGHTLY_CSV_FILE="${OPERATOR_REPO}/deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml"
export OPENSHIFT_NIGHTLY_CSV_FILE="${OPERATOR_REPO}/deploy/olm-catalog/nightly/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml"
}
initLatestTemplates() {
@ -60,20 +60,19 @@ initLatestTemplates() {
}
initStableTemplates() {
local platform=$1
local channel=$2
# Get Stable and new release versions from olm files openshift.
export packageName=eclipse-che-preview-${platform}
export platformPath=${OPERATOR_REPO}/olm/${packageName}
export packageFolderPath="${platformPath}/deploy/olm-catalog/${packageName}"
export packageFilePath="${packageFolderPath}/${packageName}.package.yaml"
versions=$(curl \
-H "Authorization: bearer ${GITHUB_TOKEN}" \
-X POST -H "Content-Type: application/json" --data \
'{"query": "{ repository(owner: \"eclipse\", name: \"che-operator\") { refs(refPrefix: \"refs/tags/\", last: 2, orderBy: {field: TAG_COMMIT_DATE, direction: ASC}) { edges { node { name } } } } }" } ' \
https://api.github.com/graphql)
export lastCSV=$(yq -r ".channels[] | select(.name == \"${channel}\") | .currentCSV" "${packageFilePath}")
export LAST_PACKAGE_VERSION=$(echo "${lastCSV}" | sed -e "s/${packageName}.v//")
echo "${versions[*]}"
export previousCSV=$(sed -n 's|^ *replaces: *\([^ ]*\) *|\1|p' "${packageFolderPath}/${LAST_PACKAGE_VERSION}/${packageName}.v${LAST_PACKAGE_VERSION}.clusterserviceversion.yaml")
export PREVIOUS_PACKAGE_VERSION=$(echo "${previousCSV}" | sed -e "s/${packageName}.v//")
LAST_PACKAGE_VERSION=$(echo "${versions[@]}" | jq '.data.repository.refs.edges[1].node.name | sub("\""; "")' | tr -d '"')
export LAST_PACKAGE_VERSION
PREVIOUS_PACKAGE_VERSION=$(echo "${versions[@]}" | jq '.data.repository.refs.edges[0].node.name | sub("\""; "")' | tr -d '"')
export PREVIOUS_PACKAGE_VERSION
export lastOperatorPath=${OPERATOR_REPO}/tmp/${LAST_PACKAGE_VERSION}
export previousOperatorPath=${OPERATOR_REPO}/tmp/${PREVIOUS_PACKAGE_VERSION}

View File

@ -13,6 +13,10 @@ set -x
# Get absolute path for root repo directory from github actions context: https://docs.github.com/en/free-pro-team@latest/actions/reference/context-and-expression-syntax-for-github-actions
export OPERATOR_REPO="${GITHUB_WORKSPACE}"
if [ -z "${OPERATOR_REPO}" ]; then
SCRIPT=$(readlink -f "${BASH_SOURCE[0]}")
OPERATOR_REPO=$(dirname "$(dirname "$(dirname "$(dirname "$SCRIPT")")")")
fi
source "${OPERATOR_REPO}"/.github/bin/common.sh
# Stop execution on any error
@ -20,7 +24,7 @@ trap "catchFinish" EXIT SIGINT
runTest() {
export OPERATOR_IMAGE="${IMAGE_REGISTRY_HOST}/operator:test"
source "${OPERATOR_REPO}"/olm/testCatalogSource.sh "kubernetes" "nightly" ${NAMESPACE} "catalog"
source "${OPERATOR_REPO}"/olm/testCatalogSource.sh "kubernetes" "nightly" "${NAMESPACE}"
startNewWorkspace
waitWorkspaceStart
}

View File

@ -15,6 +15,10 @@ set -x
# Get absolute path for root repo directory from github actions context: https://docs.github.com/en/free-pro-team@latest/actions/reference/context-and-expression-syntax-for-github-actions
export OPERATOR_REPO="${GITHUB_WORKSPACE}"
if [ -z "${OPERATOR_REPO}" ]; then
SCRIPT=$(readlink -f "${BASH_SOURCE[0]}")
OPERATOR_REPO=$(dirname "$(dirname "$(dirname "$(dirname "$SCRIPT")")")")
fi
source "${OPERATOR_REPO}"/.github/bin/common.sh
# Stop execution on any error

View File

@ -1,61 +0,0 @@
#!/bin/bash
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
set -ex
# install yq
pip3 install wheel
pip3 install --upgrade setuptools
pip3 install yq
# Make python3 installed modules "visible"
export PATH=$HOME/.local/bin:$PATH
export IMAGE_REGISTRY_USERNAME=eclipse
export IMAGE_REGISTRY=quay.io
export ROOT_PROJECT_DIR="${GITHUB_WORKSPACE}"
export BASE_DIR="${ROOT_PROJECT_DIR}/olm"
for platform in 'kubernetes' 'openshift'
do
export OPM_BUNDLE_DIR="${ROOT_PROJECT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}"
export OPM_BUNDLE_MANIFESTS_DIR="${OPM_BUNDLE_DIR}/manifests"
export CSV="${OPM_BUNDLE_MANIFESTS_DIR}/che-operator.clusterserviceversion.yaml"
export nightlyVersion=$(yq -r ".spec.version" "${CSV}")
export CATALOG_BUNDLE_IMAGE_NAME_LOCAL="${IMAGE_REGISTRY}/${IMAGE_REGISTRY_USERNAME}/eclipse-che-${platform}-opm-bundles:${nightlyVersion}"
export CATALOG_IMAGENAME="${IMAGE_REGISTRY}/${IMAGE_REGISTRY_USERNAME}/eclipse-che-${platform}-opm-catalog:preview"
source "${ROOT_PROJECT_DIR}/olm/olm.sh" "${platform}" "${nightlyVersion}" "che"
source "${ROOT_PROJECT_DIR}/olm/incrementNightlyBundles.sh"
installOPM
${OPM_BINARY} version
export incrementPart=$(getNightlyVersionIncrementPart "${nightlyVersion}")
echo "[INFO] Nightly increment version ${incrementPart}"
export CHECK_NIGHTLY_TAG=$(skopeo inspect docker://${IMAGE_REGISTRY}/${IMAGE_REGISTRY_USERNAME}/eclipse-che-${platform}-opm-bundles:${nightlyVersion} 2>/dev/null | jq -r ".RepoTags[]|select(. == \"${nightlyVersion}\")")
if [ -z "$CHECK_NIGHTLY_TAG" ]
then
buildBundleImage "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}"
if [ "${incrementPart}" == 0 ]; then
echo "[INFO] Build very first bundle."
buildCatalogImage "${CATALOG_IMAGENAME}" "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}"
else
buildCatalogImage "${CATALOG_IMAGENAME}" "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" "docker" "${CATALOG_IMAGENAME}"
fi
else
echo "[INFO] Bundle already present in the catalog source"
fi
done

View File

@ -1,5 +1,5 @@
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# Copyright (c) 2012-2021 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
@ -9,7 +9,7 @@
# Contributors:
# Red Hat, Inc. - initial API and implementation
#
name: Push catalog and bundle images.
name: Build and push catalog and bundle images.
on:
schedule:
- cron: '0 21 * * *'
@ -17,13 +17,16 @@ on:
- master
jobs:
build:
build-and-push-images:
name: Build
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v1
- name: Install yq
run: sudo pip install yq
- name: Docker login
uses: azure/docker-login@v1
with:
@ -31,5 +34,10 @@ jobs:
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: Build catalog source and opm bundle images and push
run: "${GITHUB_WORKSPACE}/.github/bin/push-catalog-and-bundle-images.sh"
- name: Build catalog source and opm bundle images and push to registry
run: >
${GITHUB_WORKSPACE}/olm/buildAndPushBundleImages.sh -c 'nightly' -p 'openshift' &&
${GITHUB_WORKSPACE}/olm/buildAndPushBundleImages.sh -c 'nightly' -p 'kubernetes'
env:
IMAGE_REGISTRY_HOST: quay.io
IMAGE_REGISTRY_USER_NAME: eclipse

View File

@ -0,0 +1,44 @@
#
# Copyright (c) 2012-2021 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
name: Migrate manifest format packages to the OLM bundles
# on: [push]
on:
schedule:
- cron: '35 18 * * *'
jobs:
build:
name: Bundle migration
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v1
- name: TIME
run: date +"%H:%M"
- name: Install yq
run: sudo pip install yq
- name: Docker login
uses: azure/docker-login@v1
with:
login-server: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: Migrate manifest format packages to the OLM bundles
run: "${GITHUB_WORKSPACE}/olm/buildOLMBundlesFromReleaseManifestFiles.sh"
env:
IMAGE_REGISTRY_HOST: quay.io
IMAGE_REGISTRY_USER_NAME: eclipse

View File

@ -37,6 +37,8 @@ jobs:
run: bash <(curl -sL https://www.eclipse.org/che/chectl/) --channel=stable
- name: Tests
run: /bin/bash .github/bin/minikube/test-operator-update.sh
env:
"GITHUB_TOKEN": "${{ secrets.GITHUB_TOKEN }}"
# Run this step even the previous step fail
- uses: actions/upload-artifact@v2
if: ${{ always() }}

View File

@ -53,6 +53,8 @@ jobs:
run: |
eval $(minishift oc-env)
/bin/bash .github/bin/minishift/test-operator-update.sh
env:
"GITHUB_TOKEN": "${{ secrets.GITHUB_TOKEN }}"
# Run this step even the previous step fail
- uses: actions/upload-artifact@v2
if: ${{ always() }}

View File

@ -16,7 +16,7 @@ on:
branches:
- master
paths:
- 'olm/eclipse-che-preview-*/deploy/olm-catalog/eclipse-che-preview-*/eclipse-che-preview-*.package.yaml'
- 'deploy/olm-catalog/stable/eclipse-che-preview-*/manifests/che-operator.clusterserviceversion.yaml'
jobs:
build:
@ -34,7 +34,7 @@ jobs:
set -e
# if not run manually, need to compute che docs version from latest released CSV
if [[ "${{ github.event.inputs.version }}" == "" ]] || [[ "${{ github.event.inputs.version }}" == "7.y.z" ]]; then
chedocsVersion=$(yq -r '.channels[].currentCSV' olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml | sed -e "s#eclipse-che-preview-openshift.v##")
chedocsVersion=$(yq -r '.spec.version' deploy/olm-catalog/stable/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml")
else
chedocsVersion="${{ github.event.inputs.version }}"
fi

View File

@ -16,7 +16,7 @@ on:
branches:
- master
paths:
- 'olm/eclipse-che-preview-*/deploy/olm-catalog/eclipse-che-preview-*/eclipse-che-preview-*.package.yaml'
- 'deploy/olm-catalog/stable/eclipse-che-preview-*/manifests/che-operator.clusterserviceversion.yaml'
jobs:
build:
@ -34,7 +34,7 @@ jobs:
set -e
# if not run manually, need to compute chectl version from latest released CSV
if [[ "${{ github.event.inputs.version }}" == "" ]] || [[ "${{ github.event.inputs.version }}" == "7.y.z" ]]; then
chectlVersion=$(yq -r '.channels[].currentCSV' olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml | sed -e "s#eclipse-che-preview-openshift.v##")
chectlVersion=$(yq -r '.spec.version' deploy/olm-catalog/stable/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml")
else
chectlVersion="${{ github.event.inputs.version }}"
fi

View File

@ -12,7 +12,7 @@ on:
branches:
- master
paths:
- 'olm/eclipse-che-preview-*/deploy/olm-catalog/eclipse-che-preview-*/eclipse-che-preview-*.package.yaml'
- 'deploy/olm-catalog/stable/eclipse-che-preview-*/manifests/che-operator.clusterserviceversion.yaml'
jobs:
build:

View File

@ -30,6 +30,7 @@ jobs:
python -m pip install --upgrade pip
pip install operator-courier==2.1.7
pip install yq
pip install semver
# get base32 util from che-release project
wget https://raw.githubusercontent.com/eclipse/che-release/master/utils/base32
# copy base32 python-based helper script into dir that's accessed from PATH (so it's accessible to this and other called scripts)
@ -38,6 +39,9 @@ jobs:
#remove base32 from current directory to avoid it being commited during release
rm $(pwd)/base32
- name: Release operator
env:
IMAGE_REGISTRY_HOST: quay.io
IMAGE_REGISTRY_USER_NAME: eclipse
run: |
CHE_VERSION=${{ github.event.inputs.version }}
echo "CHE_VERSION=${CHE_VERSION}"
@ -83,7 +87,7 @@ jobs:
# https://quay.io/application/eclipse-che-operator-kubernetes/eclipse-che-preview-kubernetes?tab=releases and
# https://quay.io/application/eclipse-che-operator-openshift/eclipse-che-preview-openshift?tab=releases
git checkout ${CHE_VERSION}-release
./make-release.sh ${CHE_VERSION} --push-olm-files
./make-release.sh ${CHE_VERSION} --push-olm-bundles
# perform extra checkouts to ensure branches exist locally
git checkout ${BRANCH}

6
.gitignore vendored
View File

@ -109,7 +109,9 @@ tags
build/
olm/generated
deploy/olm-catalog/eclipse-che-preview-kubernetes/generated
deploy/olm-catalog/eclipse-che-preview-openshift/generated
deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/generated
deploy/olm-catalog/nightly/eclipse-che-preview-openshift/generated
deploy/olm-catalog/stable/eclipse-che-preview-kubernetes/generated
deploy/olm-catalog/stable/eclipse-che-preview-openshift/generated
# End of https://www.gitignore.io/api/go,vim,emacs,visualstudiocode

28
.vscode/launch.json vendored
View File

@ -21,7 +21,6 @@
"kubernetes",
"stable",
"che",
"Marketplace"
]
},
{
@ -34,7 +33,6 @@
"kubernetes",
"nightly",
"che",
"catalog",
"my_catalog"
]
},
@ -47,8 +45,7 @@
"args": [
"openshift",
"nightly",
"che",
"catalog"
"che"
]
},
{
@ -60,8 +57,7 @@
"args": [
"openshift",
"stable",
"che",
"Marketplace"
"che"
]
},
{
@ -115,28 +111,34 @@
{
"type": "bashdb",
"request": "launch",
"name": "Bash-Debug (buildAndPushInitialBundle.sh) kubernetes",
"name": "Bash-Debug (buildAndPushBundleImages.sh) Kubernetes platfrom",
"cwd": "${workspaceFolder}/olm",
"program": "${workspaceFolder}/olm/buildAndPushInitialBundle.sh",
"program": "./buildAndPushBundleImages.sh",
"args": [
"kubernetes"
"-p",
"kubernetes",
"-c",
"nightly"
]
},
{
"type": "bashdb",
"request": "launch",
"name": "Bash-Debug (buildAndPushInitialBundle.sh) openshift",
"name": "Bash-Debug (buildAndPushBundleImages.sh) Openshift platform",
"cwd": "${workspaceFolder}/olm",
"program": "${workspaceFolder}/olm/buildAndPushInitialBundle.sh",
"program": "./buildAndPushBundleImages.sh",
"args": [
"openshift"
"-p",
"openshift",
"-c",
"nightly"
]
},
{
"type": "bashdb",
"request": "launch",
"name": "Bash-Debug (simplest configuration)",
"program": "${file}"
"program": "${file}",
},
{
"name": "Launch Current Test *.go File",

View File

@ -93,7 +93,7 @@ $ olm/update-nightly-bundle.sh
3. Build catalog source and bundle images:
```bash
$ olm/buildAndPushInitialBundle.sh <openshift|kubernetes>
$ olm/buildAndPushBundleImages.sh -p <openshift|kubernetes> -c "nightly"
```
4. Create a custom catalog source yaml (update strategy is workaround for https://github.com/operator-framework/operator-lifecycle-manager/issues/903):

View File

@ -1,3 +0,0 @@
role-paths: [ "deploy/olm-catalog/eclipse-che-preview-kubernetes/generated/roles/role.yaml", "deploy/olm-catalog/eclipse-che-preview-kubernetes/generated/roles/cluster_role.yaml", "deploy/olm-catalog/eclipse-che-preview-kubernetes/generated/roles/namespaces_cluster_role.yaml" ]
operator-path: deploy/operator.yaml
crd-cr-paths: ["deploy/crds/org_v1_che_crd.yaml"]

View File

@ -14,9 +14,9 @@ BASE_DIR=$(cd "$(dirname "$0")" && pwd)
rm -Rf "${BASE_DIR}/generated/roles"
mkdir -p "${BASE_DIR}/generated/roles"
cp "${BASE_DIR}/../../role.yaml" "${BASE_DIR}/generated/roles/role.yaml"
cp "${BASE_DIR}/../../cluster_role.yaml" "${BASE_DIR}/generated/roles/cluster_role.yaml"
cp "${BASE_DIR}/../../namespaces_cluster_role.yaml" "${BASE_DIR}/generated/roles/namespaces_cluster_role.yaml"
cp "${BASE_DIR}/../../../role.yaml" "${BASE_DIR}/generated/roles/role.yaml"
cp "${BASE_DIR}/../../../cluster_role.yaml" "${BASE_DIR}/generated/roles/cluster_role.yaml"
cp "${BASE_DIR}/../../../namespaces_cluster_role.yaml" "${BASE_DIR}/generated/roles/namespaces_cluster_role.yaml"
for role in ${BASE_DIR}/generated/roles/*.yaml; do
index=0

View File

@ -0,0 +1,3 @@
role-paths: [ "deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/generated/roles/role.yaml", "deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/generated/roles/cluster_role.yaml", "deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/generated/roles/namespaces_cluster_role.yaml" ]
operator-path: deploy/operator.yaml
crd-cr-paths: ["deploy/crds/org_v1_che_crd.yaml"]

View File

@ -76,13 +76,13 @@ metadata:
categories: Developer Tools
certified: "false"
containerImage: quay.io/eclipse/che-operator:nightly
createdAt: "2021-03-04T16:28:02Z"
createdAt: "2021-03-05T16:30:06Z"
description: A Kube-native development solution that delivers portable and collaborative
developer workspaces.
operatorframework.io/suggested-namespace: eclipse-che
repository: https://github.com/eclipse/che-operator
support: Eclipse Foundation
name: eclipse-che-preview-kubernetes.v7.28.0-120.nightly
name: eclipse-che-preview-kubernetes.v7.27.0-122.nightly
namespace: placeholder
spec:
apiservicedefinitions: {}
@ -719,4 +719,4 @@ spec:
maturity: stable
provider:
name: Eclipse Foundation
version: 7.28.0-120.nightly
version: 7.27.0-122.nightly

View File

@ -0,0 +1,18 @@
#!/bin/bash
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
BASE_DIR=$(cd "$(dirname "$0")" && pwd)
rm -Rf "${BASE_DIR}/generated/roles"
mkdir -p "${BASE_DIR}/generated/roles"
cp "${BASE_DIR}/../../../role.yaml" "${BASE_DIR}/generated/roles/role.yaml"
cp "${BASE_DIR}/../../../cluster_role.yaml" "${BASE_DIR}/generated/roles/cluster_role.yaml"
cp "${BASE_DIR}/../../../namespaces_cluster_role.yaml" "${BASE_DIR}/generated/roles/namespaces_cluster_role.yaml"

View File

@ -0,0 +1,11 @@
FROM scratch
LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
LABEL operators.operatorframework.io.bundle.package.v1=eclipse-che-preview-openshift
LABEL operators.operatorframework.io.bundle.channels.v1=nightly
LABEL operators.operatorframework.io.bundle.channel.default.v1=nightly
COPY manifests /manifests/
COPY metadata /metadata/

View File

@ -0,0 +1,3 @@
operator-path: deploy/operator.yaml
role-paths: [ "deploy/olm-catalog/nightly/eclipse-che-preview-openshift/generated/roles/role.yaml", "deploy/olm-catalog/nightly/eclipse-che-preview-openshift/generated/roles/cluster_role.yaml", "deploy/olm-catalog/nightly/eclipse-che-preview-openshift/generated/roles/namespaces_cluster_role.yaml"]
crd-cr-paths: ["deploy/crds/org_v1_che_crd.yaml"]

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,867 @@
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: checlusters.org.eclipse.che
spec:
group: org.eclipse.che
names:
kind: CheCluster
listKind: CheClusterList
plural: checlusters
singular: checluster
preserveUnknownFields: false
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: The `CheCluster` custom resource allows defining and managing a
Che server installation
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: Desired configuration of the Che installation. Based on these
settings, the Operator automatically creates and maintains several ConfigMaps
that will contain the appropriate environment variables the various components
of the Che installation. These generated ConfigMaps must NOT be updated
manually.
properties:
auth:
description: Configuration settings related to the Authentication used
by the Che installation.
properties:
externalIdentityProvider:
description: 'Instructs the Operator on whether or not to deploy
a dedicated Identity Provider (Keycloak or RH SSO instance). Instructs
the Operator on whether to deploy a dedicated Identity Provider
(Keycloak or RH-SSO instance). By default, a dedicated Identity
Provider server is deployed as part of the Che installation. When
`externalIdentityProvider` is `true`, no dedicated identity provider
will be deployed by the Operator and you will need to provide
details about the external identity provider you are about to
use. See also all the other fields starting with: `identityProvider`.'
type: boolean
identityProviderAdminUserName:
description: Overrides the name of the Identity Provider administrator
user. Defaults to `admin`.
type: string
identityProviderClientId:
description: Name of a Identity provider, Keycloak or RH-SSO, `client-id`
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field suffixed with `-public`.
type: string
identityProviderContainerResources:
description: Identity provider container custom settings.
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
identityProviderImage:
description: Overrides the container image used in the Identity
Provider, Keycloak or RH-SSO, deployment. This includes the image
tag. Omit it or leave it empty to use the default container image
provided by the Operator.
type: string
identityProviderImagePullPolicy:
description: Overrides the image pull policy used in the Identity
Provider, Keycloak or RH-SSO, deployment. Default value is `Always`
for `nightly` or `latest` images, and `IfNotPresent` in other
cases.
type: string
identityProviderIngress:
description: Ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderPassword:
description: Overrides the password of Keycloak administrator user.
Override this when an external Identity Provider is in use. See
the `externalIdentityProvider` field. When omitted or left blank,
it is set to an auto-generated password.
type: string
identityProviderPostgresPassword:
description: Password for a Identity Provider, Keycloak or RH-SSO,
to connect to the database. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to an auto-generated password.
type: string
identityProviderPostgresSecret:
description: 'The secret that contains `password` for the Identity
Provider, Keycloak or RH-SSO, to connect to the database. When
the secret is defined, the `identityProviderPostgresPassword`
is ignored. When the value is omitted or left blank, the one of
following scenarios applies: 1. `identityProviderPostgresPassword`
is defined, then it will be used to connect to the database. 2.
`identityProviderPostgresPassword` is not defined, then a new
secret with the name `che-identity-postgres-secret` will be created
with an auto-generated value for `password`.'
type: string
identityProviderRealm:
description: Name of a Identity provider, Keycloak or RH-SSO, realm
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field.
type: string
identityProviderRoute:
description: Route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderSecret:
description: 'The secret that contains `user` and `password` for
Identity Provider. When the secret is defined, the `identityProviderAdminUserName`
and `identityProviderPassword` are ignored. When the value is
omitted or left blank, the one of following scenarios applies:
1. `identityProviderAdminUserName` and `identityProviderPassword`
are defined, then they will be used. 2. `identityProviderAdminUserName`
or `identityProviderPassword` are not defined, then a new secret
with the name `che-identity-secret` will be created with default
value `admin` for `user` and with an auto-generated value for
`password`.'
type: string
identityProviderURL:
description: Public URL of the Identity Provider server (Keycloak
/ RH-SSO server). Set this ONLY when a use of an external Identity
Provider is needed. See the `externalIdentityProvider` field.
By default, this will be automatically calculated and set by the
Operator.
type: string
initialOpenShiftOAuthUser:
description: For operating with the OpenShift OAuth authentication,
create a new user account since the kubeadmin can not be used.
If the value is true, then a new OpenShift OAuth user will be
created for the HTPasswd identity provider. If the value is false
and the user has already been created, then it will be removed.
If value is an empty, then do nothing. The user's credentials
are stored in the `openshift-oauth-user-credentials` secret by
Operator. Note that this solution is Openshift 4 platform-specific.
type: boolean
oAuthClientName:
description: Name of the OpenShift `OAuthClient` resource used to
setup identity federation on the OpenShift side. Auto-generated
when left blank. See also the `OpenShiftoAuth` field.
type: string
oAuthSecret:
description: Name of the secret set in the OpenShift `OAuthClient`
resource used to setup identity federation on the OpenShift side.
Auto-generated when left blank. See also the `OAuthClientName`
field.
type: string
openShiftoAuth:
description: 'Enables the integration of the identity provider (Keycloak
/ RHSSO) with OpenShift OAuth. Empty value on OpenShift by default.
This will allow users to directly login with their OpenShift user
through the OpenShift login, and have their workspaces created
under personal OpenShift namespaces. WARNING: the `kubeadmin`
user is NOT supported, and logging through it will NOT allow accessing
the Che Dashboard.'
type: boolean
updateAdminPassword:
description: Forces the default `admin` Che user to update password
on first login. Defaults to `false`.
type: boolean
type: object
database:
description: Configuration settings related to the database used by
the Che installation.
properties:
chePostgresContainerResources:
description: PostgreSQL container custom settings
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
chePostgresDb:
description: PostgreSQL database name that the Che server uses to
connect to the DB. Defaults to `dbche`.
type: string
chePostgresHostName:
description: PostgreSQL Database host name that the Che server uses
to connect to. Defaults is `postgres`. Override this value ONLY
when using an external database. See field `externalDb`. In the
default case it will be automatically set by the Operator.
type: string
chePostgresPassword:
description: PostgreSQL password that the Che server uses to connect
to the DB. When omitted or left blank, it will be set to an automatically
generated value.
type: string
chePostgresPort:
description: PostgreSQL Database port that the Che server uses to
connect to. Defaults to 5432. Override this value ONLY when using
an external database. See field `externalDb`. In the default case
it will be automatically set by the Operator.
type: string
chePostgresSecret:
description: 'The secret that contains PostgreSQL`user` and `password`
that the Che server uses to connect to the DB. When the secret
is defined, the `chePostgresUser` and `chePostgresPassword` are
ignored. When the value is omitted or left blank, the one of following
scenarios applies: 1. `chePostgresUser` and `chePostgresPassword`
are defined, then they will be used to connect to the DB. 2. `chePostgresUser`
or `chePostgresPassword` are not defined, then a new secret with
the name `che-postgres-secret` will be created with default value
of `pgche` for `user` and with an auto-generated value for `password`.'
type: string
chePostgresUser:
description: PostgreSQL user that the Che server uses to connect
to the DB. Defaults to `pgche`.
type: string
externalDb:
description: 'Instructs the Operator on whether to deploy a dedicated
database. By default, a dedicated PostgreSQL database is deployed
as part of the Che installation. When `externalDb` is `true`,
no dedicated database will be deployed by the Operator and you
will need to provide connection details to the external DB you
are about to use. See also all the fields starting with: `chePostgres`.'
type: boolean
postgresImage:
description: Overrides the container image used in the PostgreSQL
database deployment. This includes the image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
postgresImagePullPolicy:
description: Overrides the image pull policy used in the PostgreSQL
database deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
type: object
devWorkspace:
description: Dev Workspace operator configuration
properties:
enable:
description: Deploys the DevWorkspace Operator in the cluster. Does
nothing when a matching version of the Operator is already installed.
Fails when a non-matching version of the Operator is already installed.
type: boolean
type: object
imagePuller:
description: Kubernetes Image Puller configuration
properties:
enable:
description: "Install and configure the Community Supported Kubernetes\
\ Image Puller Operator. When set to `true` and no spec is provided,\
\ it will create a default KubernetesImagePuller object to be\
\ managed by the Operator. When set to `false`, the KubernetesImagePuller\
\ object will be deleted, and the Operator will be uninstalled,\
\ regardless of whether a spec is provided. \n Note that while\
\ this the Operator and its behavior is community-supported, its\
\ payload may be commercially-supported for pulling commercially-supported\
\ images."
type: boolean
spec:
description: A KubernetesImagePullerSpec to configure the image
puller in the CheCluster
properties:
cachingCPULimit:
type: string
cachingCPURequest:
type: string
cachingIntervalHours:
type: string
cachingMemoryLimit:
type: string
cachingMemoryRequest:
type: string
configMapName:
type: string
daemonsetName:
type: string
deploymentName:
type: string
images:
type: string
nodeSelector:
type: string
type: object
type: object
k8s:
description: Configuration settings specific to Che installations made
on upstream Kubernetes.
properties:
ingressClass:
description: 'Ingress class that will define the which controller
will manage ingresses. Defaults to `nginx`. NB: This drives the
`kubernetes.io/ingress.class` annotation on Che-related ingresses.'
type: string
ingressDomain:
description: 'Global ingress domain for a Kubernetes cluster. This
MUST be explicitly specified: there are no defaults.'
type: string
ingressStrategy:
description: 'Strategy for ingress creation. Options are: `multi-host`
(host is explicitly provided in ingress), `single-host` (host
is provided, path-based rules) and `default-host` (no host is
provided, path-based rules). Defaults to `multi-host` Deprecated
in favor of `serverExposureStrategy` in the `server` section,
which defines this regardless of the cluster type. When both are
defined, the `serverExposureStrategy` option takes precedence.'
type: string
securityContextFsGroup:
description: The FSGroup in which the Che Pod and workspace Pods
containers runs in. Default value is `1724`.
type: string
securityContextRunAsUser:
description: ID of the user the Che Pod and workspace Pods containers
run as. Default value is `1724`.
type: string
singleHostExposureType:
description: When the serverExposureStrategy is set to `single-host`,
the way the server, registries and workspaces are exposed is further
configured by this property. The possible values are `native`,
which means that the server and workspaces are exposed using ingresses
on K8s or `gateway` where the server and workspaces are exposed
using a custom gateway based on link:https://doc.traefik.io/traefik/[Traefik].
All the endpoints whether backed by the ingress or gateway `route`
always point to the subpaths on the same domain. Defaults to `native`.
type: string
tlsSecretName:
description: Name of a secret that will be used to setup ingress
TLS termination when TLS is enabled. When the field is empty string,
the default cluster certificate will be used. See also the `tlsSupport`
field.
type: string
type: object
metrics:
description: Configuration settings related to the metrics collection
used by the Che installation.
properties:
enable:
description: Enables `metrics` the Che server endpoint. Default
to `true`.
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container
registry to pull images from. This value overrides the container
registry host name defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Che in a restricted environment.
type: string
airGapContainerRegistryOrganization:
description: Optional repository name of an alternate container
registry to pull images from. This value overrides the container
registry organization defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Eclipse Che in a restricted environment.
type: string
allowUserDefinedWorkspaceNamespaces:
description: Defines that a user is allowed to specify a Kubernetes
namespace, or an OpenShift project, which differs from the default.
It's NOT RECOMMENDED to set to `true` without OpenShift OAuth
configured. The OpenShift infrastructure also uses this property.
type: boolean
cheClusterRoles:
description: A comma-separated list of ClusterRoles that will be
assigned to Che ServiceAccount. Be aware that the Che Operator
has to already have all permissions in these ClusterRoles to grant
them.
type: string
cheDebug:
description: Enables the debug mode for Che server. Defaults to
`false`.
type: string
cheFlavor:
description: Specifies a variation of the installation. The options
are `che` for upstream Che installations, or `codeready` for link:https://developers.redhat.com/products/codeready-workspaces/overview[CodeReady
Workspaces] installation. Override the default value only on necessary
occasions.
type: string
cheHost:
description: Public host name of the installed Che server. When
value is omitted, the value it will be automatically set by the
Operator. See the `cheHostTLSSecret` field.
type: string
cheHostTLSSecret:
description: Name of a secret containing certificates to secure
ingress or route for the custom host name of the installed Che
server. See the `cheHost` field.
type: string
cheImage:
description: Overrides the container image used in Che deployment.
This does NOT include the container image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
cheImagePullPolicy:
description: Overrides the image pull policy used in Che deployment.
Default value is `Always` for `nightly` or `latest` images, and
`IfNotPresent` in other cases.
type: string
cheImageTag:
description: Overrides the tag of the container image used in Che
deployment. Omit it or leave it empty to use the default image
tag provided by the Operator.
type: string
cheLogLevel:
description: 'Log level for the Che server: `INFO` or `DEBUG`. Defaults
to `INFO`.'
type: string
cheServerIngress:
description: The Che server ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheServerRoute:
description: The Che server route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheWorkspaceClusterRole:
description: Custom cluster role bound to the user for the Che workspaces.
The default roles are used when omitted or left blank.
type: string
customCheProperties:
additionalProperties:
type: string
description: Map of additional environment variables that will be
applied in the generated `che` ConfigMap to be used by the Che
server, in addition to the values already generated from other
fields of the `CheCluster` custom resource (CR). When `customCheProperties`
contains a property that would be normally generated in `che`
ConfigMap from other CR fields, the value defined in the `customCheProperties`
is used instead.
type: object
devfileRegistryCpuLimit:
description: Overrides the CPU limit used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
devfileRegistryCpuRequest:
description: Overrides the CPU request used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
devfileRegistryImage:
description: Overrides the container image used in the devfile registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
devfileRegistryIngress:
description: The devfile registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryMemoryLimit:
description: Overrides the memory limit used in the devfile registry
deployment. Defaults to 256Mi.
type: string
devfileRegistryMemoryRequest:
description: Overrides the memory request used in the devfile registry
deployment. Defaults to 16Mi.
type: string
devfileRegistryPullPolicy:
description: Overrides the image pull policy used in the devfile
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
devfileRegistryRoute:
description: The devfile registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryUrl:
description: Public URL of the devfile registry, that serves sample,
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalDevfileRegistry`
field. By default, this will be automatically calculated by the
Operator.
type: string
externalDevfileRegistry:
description: Instructs the Operator on whether to deploy a dedicated
devfile registry server. By default, a dedicated devfile registry
server is started. When `externalDevfileRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `devfileRegistryUrl` field
type: boolean
externalPluginRegistry:
description: Instructs the Operator on whether to deploy a dedicated
plugin registry server. By default, a dedicated plugin registry
server is started. When `externalPluginRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `pluginRegistryUrl` field.
type: boolean
gitSelfSignedCert:
description: When enabled, the certificate from `che-git-self-signed-cert`
ConfigMap will be propagated to the Che components and provide
particular configuration for Git.
type: boolean
nonProxyHosts:
description: 'List of hosts that will be reached directly, bypassing
the proxy. Specify wild card domain use the following form `.<DOMAIN>`
and `|` as delimiter, for example: `localhost|.my.host.com|123.42.12.32`
Only use when configuring a proxy is required. Operator respects
OpenShift cluster wide proxy configuration and no additional configuration
is required, but defining `nonProxyHosts` in a custom resource
leads to merging non proxy hosts lists from the cluster proxy
configuration and ones defined in the custom resources. See the
doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html.
See also the `proxyURL` fields.'
type: string
pluginRegistryCpuLimit:
description: Overrides the CPU limit used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
pluginRegistryCpuRequest:
description: Overrides the CPU request used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
pluginRegistryImage:
description: Overrides the container image used in the plugin registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
pluginRegistryIngress:
description: Plugin registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryMemoryLimit:
description: Overrides the memory limit used in the plugin registry
deployment. Defaults to 256Mi.
type: string
pluginRegistryMemoryRequest:
description: Overrides the memory request used in the plugin registry
deployment. Defaults to 16Mi.
type: string
pluginRegistryPullPolicy:
description: Overrides the image pull policy used in the plugin
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
pluginRegistryRoute:
description: Plugin registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryUrl:
description: Public URL of the plugin registry that serves sample
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalPluginRegistry` field.
By default, this will be automatically calculated by the Operator.
type: string
proxyPassword:
description: Password of the proxy server. Only use when proxy configuration
is required. See the `proxyURL`, `proxyUser` and `proxySecret`
fields.
type: string
proxyPort:
description: Port of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL` and `nonProxyHosts`
fields.
type: string
proxySecret:
description: The secret that contains `user` and `password` for
a proxy server. When the secret is defined, the `proxyUser` and
`proxyPassword` are ignored.
type: string
proxyURL:
description: URL (protocol+host name) of the proxy server. This
drives the appropriate changes in the `JAVA_OPTS` and `https(s)_proxy`
variables in the Che server and workspaces containers. Only use
when configuring a proxy is required. Operator respects OpenShift
cluster wide proxy configuration and no additional configuration
is required, but defining `proxyUrl` in a custom resource leads
to overrides the cluster proxy configuration with fields `proxyUrl`,
`proxyPort`, `proxyUser` and `proxyPassword` from the custom resource.
See the doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html.
See also the `proxyPort` and `nonProxyHosts` fields.
type: string
proxyUser:
description: User name of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL`, `proxyPassword`
and `proxySecret` fields.
type: string
selfSignedCert:
description: Deprecated. The value of this flag is ignored. The
Che Operator will automatically detect whether the router certificate
is self-signed and propagate it to other components, such as the
Che server.
type: boolean
serverCpuLimit:
description: Overrides the CPU limit used in the Che server deployment
In cores. (500m = .5 cores). Default to 1.
type: string
serverCpuRequest:
description: Overrides the CPU request used in the Che server deployment
In cores. (500m = .5 cores). Default to 100m.
type: string
serverExposureStrategy:
description: Sets the server and workspaces exposure type. Possible
values are `multi-host`, `single-host`, `default-host`. Defaults
to `multi-host`, which creates a separate ingress, or OpenShift
routes, for every required endpoint. `single-host` makes Che exposed
on a single host name with workspaces exposed on subpaths. Read
the docs to learn about the limitations of this approach. Also
consult the `singleHostExposureType` property to further configure
how the Operator and the Che server make that happen on Kubernetes.
`default-host` exposes the Che server on the host of the cluster.
Read the docs to learn about the limitations of this approach.
type: string
serverMemoryLimit:
description: Overrides the memory limit used in the Che server deployment.
Defaults to 1Gi.
type: string
serverMemoryRequest:
description: Overrides the memory request used in the Che server
deployment. Defaults to 512Mi.
type: string
serverTrustStoreConfigMapName:
description: Name of the ConfigMap with public certificates to add
to Java trust store of the Che server. This is often required
when adding the OpenShift OAuth provider, which has HTTPS endpoint
signed with self-signed cert. The Che server must be aware of
its CA cert to be able to request it. This is disabled by default.
type: string
singleHostGatewayConfigMapLabels:
additionalProperties:
type: string
description: The labels that need to be present in the ConfigMaps
representing the gateway configuration.
type: object
singleHostGatewayConfigSidecarImage:
description: The image used for the gateway sidecar that provides
configuration to the gateway. Omit it or leave it empty to use
the default container image provided by the Operator.
type: string
singleHostGatewayImage:
description: The image used for the gateway in the single host mode.
Omit it or leave it empty to use the default container image provided
by the Operator.
type: string
tlsSupport:
description: Deprecated. Instructs the Operator to deploy Che in
TLS mode. This is enabled by default. Disabling TLS sometimes
cause malfunction of some Che components.
type: boolean
useInternalClusterSVCNames:
description: Use internal cluster SVC names to communicate between
components to speed up the traffic and avoid proxy issues. The
default value is `true`.
type: boolean
workspaceNamespaceDefault:
description: Defines Kubernetes default namespace in which user's
workspaces are created for a case when a user does not override
it. It's possible to use `<username>`, `<userid>` and `<workspaceid>`
placeholders, such as che-workspace-<username>. In that case,
a new namespace will be created for each user or workspace.
type: string
type: object
storage:
description: Configuration settings related to the persistent storage
used by the Che installation.
properties:
postgresPVCStorageClassName:
description: Storage class for the Persistent Volume Claim dedicated
to the PostgreSQL database. When omitted or left blank, a default
storage class is used.
type: string
preCreateSubPaths:
description: Instructs the Che server to start a special Pod to
pre-create a sub-path in the Persistent Volumes. Defaults to `false`,
however it will need to enable it according to the configuration
of your Kubernetes cluster.
type: boolean
pvcClaimSize:
description: Size of the persistent volume claim for workspaces.
Defaults to `1Gi`.
type: string
pvcJobsImage:
description: Overrides the container image used to create sub-paths
in the Persistent Volumes. This includes the image tag. Omit it
or leave it empty to use the default container image provided
by the Operator. See also the `preCreateSubPaths` field.
type: string
pvcStrategy:
description: Persistent volume claim strategy for the Che server.
This Can be:`common` (all workspaces PVCs in one volume), `per-workspace`
(one PVC per workspace for all declared volumes) and `unique`
(one PVC per declared volume). Defaults to `common`.
type: string
workspacePVCStorageClassName:
description: Storage class for the Persistent Volume Claims dedicated
to the Che workspaces. When omitted or left blank, a default storage
class is used.
type: string
type: object
type: object
status:
description: CheClusterStatus defines the observed state of Che installation
properties:
cheClusterRunning:
description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
type: string
cheURL:
description: Public URL to the Che server.
type: string
cheVersion:
description: Current installed Che version.
type: string
dbProvisioned:
description: Indicates that a PostgreSQL instance has been correctly
provisioned or not. Indicates that a PostgreSQL instance has been
correctly provisioned or not.
type: boolean
devfileRegistryURL:
description: Public URL to the devfile registry.
type: string
gitHubOAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the GitHub OAuth.
type: boolean
helpLink:
description: A URL that points to some URL where to find help related
to the current Operator status.
type: string
keycloakProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been provisioned with realm, client and user.
type: boolean
keycloakURL:
description: Public URL to the Identity Provider server, Keycloak or
RH-SSO,.
type: string
message:
description: A human readable message indicating details about why the
Pod is in this condition.
type: string
openShiftOAuthUserCredentialsSecret:
description: OpenShift OAuth secret that contains user credentials for
HTPasswd identity provider.
type: string
openShiftoAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the OpenShift OAuth.
type: boolean
pluginRegistryURL:
description: Public URL to the plugin registry.
type: string
reason:
description: A brief CamelCase message indicating details about why
the Pod is in this state.
type: string
type: object
type: object
version: v1
versions:
- name: v1
served: true
storage: true

View File

@ -0,0 +1,9 @@
annotations:
operators.operatorframework.io.bundle.channel.default.v1: nightly
operators.operatorframework.io.bundle.channels.v1: nightly
operators.operatorframework.io.bundle.manifests.v1: manifests/
operators.operatorframework.io.bundle.mediatype.v1: registry+v1
operators.operatorframework.io.bundle.metadata.v1: metadata/
operators.operatorframework.io.bundle.package.v1: eclipse-che-preview-openshift
operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
operators.operatorframework.io.metrics.project_layout: go

View File

@ -0,0 +1,11 @@
FROM scratch
LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
LABEL operators.operatorframework.io.bundle.package.v1=eclipse-che-preview-kubernetes
LABEL operators.operatorframework.io.bundle.channels.v1=stable
LABEL operators.operatorframework.io.bundle.channel.default.v1=stable
COPY manifests /manifests/
COPY metadata /metadata/

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,570 @@
--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.26.2/eclipse-che-preview-kubernetes.v7.26.2.clusterserviceversion.yaml 2021-03-03 13:19:20.315367680 +0000
+++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.27.0/eclipse-che-preview-kubernetes.v7.27.0.clusterserviceversion.yaml 2021-03-03 13:41:32.829812426 +0000
@@ -19,6 +19,7 @@
"identityProviderPassword": "",
"identityProviderRealm": "",
"identityProviderURL": "",
+ "initialOpenShiftOAuthUser": true,
"oAuthClientName": "",
"oAuthSecret": ""
},
@@ -83,14 +84,14 @@
capabilities: Seamless Upgrades
categories: Developer Tools
certified: "false"
- containerImage: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
- createdAt: "2021-02-24T12:58:29Z"
+ containerImage: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
+ createdAt: "2021-03-03T13:40:41Z"
description: A Kube-native development solution that delivers portable and collaborative
developer workspaces.
operatorframework.io/suggested-namespace: eclipse-che
repository: https://github.com/eclipse/che-operator
support: Eclipse Foundation
- name: eclipse-che-preview-kubernetes.v7.26.2
+ name: eclipse-che-preview-kubernetes.v7.27.0
namespace: placeholder
spec:
apiservicedefinitions: {}
@@ -143,6 +144,13 @@
path: message
x-descriptors:
- urn:alm:descriptor:text
+ - description: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ displayName: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ path: openShiftOAuthUserCredentialsSecret
+ x-descriptors:
+ - urn:alm:descriptor:text
- description: A brief CamelCase message indicating details about why the
Pod is in this state.
displayName: Reason
@@ -344,6 +352,7 @@
- secrets
verbs:
- list
+ - get
- create
- delete
- apiGroups:
@@ -463,21 +472,21 @@
- name: OPERATOR_NAME
value: che-operator
- name: CHE_VERSION
- value: 7.26.2
+ value: 7.27.0
- name: RELATED_IMAGE_che_server
- value: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
+ value: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
- name: RELATED_IMAGE_plugin_registry
- value: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
+ value: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
- name: RELATED_IMAGE_devfile_registry
- value: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
+ value: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
- name: RELATED_IMAGE_che_tls_secrets_creation_job
value: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5
- name: RELATED_IMAGE_pvc_jobs
- value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
+ value: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- name: RELATED_IMAGE_postgres
value: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392
- name: RELATED_IMAGE_keycloak
- value: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
+ value: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
- name: RELATED_IMAGE_che_workspace_plugin_broker_metadata
value: quay.io/eclipse/che-plugin-metadata-broker@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
- name: RELATED_IMAGE_che_workspace_plugin_broker_artifacts
@@ -528,14 +537,14 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNJVG4YDGYLFGVTGCZLCMVSGKZJVGZTGIY3FGM4DOOLGMEZDEOBRMNRTENRQGQ4DQZBYME2DQODGMY3TOZLEGNSDIMDGG43TQZDEMY3Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNBXGJTGENRZMMZDINBTMMYDSNLEHE2GKOJUMJQWKMZUGYYTOODBGQZDIOJVGIYTQOBSGZTDMYLBMVQTQYTGGY4DOYRSMIYTKYJQG5QQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRQMI4DSMJWGMYDQOJWGFRDIOLBGFTDCN3CGJTDOM3GG44DCZBWGBSWMMBVGAZTMZTBGAYTGNTGGIYWENLDMI3GKOLFGRRDMNTGGBTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMBZGVRTENBQGU2TAMZTMUZDCOLEGVQTSZRWMZSTSOBTGVRDOOLDGVSDGNBRGZTDAZDGMJRDEMRYMQZDSNJXGEZWKOBRMQZDOYZWGYYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJWGQYGMOJVGAYWMOLBMUYWKM3DHFRDENZWMU3DEMBQME2WGM3BMJRTCMJVMEZTMYRSMMYGMZDEGZRTANRVGNSTQZJRHFRWINJYMY3Q____
@@ -544,18 +553,18 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDCMNSTEZJTHFTGKZJWMI4WKNDBHBRDIZJYGY4DCMZYGBRWKMRUGYZDMNZUGU4TOYJUHBRDQMLDGEZTCY3CMJTDANJVMRSDKZBQMMZQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMTFGQ4WMYLGMI4WCYJWGUYTSZTDGYZTAMJZME3TEYJUGUZDMMRSGJRDMOJQGVSWIMBRMRRTIOBUMMZWKOLGGUYTGMLBMUYDAYRVGQ3A____
value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
- name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_IBZWQYJSGU3DUY3EHA3TCNBZGUZTGN3DHFRGEYRSMYYTMOLBMM3GCY3GMQYGGNRQGBQWKNJWHA3GGNJSMZQTEZLCGAYTQYLCMU2WIZTCGBQWGMLGG43A____
value: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMBYGAZDKZLBMRRTENJZGQYTIMDFG43WINLEMJSWGNLEGY2WCZRYMVRTQNJRGJSTKMRWGY4TGNRXGQ2TSMRUMQ2TKZDEGQ3DONBYGJQQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZRTHE4GKM3GMZSDKMRQGBRTKNTCMY2TMYJWMY3WMOLFHBSGENDBMEZWMNRTHFQTMMJSGU4DKMDGGE3DSNBRGQ2TEOBSGYYGIY3FHBQQ____
@@ -568,28 +577,32 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDGMRRDANBQGI3GGYTFMRSGEZTFGUZTCOBUMFTGGZBWMZRTKY3CGYYTGMTBGIZGEZJVHAYTAYRRGNSDGODBGEZDKYLGMQYDQMZSGIYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNBZGFRTMMTBGNQWGNZXGVSDKNBSGZSDOMTBGU4WCYZRHBRGIZBVGBTDKZRVMQ3DCZBQG5TGEZTCGM2GKMDDMQ3WMZLEGNSDIZDBGIYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNTCHFRTOMZZMY2DQNZXGM4GCNLCMZRDEMDFGA2TEYJSGFRDIZLEMZTDIMRYHFRTOMZYGQ4TMNZQHBQWEZRYMFSGGNDEGU4DEMDEG44Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNTEGBRTINBQME3WIYZWGQ4DQMJWMZRWINBYHA2WEOLDMM4DKZRQMVRDAZRTHEYTMNJZMJRDSZTDHBQTSMJSGMYDONLCMVQTONJRGY2Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUME3DCZJSGFRWENZVGE2TMZBVMY2DCYTGGYYWIODCGA4DOMDDGUYTCNZZMJSWMOJQME2WKYRXMVRDKOLGHFSWCYZQMIYTOMJTGE4Q____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDCMNSTEZJTHFTGKZJWMI4WKNDBHBRDIZJYGY4DCMZYGBRWKMRUGYZDMNZUGU4TOYJUHBRDQMLDGEZTCY3CMJTDANJVMRSDKZBQMMZQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: RELATED_IMAGE_che_theia_plugin_registry_image_IBZWQYJSGU3DUMDFMZRTSNDBGE3WCMDDGY2TKYRTG5SDSMDGGVQTEOLFME4DONTDG44GCZRZMY4WEZLCMMZGENBUHE2GEMJQGYYDOMRTMIYDOYZWMY4Q____
- value: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_IBZWQYJSGU3DUNJVME3TIMDBGNQTMYZWMU3WKMRTMY4TMZTEGBSDQZRSGNRGEYJVG4ZWCNBSME4TIYLCMUYDCYZWGY4TMZBTGIYDINLCME4DGM3CME3Q____
- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUYTCGQYDIZTGMFQTCMRVGY2WEZLCGEZGENDDMQ4DCNRQMNTGCM3GMYZWKZRTMJSTIMRQGQZTAYJWGU3DEZRRMZSTIOBWGM4WGYTGGFTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ - name: RELATED_IMAGE_che_theia_plugin_registry_image_IBZWQYJSGU3DUZDCMFTGIMLEGVRTKZDBMI2WCMTCMM3DOZTGGYYDOOBVHBSTQYZWMQ3DKZLBGYZDANBQMU4TOZJXHBQTSNRQHE2GMNJZGVRDGYZVG4YQ____
+ value: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_IBZWQYJSGU3DUYLGGMYDEZBVG4ZDMYTCGNRTCOJSGAZDSMZUMNSWGMZXGMYTMNTDHEYDOYTEMM4GGMZYMI4DOYJXMI2GENZVGU3DAYJVHE4DMOJWGRQQ____
+ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
- name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_IBZWQYJSGU3DUOBTGQZTSYLFHFSWIY3BMEZWCOJXGUZTMNZUGIZTCNLBG44TCMTGHEZWKNBZHFTDIOJYGQ3WIYJQHE2GGNBYGAYDGMLFMFSTIYTBGQ3Q____
value: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
- name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_IBZWQYJSGU3DUMZTGY2TMMZVMQYWKMBUGAZTMOJXMRSWCMBWG42GEYTCMRRTONBZMM2GEZJSMRRDEOJYGE4GCOJTMI4GKMLFGUZWGM3DGUYTINBRGEZQ____
@@ -606,49 +619,49 @@
value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_IBZWQYJSGU3DUOBYMQYDCMRVHAZTOZBVME2TOY3CGI2GEYRTMVSDQMLFGZQTQZRUGEYTSYJVGA2DGYRXHEZDMYTEGJRGIMBRG4YTAOBVGRRTINDGGEYA____
value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_IBZWQYJSGU3DUOBSGAZWGNBXG5SDMZRWMM3DMNBYG4ZWKMRZHE3WMZJQMNRWKZBUMIYTKZJYMEZGGYZVMU4DIMJZGFTDOY3CGEZTSZBQHA4GGZJUGFSA____
- value: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
+ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_IBZWQYJSGU3DUMRTHE4WEN3BME2TKZJRHBSDIM3DGY4TOZJRHA3GMNDBMQYDAYRVGFRDOYRVGMZDQMRUGYYGMNZXGE4TANBYGU2TSMTCMFRDMYRQMFQQ____
+ value: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
- name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_IBZWQYJSGU3DUZLGMZQTSODEMQZGGZLEGMYGENJSGBRDENLBMZTGMMLBHA4DAZBRGIYWGZRWMIZWMODBMI2DEYJVGE2DSZLBMRQTINTCME3TSM3DMU4Q____
value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
- name: RELATED_IMAGE_che__centos__mongodb_36_centos7_devfile_registry_image_NRQXIZLTOQWWCOJRGVSGEN3CMVRWCOBXGE4TQZTDMQ3TQNRQGA4DMOJYHFTGKODBGMZDOYJRME2GMNRVGA4DAMRVMI3DIYLCGI4GMY3DG42DEM3CGI______
value: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2
- name: RELATED_IMAGE_che__centos__mysql_57_centos7_devfile_registry_image_NRQXIZLTOQWWKMBYMVSTIZBUGNRDOMZVGY3DANZWHA2WENRZMJSGKNRTGM2WKMRXMNTDEMDDGAZDAZRTGQ2WENTDGZRTKOJUGAYDCOBTHA4DENZWGQ______
value: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
- - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
+ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
- name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___
value: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_
value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- image: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
+ image: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 10
@@ -818,12 +831,12 @@
maturity: stable
provider:
name: Eclipse Foundation
- replaces: eclipse-che-preview-kubernetes.v7.26.1
- version: 7.26.2
+ replaces: eclipse-che-preview-kubernetes.v7.26.2
+ version: 7.27.0
relatedImages:
- - name: che-operator-7.26.2
- image: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
- # tag: quay.io/eclipse/che-operator:7.26.2
+ - name: che-operator-7.27.0
+ image: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
+ # tag: quay.io/eclipse/che-operator:7.27.0
- name: traefik-v2.2.8
image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8
# tag: docker.io/traefik:v2.2.8
@@ -833,33 +846,33 @@
- name: che--centos--postgresql-96-centos7-9.6-b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392
image: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392
# tag: quay.io/eclipse/che--centos--postgresql-96-centos7:9.6-b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392
- - name: che-devfile-registry-7.26.2
- image: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
- # tag: quay.io/eclipse/che-devfile-registry:7.26.2
+ - name: che-devfile-registry-7.27.0
+ image: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
+ # tag: quay.io/eclipse/che-devfile-registry:7.27.0
- name: che-jwtproxy-0.10.0
image: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033
# tag: quay.io/eclipse/che-jwtproxy:0.10.0
- - name: che-keycloak-7.26.2
- image: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
- # tag: quay.io/eclipse/che-keycloak:7.26.2
+ - name: che-keycloak-7.27.0
+ image: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
+ # tag: quay.io/eclipse/che-keycloak:7.27.0
- name: che-plugin-artifacts-broker-v3.4.0
image: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58
# tag: quay.io/eclipse/che-plugin-artifacts-broker:v3.4.0
- name: che-plugin-metadata-broker-v3.4.0
image: quay.io/eclipse/che-plugin-metadata-broker@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
# tag: quay.io/eclipse/che-plugin-metadata-broker:v3.4.0
- - name: che-plugin-registry-7.26.2
- image: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
- # tag: quay.io/eclipse/che-plugin-registry:7.26.2
- - name: che-server-7.26.2
- image: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
- # tag: quay.io/eclipse/che-server:7.26.2
+ - name: che-plugin-registry-7.27.0
+ image: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
+ # tag: quay.io/eclipse/che-plugin-registry:7.27.0
+ - name: che-server-7.27.0
+ image: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
+ # tag: quay.io/eclipse/che-server:7.27.0
- name: che-tls-secret-creator-alpine-d1ed4ad
image: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5
# tag: quay.io/eclipse/che-tls-secret-creator:alpine-d1ed4ad
- - name: ubi8-minimal-8.3-230
- image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
- # tag: registry.access.redhat.com/ubi8-minimal:8.3-230
+ - name: ubi8-minimal-8.3-291
+ image: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
+ # tag: registry.access.redhat.com/ubi8-minimal:8.3-291
- name: che-plugin-sidecar-@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
@@ -893,18 +906,18 @@
- name: che-plugin-sidecar-@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
- - name: che-plugin-sidecar-@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
@@ -917,24 +930,24 @@
- name: che-plugin-sidecar-@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
- name: mta-vscode-extension-@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
image: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
# tag: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: che-plugin-sidecar-@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
@@ -953,39 +966,45 @@
- name: che-plugin-sidecar-@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: che-plugin-sidecar-@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
- name: che-plugin-sidecar-@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
+ - name: che-plugin-sidecar-@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
- name: che-plugin-sidecar-@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: che-theia-@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- image: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- # tag: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- - name: che-theia-endpoint-runtime-binary-@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
+ - name: che-plugin-sidecar-@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ - name: che-theia-@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ image: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ # tag: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ - name: che-theia-endpoint-runtime-binary-@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
- name: che-editor-jupyter-@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
image: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
# tag: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
@@ -1010,9 +1029,9 @@
- name: che-sidecar-workspace-data-sync-@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
# tag: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- - name: che-machine-exec-@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- image: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- # tag: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
+ - name: che-machine-exec-@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ image: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ # tag: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
- name: che-buildkit-base-@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
# tag: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
@@ -1022,51 +1041,51 @@
- name: che--centos--mysql-57-centos7-latest-e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
image: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
# tag: quay.io/eclipse/che--centos--mysql-57-centos7:latest-e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
- - name: che-cpp-rhel7-7.26.2
- image: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- # tag: quay.io/eclipse/che-cpp-rhel7:7.26.2
- - name: che-dotnet-2.2-7.26.2
- image: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- # tag: quay.io/eclipse/che-dotnet-2.2:7.26.2
- - name: che-dotnet-3.1-7.26.2
- image: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- # tag: quay.io/eclipse/che-dotnet-3.1:7.26.2
- - name: che-golang-1.14-7.26.2
- image: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- # tag: quay.io/eclipse/che-golang-1.14:7.26.2
- - name: che-java11-gradle-7.26.2
- image: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- # tag: quay.io/eclipse/che-java11-gradle:7.26.2
- - name: che-java11-maven-7.26.2
- image: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- # tag: quay.io/eclipse/che-java11-maven:7.26.2
- - name: che-java8-maven-7.26.2
- image: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- # tag: quay.io/eclipse/che-java8-maven:7.26.2
- - name: che-nodejs10-community-7.26.2
- image: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- # tag: quay.io/eclipse/che-nodejs10-community:7.26.2
- - name: che-nodejs10-ubi-7.26.2
- image: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- # tag: quay.io/eclipse/che-nodejs10-ubi:7.26.2
- - name: che-nodejs12-community-7.26.2
- image: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- # tag: quay.io/eclipse/che-nodejs12-community:7.26.2
- - name: che-nodejs8-centos-7.26.2
- image: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- # tag: quay.io/eclipse/che-nodejs8-centos:7.26.2
- - name: che-php-7-7.26.2
- image: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- # tag: quay.io/eclipse/che-php-7:7.26.2
- - name: che-python-3.8-7.26.2
- image: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- # tag: quay.io/eclipse/che-python-3.8:7.26.2
- - name: che-quarkus-7.26.2
- image: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- # tag: quay.io/eclipse/che-quarkus:7.26.2
- - name: che-rust-1.39-7.26.2
- image: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
- # tag: quay.io/eclipse/che-rust-1.39:7.26.2
+ - name: che-cpp-rhel7-7.27.0
+ image: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ # tag: quay.io/eclipse/che-cpp-rhel7:7.27.0
+ - name: che-dotnet-2.2-7.27.0
+ image: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ # tag: quay.io/eclipse/che-dotnet-2.2:7.27.0
+ - name: che-dotnet-3.1-7.27.0
+ image: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ # tag: quay.io/eclipse/che-dotnet-3.1:7.27.0
+ - name: che-golang-1.14-7.27.0
+ image: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ # tag: quay.io/eclipse/che-golang-1.14:7.27.0
+ - name: che-java11-gradle-7.27.0
+ image: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ # tag: quay.io/eclipse/che-java11-gradle:7.27.0
+ - name: che-java11-maven-7.27.0
+ image: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ # tag: quay.io/eclipse/che-java11-maven:7.27.0
+ - name: che-java8-maven-7.27.0
+ image: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ # tag: quay.io/eclipse/che-java8-maven:7.27.0
+ - name: che-nodejs10-community-7.27.0
+ image: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ # tag: quay.io/eclipse/che-nodejs10-community:7.27.0
+ - name: che-nodejs10-ubi-7.27.0
+ image: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ # tag: quay.io/eclipse/che-nodejs10-ubi:7.27.0
+ - name: che-nodejs12-community-7.27.0
+ image: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ # tag: quay.io/eclipse/che-nodejs12-community:7.27.0
+ - name: che-nodejs8-centos-7.27.0
+ image: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ # tag: quay.io/eclipse/che-nodejs8-centos:7.27.0
+ - name: che-php-7-7.27.0
+ image: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ # tag: quay.io/eclipse/che-php-7:7.27.0
+ - name: che-python-3.8-7.27.0
+ image: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ # tag: quay.io/eclipse/che-python-3.8:7.27.0
+ - name: che-quarkus-7.27.0
+ image: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ # tag: quay.io/eclipse/che-quarkus:7.27.0
+ - name: che-rust-1.39-7.27.0
+ image: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
+ # tag: quay.io/eclipse/che-rust-1.39:7.27.0
- name: ubi8-minimal-8.3
image: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
# tag: registry.access.redhat.com/ubi8-minimal:8.3

View File

@ -0,0 +1,857 @@
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: checlusters.org.eclipse.che
spec:
group: org.eclipse.che
names:
kind: CheCluster
listKind: CheClusterList
plural: checlusters
singular: checluster
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: The `CheCluster` custom resource allows defining and managing a
Che server installation
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: Desired configuration of the Che installation. Based on these
settings, the Operator automatically creates and maintains several ConfigMaps
that will contain the appropriate environment variables the various components
of the Che installation. These generated ConfigMaps must NOT be updated
manually.
properties:
auth:
description: Configuration settings related to the Authentication used
by the Che installation.
properties:
externalIdentityProvider:
description: 'Instructs the Operator on whether or not to deploy
a dedicated Identity Provider (Keycloak or RH SSO instance). Instructs
the Operator on whether to deploy a dedicated Identity Provider
(Keycloak or RH-SSO instance). By default, a dedicated Identity
Provider server is deployed as part of the Che installation. When
`externalIdentityProvider` is `true`, no dedicated identity provider
will be deployed by the Operator and you will need to provide
details about the external identity provider you are about to
use. See also all the other fields starting with: `identityProvider`.'
type: boolean
identityProviderAdminUserName:
description: Overrides the name of the Identity Provider administrator
user. Defaults to `admin`.
type: string
identityProviderClientId:
description: Name of a Identity provider, Keycloak or RH-SSO, `client-id`
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field suffixed with `-public`.
type: string
identityProviderContainerResources:
description: Identity provider container custom settings.
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
identityProviderImage:
description: Overrides the container image used in the Identity
Provider, Keycloak or RH-SSO, deployment. This includes the image
tag. Omit it or leave it empty to use the default container image
provided by the Operator.
type: string
identityProviderImagePullPolicy:
description: Overrides the image pull policy used in the Identity
Provider, Keycloak or RH-SSO, deployment. Default value is `Always`
for `nightly` or `latest` images, and `IfNotPresent` in other
cases.
type: string
identityProviderIngress:
description: Ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderPassword:
description: Overrides the password of Keycloak administrator user.
Override this when an external Identity Provider is in use. See
the `externalIdentityProvider` field. When omitted or left blank,
it is set to an auto-generated password.
type: string
identityProviderPostgresPassword:
description: Password for a Identity Provider, Keycloak or RH-SSO,
to connect to the database. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to an auto-generated password.
type: string
identityProviderPostgresSecret:
description: 'The secret that contains `password` for the Identity
Provider, Keycloak or RH-SSO, to connect to the database. When
the secret is defined, the `identityProviderPostgresPassword`
is ignored. When the value is omitted or left blank, the one of
following scenarios applies: 1. `identityProviderPostgresPassword`
is defined, then it will be used to connect to the database. 2.
`identityProviderPostgresPassword` is not defined, then a new
secret with the name `che-identity-postgres-secret` will be created
with an auto-generated value for `password`.'
type: string
identityProviderRealm:
description: Name of a Identity provider, Keycloak or RH-SSO, realm
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field.
type: string
identityProviderRoute:
description: Route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderSecret:
description: 'The secret that contains `user` and `password` for
Identity Provider. When the secret is defined, the `identityProviderAdminUserName`
and `identityProviderPassword` are ignored. When the value is
omitted or left blank, the one of following scenarios applies:
1. `identityProviderAdminUserName` and `identityProviderPassword`
are defined, then they will be used. 2. `identityProviderAdminUserName`
or `identityProviderPassword` are not defined, then a new secret
with the name `che-identity-secret` will be created with default
value `admin` for `user` and with an auto-generated value for
`password`.'
type: string
identityProviderURL:
description: Public URL of the Identity Provider server (Keycloak
/ RH-SSO server). Set this ONLY when a use of an external Identity
Provider is needed. See the `externalIdentityProvider` field.
By default, this will be automatically calculated and set by the
Operator.
type: string
initialOpenShiftOAuthUser:
description: For operating with the OpenShift OAuth authentication,
create a new user account since the kubeadmin can not be used.
If the value is true, then a new OpenShift OAuth user will be
created for the HTPasswd identity provider. If the value is false
and the user has already been created, then it will be removed.
If value is an empty, then do nothing. The user's credentials
are stored in the `openshift-oauth-user-credentials` secret by
Operator. Note that this solution is Openshift 4 platform-specific.
type: boolean
oAuthClientName:
description: Name of the OpenShift `OAuthClient` resource used to
setup identity federation on the OpenShift side. Auto-generated
when left blank. See also the `OpenShiftoAuth` field.
type: string
oAuthSecret:
description: Name of the secret set in the OpenShift `OAuthClient`
resource used to setup identity federation on the OpenShift side.
Auto-generated when left blank. See also the `OAuthClientName`
field.
type: string
openShiftoAuth:
description: 'Enables the integration of the identity provider (Keycloak
/ RHSSO) with OpenShift OAuth. Empty value on OpenShift by default.
This will allow users to directly login with their OpenShift user
through the OpenShift login, and have their workspaces created
under personal OpenShift namespaces. WARNING: the `kubeadmin`
user is NOT supported, and logging through it will NOT allow accessing
the Che Dashboard.'
type: boolean
updateAdminPassword:
description: Forces the default `admin` Che user to update password
on first login. Defaults to `false`.
type: boolean
type: object
database:
description: Configuration settings related to the database used by
the Che installation.
properties:
chePostgresContainerResources:
description: PostgreSQL container custom settings
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
chePostgresDb:
description: PostgreSQL database name that the Che server uses to
connect to the DB. Defaults to `dbche`.
type: string
chePostgresHostName:
description: PostgreSQL Database host name that the Che server uses
to connect to. Defaults is `postgres`. Override this value ONLY
when using an external database. See field `externalDb`. In the
default case it will be automatically set by the Operator.
type: string
chePostgresPassword:
description: PostgreSQL password that the Che server uses to connect
to the DB. When omitted or left blank, it will be set to an automatically
generated value.
type: string
chePostgresPort:
description: PostgreSQL Database port that the Che server uses to
connect to. Defaults to 5432. Override this value ONLY when using
an external database. See field `externalDb`. In the default case
it will be automatically set by the Operator.
type: string
chePostgresSecret:
description: 'The secret that contains PostgreSQL`user` and `password`
that the Che server uses to connect to the DB. When the secret
is defined, the `chePostgresUser` and `chePostgresPassword` are
ignored. When the value is omitted or left blank, the one of following
scenarios applies: 1. `chePostgresUser` and `chePostgresPassword`
are defined, then they will be used to connect to the DB. 2. `chePostgresUser`
or `chePostgresPassword` are not defined, then a new secret with
the name `che-postgres-secret` will be created with default value
of `pgche` for `user` and with an auto-generated value for `password`.'
type: string
chePostgresUser:
description: PostgreSQL user that the Che server uses to connect
to the DB. Defaults to `pgche`.
type: string
externalDb:
description: 'Instructs the Operator on whether to deploy a dedicated
database. By default, a dedicated PostgreSQL database is deployed
as part of the Che installation. When `externalDb` is `true`,
no dedicated database will be deployed by the Operator and you
will need to provide connection details to the external DB you
are about to use. See also all the fields starting with: `chePostgres`.'
type: boolean
postgresImage:
description: Overrides the container image used in the PostgreSQL
database deployment. This includes the image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
postgresImagePullPolicy:
description: Overrides the image pull policy used in the PostgreSQL
database deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
type: object
imagePuller:
description: Kubernetes Image Puller configuration
properties:
enable:
description: "Install and configure the Community Supported Kubernetes
Image Puller Operator. When set to `true` and no spec is provided,
it will create a default KubernetesImagePuller object to be managed
by the Operator. When set to `false`, the KubernetesImagePuller
object will be deleted, and the Operator will be uninstalled,
regardless of whether a spec is provided. \n Note that while this
the Operator and its behavior is community-supported, its payload
may be commercially-supported for pulling commercially-supported
images."
type: boolean
spec:
description: A KubernetesImagePullerSpec to configure the image
puller in the CheCluster
properties:
cachingCPULimit:
type: string
cachingCPURequest:
type: string
cachingIntervalHours:
type: string
cachingMemoryLimit:
type: string
cachingMemoryRequest:
type: string
configMapName:
type: string
daemonsetName:
type: string
deploymentName:
type: string
images:
type: string
nodeSelector:
type: string
type: object
type: object
k8s:
description: Configuration settings specific to Che installations made
on upstream Kubernetes.
properties:
ingressClass:
description: 'Ingress class that will define the which controller
will manage ingresses. Defaults to `nginx`. NB: This drives the
`kubernetes.io/ingress.class` annotation on Che-related ingresses.'
type: string
ingressDomain:
description: 'Global ingress domain for a Kubernetes cluster. This
MUST be explicitly specified: there are no defaults.'
type: string
ingressStrategy:
description: 'Strategy for ingress creation. Options are: `multi-host`
(host is explicitly provided in ingress), `single-host` (host
is provided, path-based rules) and `default-host` (no host is
provided, path-based rules). Defaults to `multi-host` Deprecated
in favor of `serverExposureStrategy` in the `server` section,
which defines this regardless of the cluster type. When both are
defined, the `serverExposureStrategy` option takes precedence.'
type: string
securityContextFsGroup:
description: The FSGroup in which the Che Pod and workspace Pods
containers runs in. Default value is `1724`.
type: string
securityContextRunAsUser:
description: ID of the user the Che Pod and workspace Pods containers
run as. Default value is `1724`.
type: string
singleHostExposureType:
description: When the serverExposureStrategy is set to `single-host`,
the way the server, registries and workspaces are exposed is further
configured by this property. The possible values are `native`,
which means that the server and workspaces are exposed using ingresses
on K8s or `gateway` where the server and workspaces are exposed
using a custom gateway based on link:https://doc.traefik.io/traefik/[Traefik].
All the endpoints whether backed by the ingress or gateway `route`
always point to the subpaths on the same domain. Defaults to `native`.
type: string
tlsSecretName:
description: Name of a secret that will be used to setup ingress
TLS termination when TLS is enabled. When the field is empty string,
the default cluster certificate will be used. See also the `tlsSupport`
field.
type: string
type: object
metrics:
description: Configuration settings related to the metrics collection
used by the Che installation.
properties:
enable:
description: Enables `metrics` the Che server endpoint. Default
to `true`.
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container
registry to pull images from. This value overrides the container
registry host name defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Che in a restricted environment.
type: string
airGapContainerRegistryOrganization:
description: Optional repository name of an alternate container
registry to pull images from. This value overrides the container
registry organization defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Eclipse Che in a restricted environment.
type: string
allowUserDefinedWorkspaceNamespaces:
description: Defines that a user is allowed to specify a Kubernetes
namespace, or an OpenShift project, which differs from the default.
It's NOT RECOMMENDED to set to `true` without OpenShift OAuth
configured. The OpenShift infrastructure also uses this property.
type: boolean
cheClusterRoles:
description: A comma-separated list of ClusterRoles that will be
assigned to Che ServiceAccount. Be aware that the Che Operator
has to already have all permissions in these ClusterRoles to grant
them.
type: string
cheDebug:
description: Enables the debug mode for Che server. Defaults to
`false`.
type: string
cheFlavor:
description: Specifies a variation of the installation. The options
are `che` for upstream Che installations, or `codeready` for link:https://developers.redhat.com/products/codeready-workspaces/overview[CodeReady
Workspaces] installation. Override the default value only on necessary
occasions.
type: string
cheHost:
description: Public host name of the installed Che server. When
value is omitted, the value it will be automatically set by the
Operator. See the `cheHostTLSSecret` field.
type: string
cheHostTLSSecret:
description: Name of a secret containing certificates to secure
ingress or route for the custom host name of the installed Che
server. See the `cheHost` field.
type: string
cheImage:
description: Overrides the container image used in Che deployment.
This does NOT include the container image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
cheImagePullPolicy:
description: Overrides the image pull policy used in Che deployment.
Default value is `Always` for `nightly` or `latest` images, and
`IfNotPresent` in other cases.
type: string
cheImageTag:
description: Overrides the tag of the container image used in Che
deployment. Omit it or leave it empty to use the default image
tag provided by the Operator.
type: string
cheLogLevel:
description: 'Log level for the Che server: `INFO` or `DEBUG`. Defaults
to `INFO`.'
type: string
cheServerIngress:
description: The Che server ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheServerRoute:
description: The Che server route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheWorkspaceClusterRole:
description: Custom cluster role bound to the user for the Che workspaces.
The default roles are used when omitted or left blank.
type: string
customCheProperties:
additionalProperties:
type: string
description: Map of additional environment variables that will be
applied in the generated `che` ConfigMap to be used by the Che
server, in addition to the values already generated from other
fields of the `CheCluster` custom resource (CR). When `customCheProperties`
contains a property that would be normally generated in `che`
ConfigMap from other CR fields, the value defined in the `customCheProperties`
is used instead.
type: object
devfileRegistryCpuLimit:
description: Overrides the CPU limit used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
devfileRegistryCpuRequest:
description: Overrides the CPU request used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
devfileRegistryImage:
description: Overrides the container image used in the devfile registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
devfileRegistryIngress:
description: The devfile registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryMemoryLimit:
description: Overrides the memory limit used in the devfile registry
deployment. Defaults to 256Mi.
type: string
devfileRegistryMemoryRequest:
description: Overrides the memory request used in the devfile registry
deployment. Defaults to 16Mi.
type: string
devfileRegistryPullPolicy:
description: Overrides the image pull policy used in the devfile
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
devfileRegistryRoute:
description: The devfile registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryUrl:
description: Public URL of the devfile registry, that serves sample,
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalDevfileRegistry`
field. By default, this will be automatically calculated by the
Operator.
type: string
externalDevfileRegistry:
description: Instructs the Operator on whether to deploy a dedicated
devfile registry server. By default, a dedicated devfile registry
server is started. When `externalDevfileRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `devfileRegistryUrl` field
type: boolean
externalPluginRegistry:
description: Instructs the Operator on whether to deploy a dedicated
plugin registry server. By default, a dedicated plugin registry
server is started. When `externalPluginRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `pluginRegistryUrl` field.
type: boolean
gitSelfSignedCert:
description: When enabled, the certificate from `che-git-self-signed-cert`
ConfigMap will be propagated to the Che components and provide
particular configuration for Git.
type: boolean
nonProxyHosts:
description: 'List of hosts that will be reached directly, bypassing
the proxy. Specify wild card domain use the following form `.<DOMAIN>`
and `|` as delimiter, for example: `localhost|.my.host.com|123.42.12.32`
Only use when configuring a proxy is required. Operator respects
OpenShift cluster wide proxy configuration and no additional configuration
is required, but defining `nonProxyHosts` in a custom resource
leads to merging non proxy hosts lists from the cluster proxy
configuration and ones defined in the custom resources. See the
doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html).
See also the `proxyURL` fields.'
type: string
pluginRegistryCpuLimit:
description: Overrides the CPU limit used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
pluginRegistryCpuRequest:
description: Overrides the CPU request used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
pluginRegistryImage:
description: Overrides the container image used in the plugin registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
pluginRegistryIngress:
description: Plugin registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryMemoryLimit:
description: Overrides the memory limit used in the plugin registry
deployment. Defaults to 256Mi.
type: string
pluginRegistryMemoryRequest:
description: Overrides the memory request used in the plugin registry
deployment. Defaults to 16Mi.
type: string
pluginRegistryPullPolicy:
description: Overrides the image pull policy used in the plugin
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
pluginRegistryRoute:
description: Plugin registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryUrl:
description: Public URL of the plugin registry that serves sample
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalPluginRegistry` field.
By default, this will be automatically calculated by the Operator.
type: string
proxyPassword:
description: Password of the proxy server. Only use when proxy configuration
is required. See the `proxyURL`, `proxyUser` and `proxySecret`
fields.
type: string
proxyPort:
description: Port of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL` and `nonProxyHosts`
fields.
type: string
proxySecret:
description: The secret that contains `user` and `password` for
a proxy server. When the secret is defined, the `proxyUser` and
`proxyPassword` are ignored.
type: string
proxyURL:
description: URL (protocol+host name) of the proxy server. This
drives the appropriate changes in the `JAVA_OPTS` and `https(s)_proxy`
variables in the Che server and workspaces containers. Only use
when configuring a proxy is required. Operator respects OpenShift
cluster wide proxy configuration and no additional configuration
is required, but defining `proxyUrl` in a custom resource leads
to overrides the cluster proxy configuration with fields `proxyUrl`,
`proxyPort`, `proxyUser` and `proxyPassword` from the custom resource.
See the doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html).
See also the `proxyPort` and `nonProxyHosts` fields.
type: string
proxyUser:
description: User name of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL`, `proxyPassword`
and `proxySecret` fields.
type: string
selfSignedCert:
description: Deprecated. The value of this flag is ignored. The
Che Operator will automatically detect whether the router certificate
is self-signed and propagate it to other components, such as the
Che server.
type: boolean
serverCpuLimit:
description: Overrides the CPU limit used in the Che server deployment
In cores. (500m = .5 cores). Default to 1.
type: string
serverCpuRequest:
description: Overrides the CPU request used in the Che server deployment
In cores. (500m = .5 cores). Default to 100m.
type: string
serverExposureStrategy:
description: Sets the server and workspaces exposure type. Possible
values are `multi-host`, `single-host`, `default-host`. Defaults
to `multi-host`, which creates a separate ingress, or OpenShift
routes, for every required endpoint. `single-host` makes Che exposed
on a single host name with workspaces exposed on subpaths. Read
the docs to learn about the limitations of this approach. Also
consult the `singleHostExposureType` property to further configure
how the Operator and the Che server make that happen on Kubernetes.
`default-host` exposes the Che server on the host of the cluster.
Read the docs to learn about the limitations of this approach.
type: string
serverMemoryLimit:
description: Overrides the memory limit used in the Che server deployment.
Defaults to 1Gi.
type: string
serverMemoryRequest:
description: Overrides the memory request used in the Che server
deployment. Defaults to 512Mi.
type: string
serverTrustStoreConfigMapName:
description: Name of the ConfigMap with public certificates to add
to Java trust store of the Che server. This is often required
when adding the OpenShift OAuth provider, which has HTTPS endpoint
signed with self-signed cert. The Che server must be aware of
its CA cert to be able to request it. This is disabled by default.
type: string
singleHostGatewayConfigMapLabels:
additionalProperties:
type: string
description: The labels that need to be present in the ConfigMaps
representing the gateway configuration.
type: object
singleHostGatewayConfigSidecarImage:
description: The image used for the gateway sidecar that provides
configuration to the gateway. Omit it or leave it empty to use
the default container image provided by the Operator.
type: string
singleHostGatewayImage:
description: The image used for the gateway in the single host mode.
Omit it or leave it empty to use the default container image provided
by the Operator.
type: string
tlsSupport:
description: Deprecated. Instructs the Operator to deploy Che in
TLS mode. This is enabled by default. Disabling TLS sometimes
cause malfunction of some Che components.
type: boolean
useInternalClusterSVCNames:
description: Use internal cluster SVC names to communicate between
components to speed up the traffic and avoid proxy issues. The
default value is `false`.
type: boolean
workspaceNamespaceDefault:
description: Defines Kubernetes default namespace in which user's
workspaces are created for a case when a user does not override
it. It's possible to use `<username>`, `<userid>` and `<workspaceid>`
placeholders, such as che-workspace-<username>. In that case,
a new namespace will be created for each user or workspace.
type: string
type: object
storage:
description: Configuration settings related to the persistent storage
used by the Che installation.
properties:
postgresPVCStorageClassName:
description: Storage class for the Persistent Volume Claim dedicated
to the PostgreSQL database. When omitted or left blank, a default
storage class is used.
type: string
preCreateSubPaths:
description: Instructs the Che server to start a special Pod to
pre-create a sub-path in the Persistent Volumes. Defaults to `false`,
however it will need to enable it according to the configuration
of your Kubernetes cluster.
type: boolean
pvcClaimSize:
description: Size of the persistent volume claim for workspaces.
Defaults to `1Gi`.
type: string
pvcJobsImage:
description: Overrides the container image used to create sub-paths
in the Persistent Volumes. This includes the image tag. Omit it
or leave it empty to use the default container image provided
by the Operator. See also the `preCreateSubPaths` field.
type: string
pvcStrategy:
description: Persistent volume claim strategy for the Che server.
This Can be:`common` (all workspaces PVCs in one volume), `per-workspace`
(one PVC per workspace for all declared volumes) and `unique`
(one PVC per declared volume). Defaults to `common`.
type: string
workspacePVCStorageClassName:
description: Storage class for the Persistent Volume Claims dedicated
to the Che workspaces. When omitted or left blank, a default storage
class is used.
type: string
type: object
type: object
status:
description: CheClusterStatus defines the observed state of Che installation
properties:
cheClusterRunning:
description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
type: string
cheURL:
description: Public URL to the Che server.
type: string
cheVersion:
description: Current installed Che version.
type: string
dbProvisioned:
description: Indicates that a PostgreSQL instance has been correctly
provisioned or not. Indicates that a PostgreSQL instance has been
correctly provisioned or not.
type: boolean
devfileRegistryURL:
description: Public URL to the devfile registry.
type: string
gitHubOAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the GitHub OAuth.
type: boolean
helpLink:
description: A URL that points to some URL where to find help related
to the current Operator status.
type: string
keycloakProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been provisioned with realm, client and user.
type: boolean
keycloakURL:
description: Public URL to the Identity Provider server, Keycloak or
RH-SSO,.
type: string
message:
description: A human readable message indicating details about why the
Pod is in this condition.
type: string
openShiftOAuthUserCredentialsSecret:
description: OpenShift OAuth secret that contains user credentials for
HTPasswd identity provider.
type: string
openShiftoAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the OpenShift OAuth.
type: boolean
pluginRegistryURL:
description: Public URL to the plugin registry.
type: string
reason:
description: A brief CamelCase message indicating details about why
the Pod is in this state.
type: string
type: object
type: object
version: v1
versions:
- name: v1
served: true
storage: true

View File

@ -0,0 +1,375 @@
--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.26.2/eclipse-che-preview-kubernetes.crd.yaml 2021-03-03 13:19:20.315367680 +0000
+++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.27.0/eclipse-che-preview-kubernetes.crd.yaml 2021-03-03 13:40:41.957362288 +0000
@@ -51,14 +51,15 @@
by the Che installation.
properties:
externalIdentityProvider:
- description: 'Instructs the Operator on whether to deploy a dedicated
- Identity Provider (Keycloak or RH-SSO instance). By default, a
- dedicated Identity Provider server is deployed as part of the
- Che installation. When `externalIdentityProvider` is `true`, no
- dedicated identity provider will be deployed by the Operator and
- you will need to provide details about the external identity provider
- you are about to use. See also all the other fields starting with:
- `identityProvider`.'
+ description: 'Instructs the Operator on whether or not to deploy
+ a dedicated Identity Provider (Keycloak or RH SSO instance). Instructs
+ the Operator on whether to deploy a dedicated Identity Provider
+ (Keycloak or RH-SSO instance). By default, a dedicated Identity
+ Provider server is deployed as part of the Che installation. When
+ `externalIdentityProvider` is `true`, no dedicated identity provider
+ will be deployed by the Operator and you will need to provide
+ details about the external identity provider you are about to
+ use. See also all the other fields starting with: `identityProvider`.'
type: boolean
identityProviderAdminUserName:
description: Overrides the name of the Identity Provider administrator
@@ -66,10 +67,10 @@
type: string
identityProviderClientId:
description: Name of a Identity provider, Keycloak or RH-SSO, `client-id`
- that is used for Che. This is useful to override it ONLY if you
- use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to the value of the
- `flavour` field suffixed with `-public`.
+ that is used for Che. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to the value of the `flavour`
+ field suffixed with `-public`.
type: string
identityProviderContainerResources:
description: Identity provider container custom settings.
@@ -121,16 +122,15 @@
type: object
identityProviderPassword:
description: Overrides the password of Keycloak administrator user.
- This is useful to override it ONLY if you use an external Identity
- Provider. See the `externalIdentityProvider` field. When omitted
- or left blank, it is set to an auto-generated password.
+ Override this when an external Identity Provider is in use. See
+ the `externalIdentityProvider` field. When omitted or left blank,
+ it is set to an auto-generated password.
type: string
identityProviderPostgresPassword:
description: Password for a Identity Provider, Keycloak or RH-SSO,
- to connect to the database. This is useful to override it ONLY
- if you use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to an auto-generated
- password.
+ to connect to the database. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to an auto-generated password.
type: string
identityProviderPostgresSecret:
description: 'The secret that contains `password` for the Identity
@@ -145,14 +145,20 @@
type: string
identityProviderRealm:
description: Name of a Identity provider, Keycloak or RH-SSO, realm
- that is used for Che. This is useful to override it ONLY if you
- use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to the value of the
- `flavour` field.
+ that is used for Che. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to the value of the `flavour`
+ field.
type: string
identityProviderRoute:
description: Route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -177,15 +183,26 @@
By default, this will be automatically calculated and set by the
Operator.
type: string
+ initialOpenShiftOAuthUser:
+ description: For operating with the OpenShift OAuth authentication,
+ create a new user account since the kubeadmin can not be used.
+ If the value is true, then a new OpenShift OAuth user will be
+ created for the HTPasswd identity provider. If the value is false
+ and the user has already been created, then it will be removed.
+ If value is an empty, then do nothing. The user's credentials
+ are stored in the `openshift-oauth-user-credentials` secret by
+ Operator. Note that this solution is Openshift 4 platform-specific.
+ type: boolean
oAuthClientName:
description: Name of the OpenShift `OAuthClient` resource used to
setup identity federation on the OpenShift side. Auto-generated
- if left blank. See also the `OpenShiftoAuth` field.
+ when left blank. See also the `OpenShiftoAuth` field.
type: string
oAuthSecret:
description: Name of the secret set in the OpenShift `OAuthClient`
resource used to setup identity federation on the OpenShift side.
- Auto-generated if left blank. See also the `OAuthClientName` field.
+ Auto-generated when left blank. See also the `OAuthClientName`
+ field.
type: string
openShiftoAuth:
description: 'Enables the integration of the identity provider (Keycloak
@@ -239,7 +256,7 @@
type: string
chePostgresHostName:
description: PostgreSQL Database host name that the Che server uses
- to connect to. Defaults to postgres. Override this value ONLY
+ to connect to. Defaults is `postgres`. Override this value ONLY
when using an external database. See field `externalDb`. In the
default case it will be automatically set by the Operator.
type: string
@@ -255,7 +272,7 @@
it will be automatically set by the Operator.
type: string
chePostgresSecret:
- description: 'The secret that contains PosgreSQL`user` and `password`
+ description: 'The secret that contains PostgreSQL`user` and `password`
that the Che server uses to connect to the DB. When the secret
is defined, the `chePostgresUser` and `chePostgresPassword` are
ignored. When the value is omitted or left blank, the one of following
@@ -278,12 +295,12 @@
are about to use. See also all the fields starting with: `chePostgres`.'
type: boolean
postgresImage:
- description: Overrides the container image used in the PosgreSQL
+ description: Overrides the container image used in the PostgreSQL
database deployment. This includes the image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
postgresImagePullPolicy:
- description: Overrides the image pull policy used in the PosgreSQL
+ description: Overrides the image pull policy used in the PostgreSQL
database deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
@@ -293,13 +310,14 @@
properties:
enable:
description: "Install and configure the Community Supported Kubernetes
- Image Puller Operator. If true and no spec is provided, it will
- create a default KubernetesImagePuller object to be managed by
- the Operator. If false, the KubernetesImagePuller object will
- be deleted, and the Operator will be uninstalled, regardless of
- whether a spec is provided. \n Note that while this the Operator
- and its behavior is community-supported, its payload may be commercially-supported
- if you use it for pulling commercially-supported images."
+ Image Puller Operator. When set to `true` and no spec is provided,
+ it will create a default KubernetesImagePuller object to be managed
+ by the Operator. When set to `false`, the KubernetesImagePuller
+ object will be deleted, and the Operator will be uninstalled,
+ regardless of whether a spec is provided. \n Note that while this
+ the Operator and its behavior is community-supported, its payload
+ may be commercially-supported for pulling commercially-supported
+ images."
type: boolean
spec:
description: A KubernetesImagePullerSpec to configure the image
@@ -337,8 +355,8 @@
`kubernetes.io/ingress.class` annotation on Che-related ingresses.'
type: string
ingressDomain:
- description: 'Global ingress domain for a K8S cluster. This MUST
- be explicitly specified: there are no defaults.'
+ description: 'Global ingress domain for a Kubernetes cluster. This
+ MUST be explicitly specified: there are no defaults.'
type: string
ingressStrategy:
description: 'Strategy for ingress creation. Options are: `multi-host`
@@ -363,9 +381,9 @@
configured by this property. The possible values are `native`,
which means that the server and workspaces are exposed using ingresses
on K8s or `gateway` where the server and workspaces are exposed
- using a custom gateway based on Traefik. All the endpoints whether
- backed by the ingress or gateway `route` always point to the subpaths
- on the same domain. Defaults to `native`.
+ using a custom gateway based on link:https://doc.traefik.io/traefik/[Traefik].
+ All the endpoints whether backed by the ingress or gateway `route`
+ always point to the subpaths on the same domain. Defaults to `native`.
type: string
tlsSecretName:
description: Name of a secret that will be used to setup ingress
@@ -419,9 +437,9 @@
type: string
cheFlavor:
description: Specifies a variation of the installation. The options
- are `che` for upstream Che installations, or `codeready` for CodeReady
- Workspaces installation. If not necessary, do not override the
- default value.
+ are `che` for upstream Che installations, or `codeready` for link:https://developers.redhat.com/products/codeready-workspaces/overview[CodeReady
+ Workspaces] installation. Override the default value only on necessary
+ occasions.
type: string
cheHost:
description: Public host name of the installed Che server. When
@@ -463,6 +481,12 @@
cheServerRoute:
description: The Che server route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -470,17 +494,17 @@
type: object
cheWorkspaceClusterRole:
description: Custom cluster role bound to the user for the Che workspaces.
- The default roles are used if this is omitted or left blank.
+ The default roles are used when omitted or left blank.
type: string
customCheProperties:
additionalProperties:
type: string
description: Map of additional environment variables that will be
- applied in the generated `che` configMap to be used by the Che
+ applied in the generated `che` ConfigMap to be used by the Che
server, in addition to the values already generated from other
fields of the `CheCluster` custom resource (CR). When `customCheProperties`
contains a property that would be normally generated in `che`
- configMap from other CR fields, the value defined in the `customCheProperties`
+ ConfigMap from other CR fields, the value defined in the `customCheProperties`
is used instead.
type: object
devfileRegistryCpuLimit:
@@ -520,6 +544,12 @@
devfileRegistryRoute:
description: The devfile registry route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -548,7 +578,7 @@
type: boolean
gitSelfSignedCert:
description: When enabled, the certificate from `che-git-self-signed-cert`
- configMap will be propagated to the Che components and provide
+ ConfigMap will be propagated to the Che components and provide
particular configuration for Git.
type: boolean
nonProxyHosts:
@@ -600,6 +630,12 @@
pluginRegistryRoute:
description: Plugin registry route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -607,9 +643,9 @@
type: object
pluginRegistryUrl:
description: Public URL of the plugin registry that serves sample
- ready-to-use devfiles. Set this ONLY if a use of an external devfile
- registry is needed. See the `externalPluginRegistry` field. By
- default, this will be automatically calculated by the Operator.
+ ready-to-use devfiles. Set this ONLY when a use of an external
+ devfile registry is needed. See the `externalPluginRegistry` field.
+ By default, this will be automatically calculated by the Operator.
type: string
proxyPassword:
description: Password of the proxy server. Only use when proxy configuration
@@ -645,7 +681,7 @@
type: string
selfSignedCert:
description: Deprecated. The value of this flag is ignored. The
- Che Operator will automatically detect if the router certificate
+ Che Operator will automatically detect whether the router certificate
is self-signed and propagate it to other components, such as the
Che server.
type: boolean
@@ -678,7 +714,7 @@
deployment. Defaults to 512Mi.
type: string
serverTrustStoreConfigMapName:
- description: Name of the configMap with public certificates to add
+ description: Name of the ConfigMap with public certificates to add
to Java trust store of the Che server. This is often required
when adding the OpenShift OAuth provider, which has HTTPS endpoint
signed with self-signed cert. The Che server must be aware of
@@ -687,7 +723,7 @@
singleHostGatewayConfigMapLabels:
additionalProperties:
type: string
- description: The labels that need to be present in the configMaps
+ description: The labels that need to be present in the ConfigMaps
representing the gateway configuration.
type: object
singleHostGatewayConfigSidecarImage:
@@ -712,11 +748,10 @@
type: boolean
workspaceNamespaceDefault:
description: Defines Kubernetes default namespace in which user's
- workspaces are created if user does not override it. It's possible
- to use `<username>`,`<userid>` and `<workspaceid>` placeholders,
- such as che-workspace-<username>. In that case, a new namespace
- will be created for each user or workspace. Is used by OpenShift
- infrastructure as well to specify Project.
+ workspaces are created for a case when a user does not override
+ it. It's possible to use `<username>`, `<userid>` and `<workspaceid>`
+ placeholders, such as che-workspace-<username>. In that case,
+ a new namespace will be created for each user or workspace.
type: string
type: object
storage:
@@ -725,14 +760,14 @@
properties:
postgresPVCStorageClassName:
description: Storage class for the Persistent Volume Claim dedicated
- to the PosgreSQL database. When omitted or left blank, a default
+ to the PostgreSQL database. When omitted or left blank, a default
storage class is used.
type: string
preCreateSubPaths:
description: Instructs the Che server to start a special Pod to
pre-create a sub-path in the Persistent Volumes. Defaults to `false`,
however it will need to enable it according to the configuration
- of your K8S cluster.
+ of your Kubernetes cluster.
type: boolean
pvcClaimSize:
description: Size of the persistent volume claim for workspaces.
@@ -771,8 +806,9 @@
description: Current installed Che version.
type: string
dbProvisioned:
- description: Indicates that a PosgreSQL instance has been correctly
- provisioned or not.
+ description: Indicates that a PostgreSQL instance has been correctly
+ provisioned or not. Indicates that a PostgreSQL instance has been
+ correctly provisioned or not.
type: boolean
devfileRegistryURL:
description: Public URL to the devfile registry.
@@ -797,6 +833,10 @@
description: A human readable message indicating details about why the
Pod is in this condition.
type: string
+ openShiftOAuthUserCredentialsSecret:
+ description: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ type: string
openShiftoAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the OpenShift OAuth.

View File

@ -0,0 +1,9 @@
annotations:
operators.operatorframework.io.bundle.channel.default.v1: stable
operators.operatorframework.io.bundle.channels.v1: stable
operators.operatorframework.io.bundle.manifests.v1: manifests/
operators.operatorframework.io.bundle.mediatype.v1: registry+v1
operators.operatorframework.io.bundle.metadata.v1: metadata/
operators.operatorframework.io.bundle.package.v1: eclipse-che-preview-kubernetes
operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
operators.operatorframework.io.metrics.project_layout: go

View File

@ -0,0 +1,11 @@
FROM scratch
LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1
LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/
LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/
LABEL operators.operatorframework.io.bundle.package.v1=eclipse-che-preview-openshift
LABEL operators.operatorframework.io.bundle.channels.v1=stable
LABEL operators.operatorframework.io.bundle.channel.default.v1=stable
COPY manifests /manifests/
COPY metadata /metadata/

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,806 @@
--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.26.2/eclipse-che-preview-openshift.v7.26.2.clusterserviceversion.yaml 2021-03-03 13:19:20.335367827 +0000
+++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.27.0/eclipse-che-preview-openshift.v7.27.0.clusterserviceversion.yaml 2021-03-03 13:42:03.902086051 +0000
@@ -19,6 +19,7 @@
"identityProviderPassword": "",
"identityProviderRealm": "",
"identityProviderURL": "",
+ "initialOpenShiftOAuthUser": true,
"oAuthClientName": "",
"oAuthSecret": ""
},
@@ -74,14 +75,14 @@
capabilities: Seamless Upgrades
categories: Developer Tools, OpenShift Optional
certified: "false"
- containerImage: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
- createdAt: "2021-02-24T12:59:37Z"
+ containerImage: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
+ createdAt: "2021-03-03T13:41:33Z"
description: A Kube-native development solution that delivers portable and collaborative
developer workspaces in OpenShift.
operatorframework.io/suggested-namespace: eclipse-che
repository: https://github.com/eclipse/che-operator
support: Eclipse Foundation
- name: eclipse-che-preview-openshift.v7.26.2
+ name: eclipse-che-preview-openshift.v7.27.0
namespace: placeholder
spec:
apiservicedefinitions: {}
@@ -134,6 +135,13 @@
path: message
x-descriptors:
- urn:alm:descriptor:text
+ - description: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ displayName: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ path: openShiftOAuthUserCredentialsSecret
+ x-descriptors:
+ - urn:alm:descriptor:text
- description: A brief CamelCase message indicating details about why the
Pod is in this state.
displayName: Reason
@@ -255,8 +263,16 @@
- apiGroups:
- config.openshift.io
resources:
- - infrastructures
- oauths
+ verbs:
+ - get
+ - list
+ - watch
+ - patch
+ - apiGroups:
+ - config.openshift.io
+ resources:
+ - infrastructures
- proxies
verbs:
- get
@@ -268,6 +284,13 @@
- users
verbs:
- list
+ - delete
+ - apiGroups:
+ - user.openshift.io
+ resources:
+ - identities
+ verbs:
+ - delete
- apiGroups:
- console.openshift.io
resources:
@@ -389,6 +412,7 @@
- secrets
verbs:
- list
+ - get
- create
- delete
- apiGroups:
@@ -516,19 +540,19 @@
- name: OPERATOR_NAME
value: che-operator
- name: CHE_VERSION
- value: 7.26.2
+ value: 7.27.0
- name: RELATED_IMAGE_che_server
- value: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
+ value: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
- name: RELATED_IMAGE_plugin_registry
- value: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
+ value: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
- name: RELATED_IMAGE_devfile_registry
- value: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
+ value: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
- name: RELATED_IMAGE_pvc_jobs
- value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
+ value: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- name: RELATED_IMAGE_postgres
value: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392
- name: RELATED_IMAGE_keycloak
- value: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
+ value: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
- name: RELATED_IMAGE_che_workspace_plugin_broker_metadata
value: quay.io/eclipse/che-plugin-metadata-broker@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
- name: RELATED_IMAGE_che_workspace_plugin_broker_artifacts
@@ -579,14 +603,14 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNJVG4YDGYLFGVTGCZLCMVSGKZJVGZTGIY3FGM4DOOLGMEZDEOBRMNRTENRQGQ4DQZBYME2DQODGMY3TOZLEGNSDIMDGG43TQZDEMY3Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNBXGJTGENRZMMZDINBTMMYDSNLEHE2GKOJUMJQWKMZUGYYTOODBGQZDIOJVGIYTQOBSGZTDMYLBMVQTQYTGGY4DOYRSMIYTKYJQG5QQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRQMI4DSMJWGMYDQOJWGFRDIOLBGFTDCN3CGJTDOM3GG44DCZBWGBSWMMBVGAZTMZTBGAYTGNTGGIYWENLDMI3GKOLFGRRDMNTGGBTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMBZGVRTENBQGU2TAMZTMUZDCOLEGVQTSZRWMZSTSOBTGVRDOOLDGVSDGNBRGZTDAZDGMJRDEMRYMQZDSNJXGEZWKOBRMQZDOYZWGYYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJWGQYGMOJVGAYWMOLBMUYWKM3DHFRDENZWMU3DEMBQME2WGM3BMJRTCMJVMEZTMYRSMMYGMZDEGZRTANRVGNSTQZJRHFRWINJYMY3Q____
@@ -595,18 +619,18 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDCMNSTEZJTHFTGKZJWMI4WKNDBHBRDIZJYGY4DCMZYGBRWKMRUGYZDMNZUGU4TOYJUHBRDQMLDGEZTCY3CMJTDANJVMRSDKZBQMMZQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMTFGQ4WMYLGMI4WCYJWGUYTSZTDGYZTAMJZME3TEYJUGUZDMMRSGJRDMOJQGVSWIMBRMRRTIOBUMMZWKOLGGUYTGMLBMUYDAYRVGQ3A____
value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
- name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_IBZWQYJSGU3DUY3EHA3TCNBZGUZTGN3DHFRGEYRSMYYTMOLBMM3GCY3GMQYGGNRQGBQWKNJWHA3GGNJSMZQTEZLCGAYTQYLCMU2WIZTCGBQWGMLGG43A____
value: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMBYGAZDKZLBMRRTENJZGQYTIMDFG43WINLEMJSWGNLEGY2WCZRYMVRTQNJRGJSTKMRWGY4TGNRXGQ2TSMRUMQ2TKZDEGQ3DONBYGJQQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZRTHE4GKM3GMZSDKMRQGBRTKNTCMY2TMYJWMY3WMOLFHBSGENDBMEZWMNRTHFQTMMJSGU4DKMDGGE3DSNBRGQ2TEOBSGYYGIY3FHBQQ____
@@ -619,28 +643,32 @@
value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDGMRRDANBQGI3GGYTFMRSGEZTFGUZTCOBUMFTGGZBWMZRTKY3CGYYTGMTBGIZGEZJVHAYTAYRRGNSDGODBGEZDKYLGMQYDQMZSGIYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNZQHAZTMZTEGJTGGMBRGE4TQYZRMEZTCZRUGRSDAYLGHFRWIZRSMQ3TINBVGAZTKYTFGU2GMMDCMM3WCZJSMNRGMZJSGYZGKMBSGMYQ____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMRVMIYDINZUGNRTOMRYMYZWGMZVGMYDGOJWGJQWMYJSMJQTQYRXGBRDIYJYGVTDQZJVG5RTKMBWGY4DSN3DGEZGIYJWGIYDINJRHA2A____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNBZGFRTMMTBGNQWGNZXGVSDKNBSGZSDOMTBGU4WCYZRHBRGIZBVGBTDKZRVMQ3DCZBQG5TGEZTCGM2GKMDDMQ3WMZLEGNSDIZDBGIYQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNTCHFRTOMZZMY2DQNZXGM4GCNLCMZRDEMDFGA2TEYJSGFRDIZLEMZTDIMRYHFRTOMZYGQ4TMNZQHBQWEZRYMFSGGNDEGU4DEMDEG44Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUMJUGY3DMZJRMVSDGYZSMNRGKNDBMRTDEZRVGYZTEYJWMFRWCNTFGRRTIYJSGM3GEODCME4WGYZTGU3WCNLFGMZDOYZTGM3GEZTFHA3A____
- value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUMIZGIMZWGYZTOYLGGY2GKMTDGMZTSMZTMYZTMZTFGZQWKYRRMEZWCOBXHFTGMNZQGQ2TKOJWGIYTAZJYGQ3WKYRXGM4DEYRSMVTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNTEGBRTINBQME3WIYZWGQ4DQMJWMZRWINBYHA2WEOLDMM4DKZRQMVRDAZRTHEYTMNJZMJRDSZTDHBQTSMJSGMYDONLCMVQTONJRGY2Q____
value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUZBUME3DCZJSGFRWENZVGE2TMZBVMY2DCYTGGYYWIODCGA4DOMDDGUYTCNZZMJSWMOJQME2WKYRXMVRDKOLGHFSWCYZQMIYTOMJTGE4Q____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
- name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUNDCMNSTEZJTHFTGKZJWMI4WKNDBHBRDIZJYGY4DCMZYGBRWKMRUGYZDMNZUGU4TOYJUHBRDQMLDGEZTCY3CMJTDANJVMRSDKZBQMMZQ____
value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: RELATED_IMAGE_che_theia_plugin_registry_image_IBZWQYJSGU3DUMDFMZRTSNDBGE3WCMDDGY2TKYRTG5SDSMDGGVQTEOLFME4DONTDG44GCZRZMY4WEZLCMMZGENBUHE2GEMJQGYYDOMRTMIYDOYZWMY4Q____
- value: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_IBZWQYJSGU3DUNJVME3TIMDBGNQTMYZWMU3WKMRTMY4TMZTEGBSDQZRSGNRGEYJVG4ZWCNBSME4TIYLCMUYDCYZWGY4TMZBTGIYDINLCME4DGM3CME3Q____
- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
+ - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_IBZWQYJSGU3DUYTCGQYDIZTGMFQTCMRVGY2WEZLCGEZGENDDMQ4DCNRQMNTGCM3GMYZWKZRTMJSTIMRQGQZTAYJWGU3DEZRRMZSTIOBWGM4WGYTGGFTA____
+ value: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ - name: RELATED_IMAGE_che_theia_plugin_registry_image_IBZWQYJSGU3DUZDCMFTGIMLEGVRTKZDBMI2WCMTCMM3DOZTGGYYDOOBVHBSTQYZWMQ3DKZLBGYZDANBQMU4TOZJXHBQTSNRQHE2GMNJZGVRDGYZVG4YQ____
+ value: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_IBZWQYJSGU3DUYLGGMYDEZBVG4ZDMYTCGNRTCOJSGAZDSMZUMNSWGMZXGMYTMNTDHEYDOYTEMM4GGMZYMI4DOYJXMI2GENZVGU3DAYJVHE4DMOJWGRQQ____
+ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
- name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_IBZWQYJSGU3DUOBTGQZTSYLFHFSWIY3BMEZWCOJXGUZTMNZUGIZTCNLBG44TCMTGHEZWKNBZHFTDIOJYGQ3WIYJQHE2GGNBYGAYDGMLFMFSTIYTBGQ3Q____
value: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
- name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_IBZWQYJSGU3DUMZTGY2TMMZVMQYWKMBUGAZTMOJXMRSWCMBWG42GEYTCMRRTONBZMM2GEZJSMRRDEOJYGE4GCOJTMI4GKMLFGUZWGM3DGUYTINBRGEZQ____
@@ -657,49 +685,49 @@
value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_IBZWQYJSGU3DUOBYMQYDCMRVHAZTOZBVME2TOY3CGI2GEYRTMVSDQMLFGZQTQZRUGEYTSYJVGA2DGYRXHEZDMYTEGJRGIMBRG4YTAOBVGRRTINDGGEYA____
value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_IBZWQYJSGU3DUOBSGAZWGNBXG5SDMZRWMM3DMNBYG4ZWKMRZHE3WMZJQMNRWKZBUMIYTKZJYMEZGGYZVMU4DIMJZGFTDOY3CGEZTSZBQHA4GGZJUGFSA____
- value: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
+ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_IBZWQYJSGU3DUMRTHE4WEN3BME2TKZJRHBSDIM3DGY4TOZJRHA3GMNDBMQYDAYRVGFRDOYRVGMZDQMRUGYYGMNZXGE4TANBYGU2TSMTCMFRDMYRQMFQQ____
+ value: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
- name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_IBZWQYJSGU3DUZLGMZQTSODEMQZGGZLEGMYGENJSGBRDENLBMZTGMMLBHA4DAZBRGIYWGZRWMIZWMODBMI2DEYJVGE2DSZLBMRQTINTCME3TSM3DMU4Q____
value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
- name: RELATED_IMAGE_che__centos__mongodb_36_centos7_devfile_registry_image_NRQXIZLTOQWWCOJRGVSGEN3CMVRWCOBXGE4TQZTDMQ3TQNRQGA4DMOJYHFTGKODBGMZDOYJRME2GMNRVGA4DAMRVMI3DIYLCGI4GMY3DG42DEM3CGI______
value: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2
- name: RELATED_IMAGE_che__centos__mysql_57_centos7_devfile_registry_image_NRQXIZLTOQWWKMBYMVSTIZBUGNRDOMZVGY3DANZWHA2WENRZMJSGKNRTGM2WKMRXMNTDEMDDGAZDAZRTGQ2WENTDGZRTKOJUGAYDCOBTHA4DENZWGQ______
value: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
- - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENROGI______
- value: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
+ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENZOGA______
+ value: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
- name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___
value: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_
value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
- image: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
+ image: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 10
@@ -875,12 +903,12 @@
maturity: stable
provider:
name: Eclipse Foundation
- replaces: eclipse-che-preview-openshift.v7.26.1
- version: 7.26.2
+ replaces: eclipse-che-preview-openshift.v7.26.2
+ version: 7.27.0
relatedImages:
- - name: che-operator-7.26.2
- image: quay.io/eclipse/che-operator@sha256:24c73101890325b907e26572850519c9fada7c27fa9a5e49d1bf4c360b89d6f6
- # tag: quay.io/eclipse/che-operator:7.26.2
+ - name: che-operator-7.27.0
+ image: quay.io/eclipse/che-operator@sha256:a221a552af38a066ec7650c1e768d54fb53ea3413df20d863be7fda524e5a715
+ # tag: quay.io/eclipse/che-operator:7.27.0
- name: traefik-v2.2.8
image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8
# tag: docker.io/traefik:v2.2.8
@@ -926,63 +954,63 @@
- name: che-buildkit-base-@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
# tag: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
- - name: che-cpp-rhel7-@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- image: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- # tag: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- - name: che-devfile-registry-7.26.2
- image: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
- # tag: quay.io/eclipse/che-devfile-registry:7.26.2
- - name: che-devfile-registry-@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
- image: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
- # tag: quay.io/eclipse/che-devfile-registry@sha256:075db7fd2ad1a9eb4b666fcb2e0aa43c661207ca1659dd845cf261259ec319e4
- - name: che-dotnet-2.2-@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- image: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- # tag: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- - name: che-dotnet-3.1-@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- image: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- # tag: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- - name: che-golang-1.14-@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- image: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- # tag: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- - name: che-java11-gradle-@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- image: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- # tag: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- - name: che-java11-maven-@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- image: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- # tag: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- - name: che-java8-maven-@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- image: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- # tag: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
+ - name: che-cpp-rhel7-@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ image: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ # tag: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ - name: che-devfile-registry-7.27.0
+ image: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
+ # tag: quay.io/eclipse/che-devfile-registry:7.27.0
+ - name: che-devfile-registry-@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
+ image: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
+ # tag: quay.io/eclipse/che-devfile-registry@sha256:6d4221a34ec8f40815a380d57e712facfc0d08eb5ed10dedd473868702d7a6ea
+ - name: che-dotnet-2.2-@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ image: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ # tag: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ - name: che-dotnet-3.1-@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ image: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ # tag: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ - name: che-golang-1.14-@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ image: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ # tag: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ - name: che-java11-gradle-@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ image: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ # tag: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ - name: che-java11-maven-@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ image: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ # tag: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ - name: che-java8-maven-@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ image: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ # tag: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
- name: che-jwtproxy-0.10.0
image: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033
# tag: quay.io/eclipse/che-jwtproxy:0.10.0
- name: che-jwtproxy-@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033
image: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033
# tag: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033
- - name: che-keycloak-7.26.2
- image: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
- # tag: quay.io/eclipse/che-keycloak:7.26.2
- - name: che-keycloak-@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
- image: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
- # tag: quay.io/eclipse/che-keycloak@sha256:22c3b7d937e9373aa9163ceddc3927569d151f642bf28395540b7c704ef32f4d
- - name: che-machine-exec-@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- image: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- # tag: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- - name: che-nodejs10-community-@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- image: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- # tag: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- - name: che-nodejs10-ubi-@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- image: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- - name: che-nodejs12-community-@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- image: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- # tag: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- - name: che-nodejs8-centos-@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- image: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- # tag: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- - name: che-php-7-@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- image: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- # tag: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
+ - name: che-keycloak-7.27.0
+ image: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
+ # tag: quay.io/eclipse/che-keycloak:7.27.0
+ - name: che-keycloak-@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
+ image: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
+ # tag: quay.io/eclipse/che-keycloak@sha256:4690124923e52becd8f26434df301b8dc5c943513d033377acc2d5657c7402a7
+ - name: che-machine-exec-@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ image: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ # tag: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ - name: che-nodejs10-community-@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ image: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ # tag: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ - name: che-nodejs10-ubi-@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ image: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ - name: che-nodejs12-community-@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ image: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ # tag: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ - name: che-nodejs8-centos-@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ image: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ # tag: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ - name: che-php-7-@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ image: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ # tag: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
- name: che-plugin-artifacts-broker-v3.4.0
image: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58
# tag: quay.io/eclipse/che-plugin-artifacts-broker:v3.4.0
@@ -995,24 +1023,27 @@
- name: che-plugin-metadata-broker-@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
image: quay.io/eclipse/che-plugin-metadata-broker@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
# tag: quay.io/eclipse/che-plugin-metadata-broker@sha256:df1ea2eadb28dbc97761adf4ea984af5ca941025a67b39c6abe373816a84bba9
- - name: che-plugin-registry-7.26.2
- image: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
- # tag: quay.io/eclipse/che-plugin-registry:7.26.2
- - name: che-plugin-registry-@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
- image: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
- # tag: quay.io/eclipse/che-plugin-registry@sha256:012f507619f94b34908db2c39555bf379e754bd329107775d6f53841dcf51e9b
+ - name: che-plugin-registry-7.27.0
+ image: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
+ # tag: quay.io/eclipse/che-plugin-registry:7.27.0
+ - name: che-plugin-registry-@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
+ image: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
+ # tag: quay.io/eclipse/che-plugin-registry@sha256:5a98f3cf14ccc0372686fdc1dab9a75c30a72f491089c39e8fb4fdfc40b688f2
- name: che-plugin-sidecar-@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
- name: che-plugin-sidecar-@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- name: che-plugin-sidecar-@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7
image: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7
+ - name: che-plugin-sidecar-@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: che-plugin-sidecar-@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df
image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df
@@ -1022,9 +1053,6 @@
- name: che-plugin-sidecar-@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701
image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701
- - name: che-plugin-sidecar-@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- name: che-plugin-sidecar-@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
@@ -1046,9 +1074,6 @@
- name: che-plugin-sidecar-@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- name: che-plugin-sidecar-@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b
image: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b
@@ -1058,6 +1083,15 @@
- name: che-plugin-sidecar-@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a
image: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a
+ - name: che-plugin-sidecar-@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ - name: che-plugin-sidecar-@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114
image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114
@@ -1070,42 +1104,39 @@
- name: che-plugin-sidecar-@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a
image: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a
- - name: che-python-3.8-@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- image: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- # tag: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- - name: che-quarkus-@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- image: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- # tag: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- - name: che-rust-1.39-@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
- image: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
- # tag: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
- - name: che-server-7.26.2
- image: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
- # tag: quay.io/eclipse/che-server:7.26.2
- - name: che-server-@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
- image: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
- # tag: quay.io/eclipse/che-server@sha256:31761827f7059c26cbf6802d336c06fac3393ea052fd8440b4fd9d3af7902240
+ - name: che-python-3.8-@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ image: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ # tag: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ - name: che-quarkus-@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ image: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ # tag: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ - name: che-rust-1.39-@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
+ image: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
+ # tag: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
+ - name: che-server-7.27.0
+ image: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
+ # tag: quay.io/eclipse/che-server:7.27.0
+ - name: che-server-@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
+ image: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
+ # tag: quay.io/eclipse/che-server@sha256:de879f2de7b76fb01fbd4e2022522fa1e230354d6229ea328d6607a4d4eb91be
- name: che-sidecar-workspace-data-sync-@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
# tag: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- - name: che-theia-endpoint-runtime-binary-@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- - name: che-theia-@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- image: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- # tag: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
+ - name: che-theia-endpoint-runtime-binary-@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ - name: che-theia-@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ image: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ # tag: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
- name: che-tls-secret-creator-@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5
image: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5
# tag: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5
- name: mta-vscode-extension-@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
image: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
# tag: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
- - name: ubi8-minimal-8.3-230
- image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
- # tag: registry.access.redhat.com/ubi8-minimal:8.3-230
- - name: ubi8-minimal-@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
- image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
- # tag: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a
+ - name: ubi8-minimal-8.3-291
+ image: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
+ # tag: registry.access.redhat.com/ubi8-minimal:8.3-291
- name: ubi8-minimal-@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
image: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
# tag: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
@@ -1145,18 +1176,18 @@
- name: che-plugin-sidecar-@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7
- - name: che-plugin-sidecar-@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:20b8916308961b49a1f17b2f73f781d60ef05036fa0136f21b5cb6e9e4b66f0f
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661
@@ -1169,24 +1200,24 @@
- name: che-plugin-sidecar-@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546
- name: mta-vscode-extension-@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
image: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
# tag: quay.io/windupeng/mta-vscode-extension@sha256:cd871495337c9bbb2f169ac6acfd0c600ae5686c52fa2eb018abe5dfb0ac1f76
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: che-plugin-sidecar-@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a
@@ -1205,39 +1236,45 @@
- name: che-plugin-sidecar-@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- - name: che-plugin-sidecar-@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ - name: che-plugin-sidecar-@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:25b04743c728f3c35303962afa2ba8b70b4a85f8e57c5066897c12da62045184
- name: che-plugin-sidecar-@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21
- name: che-plugin-sidecar-@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- - name: che-plugin-sidecar-@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ - name: che-plugin-sidecar-@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4b2d36637af64e2c33933f36fe6aeb1a3a879ff7045596210e847eb7382b2ef
- name: che-plugin-sidecar-@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165
+ - name: che-plugin-sidecar-@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d4a61e21cb75156d5f41bf61d8b0870c51179bef90a5eb7eb59f9eac0b171319
- name: che-plugin-sidecar-@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
# tag: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3
- - name: che-theia-@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- image: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- # tag: quay.io/eclipse/che-theia@sha256:0efc94a17a0c655b37d90f5a29ea876c78af9f9bebc2b4494b1060723b07c6f9
- - name: che-theia-endpoint-runtime-binary-@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:55a740a3a6c6e7e23f96fd0d8f23bba573a42a94abe01c6696d32045ba833ba7
+ - name: che-plugin-sidecar-@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ image: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ # tag: quay.io/eclipse/che-plugin-sidecar@sha256:bb404ffaa12565beb12b4cd8160cfa3ff3ef3be420430a6562f1fe48639cbf1f
+ - name: che-theia-@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ image: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ # tag: quay.io/eclipse/che-theia@sha256:dbafd1d5c5dab5a2bc67ff607858e8c6d65ea62040e97e78a96094f595b3c571
+ - name: che-theia-endpoint-runtime-binary-@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
+ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:af302d5726bb3c19202934cec373166c907bdc8c38b87a7b4b75560a5986964a
- name: che-editor-jupyter-@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
image: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
# tag: index.docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47
@@ -1262,9 +1299,9 @@
- name: che-sidecar-workspace-data-sync-@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
# tag: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10
- - name: che-machine-exec-@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- image: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
- # tag: quay.io/eclipse/che-machine-exec@sha256:8203c477d6f6c664873e2997fe0cced4b15e8a2cc5e84191f7cb139d088ce41d
+ - name: che-machine-exec-@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ image: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
+ # tag: quay.io/eclipse/che-machine-exec@sha256:2399b7aa55e18d43c697e186f4ad00b51b7b53282460f77190485592bab6b0aa
- name: che-buildkit-base-@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
# tag: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9
@@ -1274,51 +1311,51 @@
- name: che--centos--mysql-57-centos7-latest-e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
image: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
# tag: quay.io/eclipse/che--centos--mysql-57-centos7:latest-e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764
- - name: che-cpp-rhel7-7.26.2
- image: quay.io/eclipse/che-cpp-rhel7@sha256:414873fe612f9db17efdf550d93d78a7cfeaf267e03eac967ebc78b96b079dd1
- # tag: quay.io/eclipse/che-cpp-rhel7:7.26.2
- - name: che-dotnet-2.2-7.26.2
- image: quay.io/eclipse/che-dotnet-2.2@sha256:f4be8dbcd5ee75778a3779665cb19298c62cdce60e3ac329ee4aa4afb0705159
- # tag: quay.io/eclipse/che-dotnet-2.2:7.26.2
- - name: che-dotnet-3.1-7.26.2
- image: quay.io/eclipse/che-dotnet-3.1@sha256:5e184d0ff4c9d41d8111761d70e3bed6ac169ece3c618d2c3c85e69be8622644
- # tag: quay.io/eclipse/che-dotnet-3.1:7.26.2
- - name: che-golang-1.14-7.26.2
- image: quay.io/eclipse/che-golang-1.14@sha256:518abbe0a51dacb349b2270aff797ad926aed0bb20d1466b35f7e50e6342d808
- # tag: quay.io/eclipse/che-golang-1.14:7.26.2
- - name: che-java11-gradle-7.26.2
- image: quay.io/eclipse/che-java11-gradle@sha256:a9b423a015c06b6c9458d1222c8be93b2f599129001a443b8a11964fe3c0d2aa
- # tag: quay.io/eclipse/che-java11-gradle:7.26.2
- - name: che-java11-maven-7.26.2
- image: quay.io/eclipse/che-java11-maven@sha256:c4a4cb0e3230c4cbfa27cb0cf9e63a89ff3d3b40d999164bee1cbbb0b9d90318
- # tag: quay.io/eclipse/che-java11-maven:7.26.2
- - name: che-java8-maven-7.26.2
- image: quay.io/eclipse/che-java8-maven@sha256:1cbbfda18b5abfc032ae5ec1c4acdf9f65579919ff28efbb8ce6a028013935b8
- # tag: quay.io/eclipse/che-java8-maven:7.26.2
- - name: che-nodejs10-community-7.26.2
- image: quay.io/eclipse/che-nodejs10-community@sha256:b45f931abc2cbb6020817f70cb5ac5cb7bb395b9f8ec4feb54b690f0abdae6f3
- # tag: quay.io/eclipse/che-nodejs10-community:7.26.2
- - name: che-nodejs10-ubi-7.26.2
- image: quay.io/eclipse/che-nodejs10-ubi@sha256:c41a264fc4122f25b7cfebc96da6479121b23588a8d15d64849e83b31e37c565
- # tag: quay.io/eclipse/che-nodejs10-ubi:7.26.2
- - name: che-nodejs12-community-7.26.2
- image: quay.io/eclipse/che-nodejs12-community@sha256:4b12e2eb9922e08da455f4e38ef06f6aab0f1c63761c0bfa9f0f971ad919c876
- # tag: quay.io/eclipse/che-nodejs12-community:7.26.2
- - name: che-nodejs8-centos-7.26.2
- image: quay.io/eclipse/che-nodejs8-centos@sha256:2ef2bbaf41511d238dff0660602a3306a11e512f0f34bb4d5e61667c351c6a8a
- # tag: quay.io/eclipse/che-nodejs8-centos:7.26.2
- - name: che-php-7-7.26.2
- image: quay.io/eclipse/che-php-7@sha256:7d5fd133148223602f399723bac266954922fe9dabbd368c36c011f12de733a3
- # tag: quay.io/eclipse/che-php-7:7.26.2
- - name: che-python-3.8-7.26.2
- image: quay.io/eclipse/che-python-3.8@sha256:387bd6f57ac5bb8acd70f285518fcea0e56705070f5228ef6cd9083d1a09f6d3
- # tag: quay.io/eclipse/che-python-3.8:7.26.2
- - name: che-quarkus-7.26.2
- image: quay.io/eclipse/che-quarkus@sha256:982ef32360aad4eb3224366df0efee3ce025ea7682cdc2681f033686d48731f8
- # tag: quay.io/eclipse/che-quarkus:7.26.2
- - name: che-rust-1.39-7.26.2
- image: quay.io/eclipse/che-rust-1.39@sha256:c5c38d025b1cca59e3544fc74861949d0aaba0590cbb265b596414282299fd1f
- # tag: quay.io/eclipse/che-rust-1.39:7.26.2
+ - name: che-cpp-rhel7-7.27.0
+ image: quay.io/eclipse/che-cpp-rhel7@sha256:26725fe9789b66d4e52a204367dd5cf8236dc25f726b9d06003da8980b33fb96
+ # tag: quay.io/eclipse/che-cpp-rhel7:7.27.0
+ - name: che-dotnet-2.2-7.27.0
+ image: quay.io/eclipse/che-dotnet-2.2@sha256:350ef079fa6ee2ba85352b34d363baf04be78daf604293ba0c7807c4dd368946
+ # tag: quay.io/eclipse/che-dotnet-2.2:7.27.0
+ - name: che-dotnet-3.1-7.27.0
+ image: quay.io/eclipse/che-dotnet-3.1@sha256:9c8a29cec688470524c06215efc609fb7de6b696861c354010aa9fccb2741299
+ # tag: quay.io/eclipse/che-dotnet-3.1:7.27.0
+ - name: che-golang-1.14-7.27.0
+ image: quay.io/eclipse/che-golang-1.14@sha256:e207ff16f7d3d1e903ce435554bbd2c12f7264470e8cbc600e2359409915c8a9
+ # tag: quay.io/eclipse/che-golang-1.14:7.27.0
+ - name: che-java11-gradle-7.27.0
+ image: quay.io/eclipse/che-java11-gradle@sha256:1f16b4f67dd0543a5b4c9ae62e393d7e8f9f519ef4f74581afaa3d1509cd3466
+ # tag: quay.io/eclipse/che-java11-gradle:7.27.0
+ - name: che-java11-maven-7.27.0
+ image: quay.io/eclipse/che-java11-maven@sha256:066d6ce9e3452e65462f9840fb4e975728896df936efdec8120a5b155d9d7a9f
+ # tag: quay.io/eclipse/che-java11-maven:7.27.0
+ - name: che-java8-maven-7.27.0
+ image: quay.io/eclipse/che-java8-maven@sha256:88eae0df5edc256f1855a650879e61a6aaba02c38eeaca5828c154e58d3439ed
+ # tag: quay.io/eclipse/che-java8-maven:7.27.0
+ - name: che-nodejs10-community-7.27.0
+ image: quay.io/eclipse/che-nodejs10-community@sha256:84b3014b590d1061aa9c46984539b847594643f6c9c3071cc49229385ba62a7e
+ # tag: quay.io/eclipse/che-nodejs10-community:7.27.0
+ - name: che-nodejs10-ubi-7.27.0
+ image: quay.io/eclipse/che-nodejs10-ubi@sha256:31f1b97f4ee9da2e0515e5bd1c1fa6a352c65df678f0e9078aea75228e73efae
+ # tag: quay.io/eclipse/che-nodejs10-ubi:7.27.0
+ - name: che-nodejs12-community-7.27.0
+ image: quay.io/eclipse/che-nodejs12-community@sha256:339af099e40f4049f9d77ad4a036143dd2d001e783b6fcd9da0edeae417ec355
+ # tag: quay.io/eclipse/che-nodejs12-community:7.27.0
+ - name: che-nodejs8-centos-7.27.0
+ image: quay.io/eclipse/che-nodejs8-centos@sha256:eae73503c99df53e26e8741c44017484622aa4b4f333ff3601f1c0c522c915f7
+ # tag: quay.io/eclipse/che-nodejs8-centos:7.27.0
+ - name: che-php-7-7.27.0
+ image: quay.io/eclipse/che-php-7@sha256:4e6de864c960b85465b2934cd793d75987d1065625b362385fb71d25307dce15
+ # tag: quay.io/eclipse/che-php-7:7.27.0
+ - name: che-python-3.8-7.27.0
+ image: quay.io/eclipse/che-python-3.8@sha256:960c0979f03937e83319f0d6230759cede7ca8633ffe1e434dea118420b55b65
+ # tag: quay.io/eclipse/che-python-3.8:7.27.0
+ - name: che-quarkus-7.27.0
+ image: quay.io/eclipse/che-quarkus@sha256:9bd65d4f088544f0757ae8f149c534975f92b1812d22c838a47a607235a0c4d7
+ # tag: quay.io/eclipse/che-quarkus:7.27.0
+ - name: che-rust-1.39-7.27.0
+ image: quay.io/eclipse/che-rust-1.39@sha256:744268ab7e34660ef0d28cf07b0e7db6d48c29413593723e6ed7ef243e750c07
+ # tag: quay.io/eclipse/che-rust-1.39:7.27.0
- name: ubi8-minimal-8.3
image: registry.access.redhat.com/ubi8-minimal@sha256:fdfb0770bff33e0f97d78583efd68b546a19d0a4b0ac23eef25ef261bca3e975
# tag: registry.access.redhat.com/ubi8-minimal:8.3

View File

@ -0,0 +1,858 @@
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: checlusters.org.eclipse.che
spec:
group: org.eclipse.che
names:
kind: CheCluster
listKind: CheClusterList
plural: checlusters
singular: checluster
preserveUnknownFields: false
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
description: The `CheCluster` custom resource allows defining and managing a
Che server installation
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: Desired configuration of the Che installation. Based on these
settings, the Operator automatically creates and maintains several ConfigMaps
that will contain the appropriate environment variables the various components
of the Che installation. These generated ConfigMaps must NOT be updated
manually.
properties:
auth:
description: Configuration settings related to the Authentication used
by the Che installation.
properties:
externalIdentityProvider:
description: 'Instructs the Operator on whether or not to deploy
a dedicated Identity Provider (Keycloak or RH SSO instance). Instructs
the Operator on whether to deploy a dedicated Identity Provider
(Keycloak or RH-SSO instance). By default, a dedicated Identity
Provider server is deployed as part of the Che installation. When
`externalIdentityProvider` is `true`, no dedicated identity provider
will be deployed by the Operator and you will need to provide
details about the external identity provider you are about to
use. See also all the other fields starting with: `identityProvider`.'
type: boolean
identityProviderAdminUserName:
description: Overrides the name of the Identity Provider administrator
user. Defaults to `admin`.
type: string
identityProviderClientId:
description: Name of a Identity provider, Keycloak or RH-SSO, `client-id`
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field suffixed with `-public`.
type: string
identityProviderContainerResources:
description: Identity provider container custom settings.
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
identityProviderImage:
description: Overrides the container image used in the Identity
Provider, Keycloak or RH-SSO, deployment. This includes the image
tag. Omit it or leave it empty to use the default container image
provided by the Operator.
type: string
identityProviderImagePullPolicy:
description: Overrides the image pull policy used in the Identity
Provider, Keycloak or RH-SSO, deployment. Default value is `Always`
for `nightly` or `latest` images, and `IfNotPresent` in other
cases.
type: string
identityProviderIngress:
description: Ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderPassword:
description: Overrides the password of Keycloak administrator user.
Override this when an external Identity Provider is in use. See
the `externalIdentityProvider` field. When omitted or left blank,
it is set to an auto-generated password.
type: string
identityProviderPostgresPassword:
description: Password for a Identity Provider, Keycloak or RH-SSO,
to connect to the database. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to an auto-generated password.
type: string
identityProviderPostgresSecret:
description: 'The secret that contains `password` for the Identity
Provider, Keycloak or RH-SSO, to connect to the database. When
the secret is defined, the `identityProviderPostgresPassword`
is ignored. When the value is omitted or left blank, the one of
following scenarios applies: 1. `identityProviderPostgresPassword`
is defined, then it will be used to connect to the database. 2.
`identityProviderPostgresPassword` is not defined, then a new
secret with the name `che-identity-postgres-secret` will be created
with an auto-generated value for `password`.'
type: string
identityProviderRealm:
description: Name of a Identity provider, Keycloak or RH-SSO, realm
that is used for Che. Override this when an external Identity
Provider is in use. See the `externalIdentityProvider` field.
When omitted or left blank, it is set to the value of the `flavour`
field.
type: string
identityProviderRoute:
description: Route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
identityProviderSecret:
description: 'The secret that contains `user` and `password` for
Identity Provider. When the secret is defined, the `identityProviderAdminUserName`
and `identityProviderPassword` are ignored. When the value is
omitted or left blank, the one of following scenarios applies:
1. `identityProviderAdminUserName` and `identityProviderPassword`
are defined, then they will be used. 2. `identityProviderAdminUserName`
or `identityProviderPassword` are not defined, then a new secret
with the name `che-identity-secret` will be created with default
value `admin` for `user` and with an auto-generated value for
`password`.'
type: string
identityProviderURL:
description: Public URL of the Identity Provider server (Keycloak
/ RH-SSO server). Set this ONLY when a use of an external Identity
Provider is needed. See the `externalIdentityProvider` field.
By default, this will be automatically calculated and set by the
Operator.
type: string
initialOpenShiftOAuthUser:
description: For operating with the OpenShift OAuth authentication,
create a new user account since the kubeadmin can not be used.
If the value is true, then a new OpenShift OAuth user will be
created for the HTPasswd identity provider. If the value is false
and the user has already been created, then it will be removed.
If value is an empty, then do nothing. The user's credentials
are stored in the `openshift-oauth-user-credentials` secret by
Operator. Note that this solution is Openshift 4 platform-specific.
type: boolean
oAuthClientName:
description: Name of the OpenShift `OAuthClient` resource used to
setup identity federation on the OpenShift side. Auto-generated
when left blank. See also the `OpenShiftoAuth` field.
type: string
oAuthSecret:
description: Name of the secret set in the OpenShift `OAuthClient`
resource used to setup identity federation on the OpenShift side.
Auto-generated when left blank. See also the `OAuthClientName`
field.
type: string
openShiftoAuth:
description: 'Enables the integration of the identity provider (Keycloak
/ RHSSO) with OpenShift OAuth. Empty value on OpenShift by default.
This will allow users to directly login with their OpenShift user
through the OpenShift login, and have their workspaces created
under personal OpenShift namespaces. WARNING: the `kubeadmin`
user is NOT supported, and logging through it will NOT allow accessing
the Che Dashboard.'
type: boolean
updateAdminPassword:
description: Forces the default `admin` Che user to update password
on first login. Defaults to `false`.
type: boolean
type: object
database:
description: Configuration settings related to the database used by
the Che installation.
properties:
chePostgresContainerResources:
description: PostgreSQL container custom settings
properties:
limits:
description: Limits describes the maximum amount of compute
resources allowed.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
request:
description: Requests describes the minimum amount of compute
resources required.
properties:
cpu:
description: CPU, in cores. (500m = .5 cores)
type: string
memory:
description: Memory, in bytes. (500Gi = 500GiB = 500 * 1024
* 1024 * 1024)
type: string
type: object
type: object
chePostgresDb:
description: PostgreSQL database name that the Che server uses to
connect to the DB. Defaults to `dbche`.
type: string
chePostgresHostName:
description: PostgreSQL Database host name that the Che server uses
to connect to. Defaults is `postgres`. Override this value ONLY
when using an external database. See field `externalDb`. In the
default case it will be automatically set by the Operator.
type: string
chePostgresPassword:
description: PostgreSQL password that the Che server uses to connect
to the DB. When omitted or left blank, it will be set to an automatically
generated value.
type: string
chePostgresPort:
description: PostgreSQL Database port that the Che server uses to
connect to. Defaults to 5432. Override this value ONLY when using
an external database. See field `externalDb`. In the default case
it will be automatically set by the Operator.
type: string
chePostgresSecret:
description: 'The secret that contains PostgreSQL`user` and `password`
that the Che server uses to connect to the DB. When the secret
is defined, the `chePostgresUser` and `chePostgresPassword` are
ignored. When the value is omitted or left blank, the one of following
scenarios applies: 1. `chePostgresUser` and `chePostgresPassword`
are defined, then they will be used to connect to the DB. 2. `chePostgresUser`
or `chePostgresPassword` are not defined, then a new secret with
the name `che-postgres-secret` will be created with default value
of `pgche` for `user` and with an auto-generated value for `password`.'
type: string
chePostgresUser:
description: PostgreSQL user that the Che server uses to connect
to the DB. Defaults to `pgche`.
type: string
externalDb:
description: 'Instructs the Operator on whether to deploy a dedicated
database. By default, a dedicated PostgreSQL database is deployed
as part of the Che installation. When `externalDb` is `true`,
no dedicated database will be deployed by the Operator and you
will need to provide connection details to the external DB you
are about to use. See also all the fields starting with: `chePostgres`.'
type: boolean
postgresImage:
description: Overrides the container image used in the PostgreSQL
database deployment. This includes the image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
postgresImagePullPolicy:
description: Overrides the image pull policy used in the PostgreSQL
database deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
type: object
imagePuller:
description: Kubernetes Image Puller configuration
properties:
enable:
description: "Install and configure the Community Supported Kubernetes\
\ Image Puller Operator. When set to `true` and no spec is provided,\
\ it will create a default KubernetesImagePuller object to be\
\ managed by the Operator. When set to `false`, the KubernetesImagePuller\
\ object will be deleted, and the Operator will be uninstalled,\
\ regardless of whether a spec is provided. \n Note that while\
\ this the Operator and its behavior is community-supported, its\
\ payload may be commercially-supported for pulling commercially-supported\
\ images."
type: boolean
spec:
description: A KubernetesImagePullerSpec to configure the image
puller in the CheCluster
properties:
cachingCPULimit:
type: string
cachingCPURequest:
type: string
cachingIntervalHours:
type: string
cachingMemoryLimit:
type: string
cachingMemoryRequest:
type: string
configMapName:
type: string
daemonsetName:
type: string
deploymentName:
type: string
images:
type: string
nodeSelector:
type: string
type: object
type: object
k8s:
description: Configuration settings specific to Che installations made
on upstream Kubernetes.
properties:
ingressClass:
description: 'Ingress class that will define the which controller
will manage ingresses. Defaults to `nginx`. NB: This drives the
`kubernetes.io/ingress.class` annotation on Che-related ingresses.'
type: string
ingressDomain:
description: 'Global ingress domain for a Kubernetes cluster. This
MUST be explicitly specified: there are no defaults.'
type: string
ingressStrategy:
description: 'Strategy for ingress creation. Options are: `multi-host`
(host is explicitly provided in ingress), `single-host` (host
is provided, path-based rules) and `default-host` (no host is
provided, path-based rules). Defaults to `multi-host` Deprecated
in favor of `serverExposureStrategy` in the `server` section,
which defines this regardless of the cluster type. When both are
defined, the `serverExposureStrategy` option takes precedence.'
type: string
securityContextFsGroup:
description: The FSGroup in which the Che Pod and workspace Pods
containers runs in. Default value is `1724`.
type: string
securityContextRunAsUser:
description: ID of the user the Che Pod and workspace Pods containers
run as. Default value is `1724`.
type: string
singleHostExposureType:
description: When the serverExposureStrategy is set to `single-host`,
the way the server, registries and workspaces are exposed is further
configured by this property. The possible values are `native`,
which means that the server and workspaces are exposed using ingresses
on K8s or `gateway` where the server and workspaces are exposed
using a custom gateway based on link:https://doc.traefik.io/traefik/[Traefik].
All the endpoints whether backed by the ingress or gateway `route`
always point to the subpaths on the same domain. Defaults to `native`.
type: string
tlsSecretName:
description: Name of a secret that will be used to setup ingress
TLS termination when TLS is enabled. When the field is empty string,
the default cluster certificate will be used. See also the `tlsSupport`
field.
type: string
type: object
metrics:
description: Configuration settings related to the metrics collection
used by the Che installation.
properties:
enable:
description: Enables `metrics` the Che server endpoint. Default
to `true`.
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container
registry to pull images from. This value overrides the container
registry host name defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Che in a restricted environment.
type: string
airGapContainerRegistryOrganization:
description: Optional repository name of an alternate container
registry to pull images from. This value overrides the container
registry organization defined in all the default container images
involved in a Che deployment. This is particularly useful to install
Eclipse Che in a restricted environment.
type: string
allowUserDefinedWorkspaceNamespaces:
description: Defines that a user is allowed to specify a Kubernetes
namespace, or an OpenShift project, which differs from the default.
It's NOT RECOMMENDED to set to `true` without OpenShift OAuth
configured. The OpenShift infrastructure also uses this property.
type: boolean
cheClusterRoles:
description: A comma-separated list of ClusterRoles that will be
assigned to Che ServiceAccount. Be aware that the Che Operator
has to already have all permissions in these ClusterRoles to grant
them.
type: string
cheDebug:
description: Enables the debug mode for Che server. Defaults to
`false`.
type: string
cheFlavor:
description: Specifies a variation of the installation. The options
are `che` for upstream Che installations, or `codeready` for link:https://developers.redhat.com/products/codeready-workspaces/overview[CodeReady
Workspaces] installation. Override the default value only on necessary
occasions.
type: string
cheHost:
description: Public host name of the installed Che server. When
value is omitted, the value it will be automatically set by the
Operator. See the `cheHostTLSSecret` field.
type: string
cheHostTLSSecret:
description: Name of a secret containing certificates to secure
ingress or route for the custom host name of the installed Che
server. See the `cheHost` field.
type: string
cheImage:
description: Overrides the container image used in Che deployment.
This does NOT include the container image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
cheImagePullPolicy:
description: Overrides the image pull policy used in Che deployment.
Default value is `Always` for `nightly` or `latest` images, and
`IfNotPresent` in other cases.
type: string
cheImageTag:
description: Overrides the tag of the container image used in Che
deployment. Omit it or leave it empty to use the default image
tag provided by the Operator.
type: string
cheLogLevel:
description: 'Log level for the Che server: `INFO` or `DEBUG`. Defaults
to `INFO`.'
type: string
cheServerIngress:
description: The Che server ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheServerRoute:
description: The Che server route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
cheWorkspaceClusterRole:
description: Custom cluster role bound to the user for the Che workspaces.
The default roles are used when omitted or left blank.
type: string
customCheProperties:
additionalProperties:
type: string
description: Map of additional environment variables that will be
applied in the generated `che` ConfigMap to be used by the Che
server, in addition to the values already generated from other
fields of the `CheCluster` custom resource (CR). When `customCheProperties`
contains a property that would be normally generated in `che`
ConfigMap from other CR fields, the value defined in the `customCheProperties`
is used instead.
type: object
devfileRegistryCpuLimit:
description: Overrides the CPU limit used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
devfileRegistryCpuRequest:
description: Overrides the CPU request used in the devfile registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
devfileRegistryImage:
description: Overrides the container image used in the devfile registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
devfileRegistryIngress:
description: The devfile registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryMemoryLimit:
description: Overrides the memory limit used in the devfile registry
deployment. Defaults to 256Mi.
type: string
devfileRegistryMemoryRequest:
description: Overrides the memory request used in the devfile registry
deployment. Defaults to 16Mi.
type: string
devfileRegistryPullPolicy:
description: Overrides the image pull policy used in the devfile
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
devfileRegistryRoute:
description: The devfile registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
devfileRegistryUrl:
description: Public URL of the devfile registry, that serves sample,
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalDevfileRegistry`
field. By default, this will be automatically calculated by the
Operator.
type: string
externalDevfileRegistry:
description: Instructs the Operator on whether to deploy a dedicated
devfile registry server. By default, a dedicated devfile registry
server is started. When `externalDevfileRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `devfileRegistryUrl` field
type: boolean
externalPluginRegistry:
description: Instructs the Operator on whether to deploy a dedicated
plugin registry server. By default, a dedicated plugin registry
server is started. When `externalPluginRegistry` is `true`, no
such dedicated server will be started by the Operator and you
will have to manually set the `pluginRegistryUrl` field.
type: boolean
gitSelfSignedCert:
description: When enabled, the certificate from `che-git-self-signed-cert`
ConfigMap will be propagated to the Che components and provide
particular configuration for Git.
type: boolean
nonProxyHosts:
description: 'List of hosts that will be reached directly, bypassing
the proxy. Specify wild card domain use the following form `.<DOMAIN>`
and `|` as delimiter, for example: `localhost|.my.host.com|123.42.12.32`
Only use when configuring a proxy is required. Operator respects
OpenShift cluster wide proxy configuration and no additional configuration
is required, but defining `nonProxyHosts` in a custom resource
leads to merging non proxy hosts lists from the cluster proxy
configuration and ones defined in the custom resources. See the
doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html).
See also the `proxyURL` fields.'
type: string
pluginRegistryCpuLimit:
description: Overrides the CPU limit used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 500m.
type: string
pluginRegistryCpuRequest:
description: Overrides the CPU request used in the plugin registry
deployment. In cores. (500m = .5 cores). Default to 100m.
type: string
pluginRegistryImage:
description: Overrides the container image used in the plugin registry
deployment. This includes the image tag. Omit it or leave it empty
to use the default container image provided by the Operator.
type: string
pluginRegistryIngress:
description: Plugin registry ingress custom settings.
properties:
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryMemoryLimit:
description: Overrides the memory limit used in the plugin registry
deployment. Defaults to 256Mi.
type: string
pluginRegistryMemoryRequest:
description: Overrides the memory request used in the plugin registry
deployment. Defaults to 16Mi.
type: string
pluginRegistryPullPolicy:
description: Overrides the image pull policy used in the plugin
registry deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
pluginRegistryRoute:
description: Plugin registry route custom settings.
properties:
domain:
description: 'Operator uses the domain to generate a hostname
for a route. In a conjunction with labels it creates a route,
which is served by a non-default Ingress controller. The generated
host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
type: string
type: object
pluginRegistryUrl:
description: Public URL of the plugin registry that serves sample
ready-to-use devfiles. Set this ONLY when a use of an external
devfile registry is needed. See the `externalPluginRegistry` field.
By default, this will be automatically calculated by the Operator.
type: string
proxyPassword:
description: Password of the proxy server. Only use when proxy configuration
is required. See the `proxyURL`, `proxyUser` and `proxySecret`
fields.
type: string
proxyPort:
description: Port of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL` and `nonProxyHosts`
fields.
type: string
proxySecret:
description: The secret that contains `user` and `password` for
a proxy server. When the secret is defined, the `proxyUser` and
`proxyPassword` are ignored.
type: string
proxyURL:
description: URL (protocol+host name) of the proxy server. This
drives the appropriate changes in the `JAVA_OPTS` and `https(s)_proxy`
variables in the Che server and workspaces containers. Only use
when configuring a proxy is required. Operator respects OpenShift
cluster wide proxy configuration and no additional configuration
is required, but defining `proxyUrl` in a custom resource leads
to overrides the cluster proxy configuration with fields `proxyUrl`,
`proxyPort`, `proxyUser` and `proxyPassword` from the custom resource.
See the doc https://docs.openshift.com/container-platform/4.4/networking/enable-cluster-wide-proxy.html).
See also the `proxyPort` and `nonProxyHosts` fields.
type: string
proxyUser:
description: User name of the proxy server. Only use when configuring
a proxy is required. See also the `proxyURL`, `proxyPassword`
and `proxySecret` fields.
type: string
selfSignedCert:
description: Deprecated. The value of this flag is ignored. The
Che Operator will automatically detect whether the router certificate
is self-signed and propagate it to other components, such as the
Che server.
type: boolean
serverCpuLimit:
description: Overrides the CPU limit used in the Che server deployment
In cores. (500m = .5 cores). Default to 1.
type: string
serverCpuRequest:
description: Overrides the CPU request used in the Che server deployment
In cores. (500m = .5 cores). Default to 100m.
type: string
serverExposureStrategy:
description: Sets the server and workspaces exposure type. Possible
values are `multi-host`, `single-host`, `default-host`. Defaults
to `multi-host`, which creates a separate ingress, or OpenShift
routes, for every required endpoint. `single-host` makes Che exposed
on a single host name with workspaces exposed on subpaths. Read
the docs to learn about the limitations of this approach. Also
consult the `singleHostExposureType` property to further configure
how the Operator and the Che server make that happen on Kubernetes.
`default-host` exposes the Che server on the host of the cluster.
Read the docs to learn about the limitations of this approach.
type: string
serverMemoryLimit:
description: Overrides the memory limit used in the Che server deployment.
Defaults to 1Gi.
type: string
serverMemoryRequest:
description: Overrides the memory request used in the Che server
deployment. Defaults to 512Mi.
type: string
serverTrustStoreConfigMapName:
description: Name of the ConfigMap with public certificates to add
to Java trust store of the Che server. This is often required
when adding the OpenShift OAuth provider, which has HTTPS endpoint
signed with self-signed cert. The Che server must be aware of
its CA cert to be able to request it. This is disabled by default.
type: string
singleHostGatewayConfigMapLabels:
additionalProperties:
type: string
description: The labels that need to be present in the ConfigMaps
representing the gateway configuration.
type: object
singleHostGatewayConfigSidecarImage:
description: The image used for the gateway sidecar that provides
configuration to the gateway. Omit it or leave it empty to use
the default container image provided by the Operator.
type: string
singleHostGatewayImage:
description: The image used for the gateway in the single host mode.
Omit it or leave it empty to use the default container image provided
by the Operator.
type: string
tlsSupport:
description: Deprecated. Instructs the Operator to deploy Che in
TLS mode. This is enabled by default. Disabling TLS sometimes
cause malfunction of some Che components.
type: boolean
useInternalClusterSVCNames:
description: Use internal cluster SVC names to communicate between
components to speed up the traffic and avoid proxy issues. The
default value is `false`.
type: boolean
workspaceNamespaceDefault:
description: Defines Kubernetes default namespace in which user's
workspaces are created for a case when a user does not override
it. It's possible to use `<username>`, `<userid>` and `<workspaceid>`
placeholders, such as che-workspace-<username>. In that case,
a new namespace will be created for each user or workspace.
type: string
type: object
storage:
description: Configuration settings related to the persistent storage
used by the Che installation.
properties:
postgresPVCStorageClassName:
description: Storage class for the Persistent Volume Claim dedicated
to the PostgreSQL database. When omitted or left blank, a default
storage class is used.
type: string
preCreateSubPaths:
description: Instructs the Che server to start a special Pod to
pre-create a sub-path in the Persistent Volumes. Defaults to `false`,
however it will need to enable it according to the configuration
of your Kubernetes cluster.
type: boolean
pvcClaimSize:
description: Size of the persistent volume claim for workspaces.
Defaults to `1Gi`.
type: string
pvcJobsImage:
description: Overrides the container image used to create sub-paths
in the Persistent Volumes. This includes the image tag. Omit it
or leave it empty to use the default container image provided
by the Operator. See also the `preCreateSubPaths` field.
type: string
pvcStrategy:
description: Persistent volume claim strategy for the Che server.
This Can be:`common` (all workspaces PVCs in one volume), `per-workspace`
(one PVC per workspace for all declared volumes) and `unique`
(one PVC per declared volume). Defaults to `common`.
type: string
workspacePVCStorageClassName:
description: Storage class for the Persistent Volume Claims dedicated
to the Che workspaces. When omitted or left blank, a default storage
class is used.
type: string
type: object
type: object
status:
description: CheClusterStatus defines the observed state of Che installation
properties:
cheClusterRunning:
description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
type: string
cheURL:
description: Public URL to the Che server.
type: string
cheVersion:
description: Current installed Che version.
type: string
dbProvisioned:
description: Indicates that a PostgreSQL instance has been correctly
provisioned or not. Indicates that a PostgreSQL instance has been
correctly provisioned or not.
type: boolean
devfileRegistryURL:
description: Public URL to the devfile registry.
type: string
gitHubOAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the GitHub OAuth.
type: boolean
helpLink:
description: A URL that points to some URL where to find help related
to the current Operator status.
type: string
keycloakProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been provisioned with realm, client and user.
type: boolean
keycloakURL:
description: Public URL to the Identity Provider server, Keycloak or
RH-SSO,.
type: string
message:
description: A human readable message indicating details about why the
Pod is in this condition.
type: string
openShiftOAuthUserCredentialsSecret:
description: OpenShift OAuth secret that contains user credentials for
HTPasswd identity provider.
type: string
openShiftoAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the OpenShift OAuth.
type: boolean
pluginRegistryURL:
description: Public URL to the plugin registry.
type: string
reason:
description: A brief CamelCase message indicating details about why
the Pod is in this state.
type: string
type: object
type: object
version: v1
versions:
- name: v1
served: true
storage: true

View File

@ -0,0 +1,374 @@
--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.26.2/eclipse-che-preview-openshift.crd.yaml 2021-03-03 13:19:20.335367827 +0000
+++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.27.0/eclipse-che-preview-openshift.crd.yaml 2021-03-03 13:41:33.109814896 +0000
@@ -52,14 +52,15 @@
by the Che installation.
properties:
externalIdentityProvider:
- description: 'Instructs the Operator on whether to deploy a dedicated
- Identity Provider (Keycloak or RH-SSO instance). By default, a
- dedicated Identity Provider server is deployed as part of the
- Che installation. When `externalIdentityProvider` is `true`, no
- dedicated identity provider will be deployed by the Operator and
- you will need to provide details about the external identity provider
- you are about to use. See also all the other fields starting with:
- `identityProvider`.'
+ description: 'Instructs the Operator on whether or not to deploy
+ a dedicated Identity Provider (Keycloak or RH SSO instance). Instructs
+ the Operator on whether to deploy a dedicated Identity Provider
+ (Keycloak or RH-SSO instance). By default, a dedicated Identity
+ Provider server is deployed as part of the Che installation. When
+ `externalIdentityProvider` is `true`, no dedicated identity provider
+ will be deployed by the Operator and you will need to provide
+ details about the external identity provider you are about to
+ use. See also all the other fields starting with: `identityProvider`.'
type: boolean
identityProviderAdminUserName:
description: Overrides the name of the Identity Provider administrator
@@ -67,10 +68,10 @@
type: string
identityProviderClientId:
description: Name of a Identity provider, Keycloak or RH-SSO, `client-id`
- that is used for Che. This is useful to override it ONLY if you
- use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to the value of the
- `flavour` field suffixed with `-public`.
+ that is used for Che. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to the value of the `flavour`
+ field suffixed with `-public`.
type: string
identityProviderContainerResources:
description: Identity provider container custom settings.
@@ -122,16 +123,15 @@
type: object
identityProviderPassword:
description: Overrides the password of Keycloak administrator user.
- This is useful to override it ONLY if you use an external Identity
- Provider. See the `externalIdentityProvider` field. When omitted
- or left blank, it is set to an auto-generated password.
+ Override this when an external Identity Provider is in use. See
+ the `externalIdentityProvider` field. When omitted or left blank,
+ it is set to an auto-generated password.
type: string
identityProviderPostgresPassword:
description: Password for a Identity Provider, Keycloak or RH-SSO,
- to connect to the database. This is useful to override it ONLY
- if you use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to an auto-generated
- password.
+ to connect to the database. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to an auto-generated password.
type: string
identityProviderPostgresSecret:
description: 'The secret that contains `password` for the Identity
@@ -146,14 +146,20 @@
type: string
identityProviderRealm:
description: Name of a Identity provider, Keycloak or RH-SSO, realm
- that is used for Che. This is useful to override it ONLY if you
- use an external Identity Provider. See the `externalIdentityProvider`
- field. When omitted or left blank, it is set to the value of the
- `flavour` field.
+ that is used for Che. Override this when an external Identity
+ Provider is in use. See the `externalIdentityProvider` field.
+ When omitted or left blank, it is set to the value of the `flavour`
+ field.
type: string
identityProviderRoute:
description: Route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -178,15 +184,26 @@
By default, this will be automatically calculated and set by the
Operator.
type: string
+ initialOpenShiftOAuthUser:
+ description: For operating with the OpenShift OAuth authentication,
+ create a new user account since the kubeadmin can not be used.
+ If the value is true, then a new OpenShift OAuth user will be
+ created for the HTPasswd identity provider. If the value is false
+ and the user has already been created, then it will be removed.
+ If value is an empty, then do nothing. The user's credentials
+ are stored in the `openshift-oauth-user-credentials` secret by
+ Operator. Note that this solution is Openshift 4 platform-specific.
+ type: boolean
oAuthClientName:
description: Name of the OpenShift `OAuthClient` resource used to
setup identity federation on the OpenShift side. Auto-generated
- if left blank. See also the `OpenShiftoAuth` field.
+ when left blank. See also the `OpenShiftoAuth` field.
type: string
oAuthSecret:
description: Name of the secret set in the OpenShift `OAuthClient`
resource used to setup identity federation on the OpenShift side.
- Auto-generated if left blank. See also the `OAuthClientName` field.
+ Auto-generated when left blank. See also the `OAuthClientName`
+ field.
type: string
openShiftoAuth:
description: 'Enables the integration of the identity provider (Keycloak
@@ -240,7 +257,7 @@
type: string
chePostgresHostName:
description: PostgreSQL Database host name that the Che server uses
- to connect to. Defaults to postgres. Override this value ONLY
+ to connect to. Defaults is `postgres`. Override this value ONLY
when using an external database. See field `externalDb`. In the
default case it will be automatically set by the Operator.
type: string
@@ -256,7 +273,7 @@
it will be automatically set by the Operator.
type: string
chePostgresSecret:
- description: 'The secret that contains PosgreSQL`user` and `password`
+ description: 'The secret that contains PostgreSQL`user` and `password`
that the Che server uses to connect to the DB. When the secret
is defined, the `chePostgresUser` and `chePostgresPassword` are
ignored. When the value is omitted or left blank, the one of following
@@ -279,12 +296,12 @@
are about to use. See also all the fields starting with: `chePostgres`.'
type: boolean
postgresImage:
- description: Overrides the container image used in the PosgreSQL
+ description: Overrides the container image used in the PostgreSQL
database deployment. This includes the image tag. Omit it or leave
it empty to use the default container image provided by the Operator.
type: string
postgresImagePullPolicy:
- description: Overrides the image pull policy used in the PosgreSQL
+ description: Overrides the image pull policy used in the PostgreSQL
database deployment. Default value is `Always` for `nightly` or
`latest` images, and `IfNotPresent` in other cases.
type: string
@@ -294,13 +311,13 @@
properties:
enable:
description: "Install and configure the Community Supported Kubernetes\
- \ Image Puller Operator. If true and no spec is provided, it will\
- \ create a default KubernetesImagePuller object to be managed\
- \ by the Operator. If false, the KubernetesImagePuller object\
- \ will be deleted, and the Operator will be uninstalled, regardless\
- \ of whether a spec is provided. \n Note that while this the Operator\
- \ and its behavior is community-supported, its payload may be\
- \ commercially-supported if you use it for pulling commercially-supported\
+ \ Image Puller Operator. When set to `true` and no spec is provided,\
+ \ it will create a default KubernetesImagePuller object to be\
+ \ managed by the Operator. When set to `false`, the KubernetesImagePuller\
+ \ object will be deleted, and the Operator will be uninstalled,\
+ \ regardless of whether a spec is provided. \n Note that while\
+ \ this the Operator and its behavior is community-supported, its\
+ \ payload may be commercially-supported for pulling commercially-supported\
\ images."
type: boolean
spec:
@@ -339,8 +356,8 @@
`kubernetes.io/ingress.class` annotation on Che-related ingresses.'
type: string
ingressDomain:
- description: 'Global ingress domain for a K8S cluster. This MUST
- be explicitly specified: there are no defaults.'
+ description: 'Global ingress domain for a Kubernetes cluster. This
+ MUST be explicitly specified: there are no defaults.'
type: string
ingressStrategy:
description: 'Strategy for ingress creation. Options are: `multi-host`
@@ -365,9 +382,9 @@
configured by this property. The possible values are `native`,
which means that the server and workspaces are exposed using ingresses
on K8s or `gateway` where the server and workspaces are exposed
- using a custom gateway based on Traefik. All the endpoints whether
- backed by the ingress or gateway `route` always point to the subpaths
- on the same domain. Defaults to `native`.
+ using a custom gateway based on link:https://doc.traefik.io/traefik/[Traefik].
+ All the endpoints whether backed by the ingress or gateway `route`
+ always point to the subpaths on the same domain. Defaults to `native`.
type: string
tlsSecretName:
description: Name of a secret that will be used to setup ingress
@@ -421,9 +438,9 @@
type: string
cheFlavor:
description: Specifies a variation of the installation. The options
- are `che` for upstream Che installations, or `codeready` for CodeReady
- Workspaces installation. If not necessary, do not override the
- default value.
+ are `che` for upstream Che installations, or `codeready` for link:https://developers.redhat.com/products/codeready-workspaces/overview[CodeReady
+ Workspaces] installation. Override the default value only on necessary
+ occasions.
type: string
cheHost:
description: Public host name of the installed Che server. When
@@ -465,6 +482,12 @@
cheServerRoute:
description: The Che server route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -472,17 +495,17 @@
type: object
cheWorkspaceClusterRole:
description: Custom cluster role bound to the user for the Che workspaces.
- The default roles are used if this is omitted or left blank.
+ The default roles are used when omitted or left blank.
type: string
customCheProperties:
additionalProperties:
type: string
description: Map of additional environment variables that will be
- applied in the generated `che` configMap to be used by the Che
+ applied in the generated `che` ConfigMap to be used by the Che
server, in addition to the values already generated from other
fields of the `CheCluster` custom resource (CR). When `customCheProperties`
contains a property that would be normally generated in `che`
- configMap from other CR fields, the value defined in the `customCheProperties`
+ ConfigMap from other CR fields, the value defined in the `customCheProperties`
is used instead.
type: object
devfileRegistryCpuLimit:
@@ -522,6 +545,12 @@
devfileRegistryRoute:
description: The devfile registry route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -550,7 +579,7 @@
type: boolean
gitSelfSignedCert:
description: When enabled, the certificate from `che-git-self-signed-cert`
- configMap will be propagated to the Che components and provide
+ ConfigMap will be propagated to the Che components and provide
particular configuration for Git.
type: boolean
nonProxyHosts:
@@ -602,6 +631,12 @@
pluginRegistryRoute:
description: Plugin registry route custom settings.
properties:
+ domain:
+ description: 'Operator uses the domain to generate a hostname
+ for a route. In a conjunction with labels it creates a route,
+ which is served by a non-default Ingress controller. The generated
+ host name will follow this pattern: `<route-name>-<route-namespace>.<domain>`.'
+ type: string
labels:
description: Comma separated list of labels that can be used
to organize and categorize objects by scoping and selecting.
@@ -609,9 +644,9 @@
type: object
pluginRegistryUrl:
description: Public URL of the plugin registry that serves sample
- ready-to-use devfiles. Set this ONLY if a use of an external devfile
- registry is needed. See the `externalPluginRegistry` field. By
- default, this will be automatically calculated by the Operator.
+ ready-to-use devfiles. Set this ONLY when a use of an external
+ devfile registry is needed. See the `externalPluginRegistry` field.
+ By default, this will be automatically calculated by the Operator.
type: string
proxyPassword:
description: Password of the proxy server. Only use when proxy configuration
@@ -647,7 +682,7 @@
type: string
selfSignedCert:
description: Deprecated. The value of this flag is ignored. The
- Che Operator will automatically detect if the router certificate
+ Che Operator will automatically detect whether the router certificate
is self-signed and propagate it to other components, such as the
Che server.
type: boolean
@@ -680,7 +715,7 @@
deployment. Defaults to 512Mi.
type: string
serverTrustStoreConfigMapName:
- description: Name of the configMap with public certificates to add
+ description: Name of the ConfigMap with public certificates to add
to Java trust store of the Che server. This is often required
when adding the OpenShift OAuth provider, which has HTTPS endpoint
signed with self-signed cert. The Che server must be aware of
@@ -689,7 +724,7 @@
singleHostGatewayConfigMapLabels:
additionalProperties:
type: string
- description: The labels that need to be present in the configMaps
+ description: The labels that need to be present in the ConfigMaps
representing the gateway configuration.
type: object
singleHostGatewayConfigSidecarImage:
@@ -714,11 +749,10 @@
type: boolean
workspaceNamespaceDefault:
description: Defines Kubernetes default namespace in which user's
- workspaces are created if user does not override it. It's possible
- to use `<username>`,`<userid>` and `<workspaceid>` placeholders,
- such as che-workspace-<username>. In that case, a new namespace
- will be created for each user or workspace. Is used by OpenShift
- infrastructure as well to specify Project.
+ workspaces are created for a case when a user does not override
+ it. It's possible to use `<username>`, `<userid>` and `<workspaceid>`
+ placeholders, such as che-workspace-<username>. In that case,
+ a new namespace will be created for each user or workspace.
type: string
type: object
storage:
@@ -727,14 +761,14 @@
properties:
postgresPVCStorageClassName:
description: Storage class for the Persistent Volume Claim dedicated
- to the PosgreSQL database. When omitted or left blank, a default
+ to the PostgreSQL database. When omitted or left blank, a default
storage class is used.
type: string
preCreateSubPaths:
description: Instructs the Che server to start a special Pod to
pre-create a sub-path in the Persistent Volumes. Defaults to `false`,
however it will need to enable it according to the configuration
- of your K8S cluster.
+ of your Kubernetes cluster.
type: boolean
pvcClaimSize:
description: Size of the persistent volume claim for workspaces.
@@ -773,8 +807,9 @@
description: Current installed Che version.
type: string
dbProvisioned:
- description: Indicates that a PosgreSQL instance has been correctly
- provisioned or not.
+ description: Indicates that a PostgreSQL instance has been correctly
+ provisioned or not. Indicates that a PostgreSQL instance has been
+ correctly provisioned or not.
type: boolean
devfileRegistryURL:
description: Public URL to the devfile registry.
@@ -799,6 +834,10 @@
description: A human readable message indicating details about why the
Pod is in this condition.
type: string
+ openShiftOAuthUserCredentialsSecret:
+ description: OpenShift OAuth secret that contains user credentials for
+ HTPasswd identity provider.
+ type: string
openShiftoAuthProvisioned:
description: Indicates whether an Identity Provider instance, Keycloak
or RH-SSO, has been configured to integrate with the OpenShift OAuth.

View File

@ -0,0 +1,9 @@
annotations:
operators.operatorframework.io.bundle.channel.default.v1: stable
operators.operatorframework.io.bundle.channels.v1: stable
operators.operatorframework.io.bundle.manifests.v1: manifests/
operators.operatorframework.io.bundle.mediatype.v1: registry+v1
operators.operatorframework.io.bundle.metadata.v1: metadata/
operators.operatorframework.io.bundle.package.v1: eclipse-che-preview-openshift
operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
operators.operatorframework.io.metrics.project_layout: go

View File

@ -18,7 +18,7 @@ init() {
RELEASE_BRANCH="${RELEASE}-release"
GIT_REMOTE_UPSTREAM="https://github.com/eclipse/che-operator.git"
RUN_RELEASE=false
PUSH_OLM_FILES=false
PUSH_OLM_BUNDLES=false
PUSH_GIT_CHANGES=false
CREATE_PULL_REQUESTS=false
RELEASE_OLM_FILES=false
@ -34,7 +34,7 @@ init() {
while [[ "$#" -gt 0 ]]; do
case $1 in
'--release') RUN_RELEASE=true; shift 0;;
'--push-olm-files') PUSH_OLM_FILES=true; shift 0;;
'--push-olm-bundles') PUSH_OLM_BUNDLES=true; shift 0;;
'--push-git-changes') PUSH_GIT_CHANGES=true; shift 0;;
'--pull-requests') CREATE_PULL_REQUESTS=true; shift 0;;
'--release-olm-files') RELEASE_OLM_FILES=true; shift 0;;
@ -52,17 +52,14 @@ init() {
command -v operator-courier >/dev/null 2>&1 || { echo "[ERROR] operator-courier is not installed. Abort."; exit 1; }
command -v operator-sdk >/dev/null 2>&1 || { echo "[ERROR] operator-sdk is not installed. Abort."; exit 1; }
command -v skopeo >/dev/null 2>&1 || { echo "[ERROR] skopeo is not installed. Abort."; exit 1; }
command -v pysemver >/dev/null 2>&1 || { echo "[ERROR] pysemver is not installed. Abort."; exit 1; }
REQUIRED_OPERATOR_SDK=$(yq -r ".\"operator-sdk\"" "${RELEASE_DIR}/REQUIREMENTS")
[[ $(operator-sdk version) =~ .*${REQUIRED_OPERATOR_SDK}.* ]] || { echo "[ERROR] operator-sdk ${REQUIRED_OPERATOR_SDK} is required. Abort."; exit 1; }
emptyDirs=$(find $RELEASE_DIR/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/* -maxdepth 0 -empty | wc -l)
[[ $emptyDirs -ne 0 ]] && echo "[ERROR] Found empty directories into eclipse-che-preview-openshift" && exit 1 || true
emptyDirs=$(find $RELEASE_DIR/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/* -maxdepth 0 -empty | wc -l)
[[ $emptyDirs -ne 0 ]] && echo "[ERROR] Found empty directories into eclipse-che-preview-openshift" && exit 1 || true
}
usage () {
echo "Usage: $0 [RELEASE_VERSION] --push-olm-files --push-git-changes"
echo -e "\t--push-olm-files: to push OLM files to quay.io. This flag should be omitted "
echo -e "\t--push-olm-bundles: to push OLM bundle images to quay.io and update catalog image. This flag should be omitted "
echo -e "\t\tif already a greater version released. For instance, we are releasing 7.9.3 version but"
echo -e "\t\t7.10.0 already exists. Otherwise it breaks the linear update path of the stable channel."
echo -e "\t--push-git-changes: to create release branch and push changes into."
@ -127,6 +124,7 @@ checkImageReferences() {
echo "[ERROR] Unable to find ubi8_minimal image in the $filename"; exit 1
fi
# use ${RELEASE} instead of master
wget https://raw.githubusercontent.com/eclipse/che/${RELEASE}/assembly/assembly-wsmaster-war/src/main/webapp/WEB-INF/classes/che/che.properties -q -O /tmp/che.properties
plugin_broker_meta_image=$(cat /tmp/che.properties | grep che.workspace.plugin_broker.metadata.image | cut -d '=' -f2)
@ -188,16 +186,15 @@ releaseOlmFiles() {
. release-olm-files.sh $RELEASE
cd $RELEASE_DIR
local openshift=$RELEASE_DIR/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift
local kubernetes=$RELEASE_DIR/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes
local openshift=$RELEASE_DIR/deploy/olm-catalog/stable/eclipse-che-preview-openshift/manifests
local kubernetes=$RELEASE_DIR/deploy/olm-catalog/stable/eclipse-che-preview-kubernetes/manifests
echo "[INFO] releaseOlmFiles :: Validate changes"
grep -q "currentCSV: eclipse-che-preview-openshift.v"$RELEASE $openshift/eclipse-che-preview-openshift.package.yaml
grep -q "currentCSV: eclipse-che-preview-kubernetes.v"$RELEASE $kubernetes/eclipse-che-preview-kubernetes.package.yaml
grep -q "version: "$RELEASE $openshift/$RELEASE/eclipse-che-preview-openshift.v$RELEASE.clusterserviceversion.yaml
grep -q "version: "$RELEASE $kubernetes/$RELEASE/eclipse-che-preview-kubernetes.v$RELEASE.clusterserviceversion.yaml
test -f $kubernetes/$RELEASE/eclipse-che-preview-kubernetes.crd.yaml
test -f $openshift/$RELEASE/eclipse-che-preview-openshift.crd.yaml
grep -q "version: "$RELEASE $openshift/che-operator.clusterserviceversion.yaml
grep -q "version: "$RELEASE $kubernetes/che-operator.clusterserviceversion.yaml
test -f $kubernetes/org_v1_che_crd.yaml
test -f $openshift/org_v1_che_crd.yaml
echo "[INFO] releaseOlmFiles :: Commit changes"
if git status --porcelain; then
@ -206,11 +203,12 @@ releaseOlmFiles() {
fi
}
pushOlmFilesToQuayIo() {
echo "[INFO] Push OLM files to quay.io"
cd $RELEASE_DIR/olm
. push-olm-files-to-quay.sh
cd $RELEASE_DIR
pushOlmBundlesToQuayIo() {
echo "[INFO] releaseOperatorCode :: Login to quay.io..."
docker login quay.io -u "${QUAY_ECLIPSE_CHE_USERNAME}" -p "${QUAY_ECLIPSE_CHE_PASSWORD}"
echo "[INFO] Push OLM bundles to quay.io"
. ${RELEASE_DIR}/olm/buildAndPushBundleImages.sh -c "stable" -p "kubernetes" -f "true"
. ${RELEASE_DIR}/olm/buildAndPushBundleImages.sh -c "stable" -p "openshift" -f "true"
}
pushGitChanges() {
@ -252,7 +250,7 @@ createPRToMasterBranch() {
prepareCommunityOperatorsUpdate() {
export BASE_DIR=${RELEASE_DIR}/olm
"${BASE_DIR}/prepare-community-operators-update.sh" $FORCE_UPDATE
. "${BASE_DIR}/prepare-community-operators-update.sh" $FORCE_UPDATE
unset BASE_DIR
}
run() {
@ -273,8 +271,8 @@ if [[ $RUN_RELEASE == "true" ]]; then
run "$@"
fi
if [[ $PUSH_OLM_FILES == "true" ]]; then
pushOlmFilesToQuayIo
if [[ $PUSH_OLM_BUNDLES == "true" ]]; then
pushOlmBundlesToQuayIo
fi
if [[ $PUSH_GIT_CHANGES == "true" ]]; then

View File

@ -21,27 +21,11 @@ $ docker-run.sh olm/update-nightly-bundle.sh
OLM (operator lifecycle manager) provides ways of installing operators. One of the convenient way how to achieve it is by using OLM bundles. See more about the format: https://github.com/openshift/enhancements/blob/master/enhancements/olm/operator-bundle.md. There two "nightly" platform-specific OLM bundles for Сhe operator:
- `deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests`
- `deploy/olm-catalog/eclipse-che-preview-openshift/manifests`
- `deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/manifests`
- `deploy/olm-catalog/nightly/eclipse-che-preview-openshift/manifests`
Each bundle consists of a cluster service version file (CSV) and a custom resource definition file (CRD). CRD file describes `checlusters` Kubernetes api resource object(object fields name, format, description and so on). Kubernetes api needs this information to correctly store a custom resource object "checluster". Custom resource object users could modify to change Eclipse Che configuration. Che operator watches `checlusters` object and re-deploy Che with desired configuration. The CSV file contains all "deploy" and "permission" specific information, which OLM needs to install Eclipse Che operator.
## Test Eclipse Che using Application registry (Deprecated)
Notice: it is doesn't work on Openshift >= 4.6
To test stable versions of Che operator you have to use Eclipse Che application registry. To test the latest stable Che launch test script in the `olm` folder:
```bash
$ ./testCatalogSource.sh ${platform} "stable" ${namespace} "Marketplace"
```
To test migration from one stable version to another one:
```bash
$ ./testUpdate.sh ${platform} "stable" ${namespace}
```
## Testing custom CatalogSource and nightly bundle images
To test nightly Che operator you have to use the OLM CatalogSource(index) image.
@ -61,15 +45,15 @@ quay.io/eclipse/eclipse-che-kubernetes-opm-bundles:7.18.0-1.nightly
quay.io/eclipse/eclipse-che-openshift-opm-bundles:7.19.0-5.nightly
```
### Build custom nightly OLM images
### Build custom nightly/stable OLM images
For test purpose you can build your own "nightly" CatalogSource and bundle images
with your latest development changes and use it in the test scripts. To build these images you can use script `olm/buildAndPushInitialBundle.sh`:
For test purpose you can build your own "nightly" or "stable" CatalogSource and bundle images
with your latest development changes and use it in the test scripts. To build these images you can use script `olm/buildAndPushBundleImages.sh`:
```bash
$ export IMAGE_REGISTRY_USER_NAME=<IMAGE_REGISTRY_USER_NAME> && \
export IMAGE_REGISTRY_HOST=<IMAGE_REGISTRY_HOST> && \
./buildAndPushInitialBundle.sh <openshift|kubernetes> [FROM-INDEX-IMAGE]
./buildAndPushBundleImages.sh -p <openshift|kubernetes> -c <nightly|stable> -i <FROM-INDEX-IMAGE>
```
This script will build and push for you two images: CatalogSource(index) and bundle one:
@ -77,12 +61,12 @@ This script will build and push for you two images: CatalogSource(index) and bun
* `${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-<openshift|kubernetes>-opm-bundles:<CHE_VERSION>-<INCREMENTAL_VERSION>.nightly`
* `${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-<openshift|kubernetes>-opm-catalog:preview`
CatalogSource images are additive. It's mean that you can re-use bundles from another CatalogSource image and include them to your custom CatalogSource image. For this purpose you can specify the argument `FROM-INDEX-IMAGE`. For example:
CatalogSource images are additive. It's mean that you can re-use bundles from another CatalogSource image and include them to your custom CatalogSource image. For this purpose you can specify the parameter `-i`:
```bash
$ export IMAGE_REGISTRY_USER_NAME=<IMAGE_REGISTRY_USER_NAME> && \
export IMAGE_REGISTRY_HOST=<IMAGE_REGISTRY_HOST> && \
./buildAndPushInitialBundle.sh openshift "quay.io/eclipse/eclipse-che-openshift-opm-catalog:preview"
./buildAndPushBundleImages.sh -p <openshift|kubernetes> -n <nightly|stable> -i <FROM-INDEX-IMAGE>
```
### Testing custom CatalogSource and bundle images on the Openshift
@ -90,7 +74,7 @@ $ export IMAGE_REGISTRY_USER_NAME=<IMAGE_REGISTRY_USER_NAME> && \
To test the latest custom "nightly" bundle:
```bash
$ ./testCatalogSource.sh "openshift" "nightly" <ECLIPSE_CHE_NAMESPACE> "catalog"
$ ./testCatalogSource.sh "openshift" "nightly" <ECLIPSE_CHE_NAMESPACE>
```
If your CatalogSource image contains few bundles, you can test migration from previous bundle to the latest:
@ -110,7 +94,7 @@ To test the latest custom "nightly" bundle:
```bash
$ export IMAGE_REGISTRY_USER_NAME=<IMAGE_REGISTRY_USER_NAME> && \
export IMAGE_REGISTRY_HOST=<IMAGE_REGISTRY_HOST> && \
./testCatalogSource.sh "kubernetes" "nightly" <ECLIPSE_CHE_NAMESPACE> "catalog"
./testCatalogSource.sh "kubernetes" "nightly" <ECLIPSE_CHE_NAMESPACE>
```
If your CatalogSource image contains few bundles, you can test migration from previous bundle to the latest:
@ -139,7 +123,7 @@ With this private registry you can test Che operator from development bundle:
```bash
$ export IMAGE_REGISTRY_HOST="127.0.0.1:5000" && \
export IMAGE_REGISTRY_USER_NAME="" && \
./testCatalogSource.sh "kubernetes" "nightly" <ECLIPSE_CHE_NAMESPACE> "catalog"
./testCatalogSource.sh "kubernetes" "nightly" <ECLIPSE_CHE_NAMESPACE>
```
> Tips: If minikube was installed locally (driver 'none', local installation minikube), then registry is available on the host 0.0.0.0 without port forwarding but it requires `sudo`.

View File

@ -17,7 +17,7 @@ SCRIPTS_DIR=$(cd "$(dirname "$0")"; pwd)
BASE_DIR="$(pwd)"
QUIET=""
PODMAN=$(command -v podman)
PODMAN=$(command -v podman || true)
if [[ ! -x $PODMAN ]]; then
echo "[WARNING] podman is not installed."
PODMAN=$(command -v docker)
@ -28,8 +28,8 @@ fi
command -v yq >/dev/null 2>&1 || { echo "yq is not installed. Aborting."; exit 1; }
usage () {
echo "Usage: $0 [-w WORKDIR] [-s SOURCE_PATH] -r [CSV_FILE_PATH_REGEXP] -t [IMAGE_TAG] "
echo "Example: ./olm/addDigests.sh -w . -r \".*openshift.*v7.21.1.*yaml\" -t 7.21.1"
echo "Usage: $0 [-w WORKDIR] [-s CSV_FILE_PATH] -t [IMAGE_TAG] "
echo "Example: ./olm/addDigests.sh -w . -s 'deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml' -t 7.21.1"
}
if [[ $# -lt 1 ]]; then usage; exit; fi
@ -37,99 +37,90 @@ if [[ $# -lt 1 ]]; then usage; exit; fi
while [[ "$#" -gt 0 ]]; do
case $1 in
'-w') BASE_DIR="$2"; shift 1;;
'-s') SRC_DIR="$2"; shift 1;;
'-s') CSV_FILE="$2"; shift 1;;
'-t') IMAGE_TAG="$2"; shift 1;;
'-r') CSV_FILE_PATH_REGEXP="$2"; shift 1;;
'-q') QUIET="-q"; shift 0;;
'--help'|'-h') usage; exit;;
esac
shift 1
done
if [[ ! ${CSV_FILE_PATH_REGEXP} ]] || [[ ! $IMAGE_TAG ]]; then usage; exit 1; fi
if [[ ! ${CSV_FILE} ]] || [[ ! $IMAGE_TAG ]]; then usage; exit 1; fi
CSV_FILES_DIR=${BASE_DIR}
if [ -n "${SRC_DIR}" ]; then
CSV_FILES_DIR="${BASE_DIR}/${SRC_DIR}"
fi
echo "Resolved CSV files dir: ${CSV_FILES_DIR}"
echo "find ${CSV_FILES_DIR} -regextype posix-egrep -regex \"${CSV_FILES_DIR}/?${CSV_FILE_PATH_REGEXP}\""
CSV_FILES=( $(find ${CSV_FILES_DIR} -regextype posix-egrep -regex "${CSV_FILES_DIR}/?${CSV_FILE_PATH_REGEXP}") )
echo "CSV file: ${CSV_FILE}"
RELATED_IMAGE_PREFIX="RELATED_IMAGE_"
rm -Rf "${BASE_DIR}/generated/csv"
mkdir -p "${BASE_DIR}/generated/csv"
# Copy original csv files
for CSV_FILE in "${CSV_FILES[@]}"
do
echo "CSV file: ${CSV_FILE}"
if [ -f "${CSV_FILE}" ];then
cp -pR "${CSV_FILE}" "${BASE_DIR}/generated/csv"
csvs_args="${csvs_args} -c ${CSV_FILE}"
done
else
echo "[ERROR] ${CSV_FILE} was not found"
exit 1
fi
# shellcheck source=buildDigestMap.sh
eval "${SCRIPTS_DIR}/buildDigestMap.sh" -w "${BASE_DIR}" -t "${IMAGE_TAG}" "${csvs_args}" ${QUIET}
source "${SCRIPTS_DIR}/buildDigestMap.sh" -w "${BASE_DIR}" -t "${IMAGE_TAG}" -c "${CSV_FILE}" ${QUIET}
if [[ ! "${QUIET}" ]]; then cat "${BASE_DIR}"/generated/digests-mapping.txt; fi
for CSV_FILE in "${CSV_FILES[@]}"
CSV_FILE_COPY=${BASE_DIR}/generated/csv/$(basename ${CSV_FILE})
echo "[INFO] Generate digest update for CSV file ${CSV_FILE}"
RELATED_IMAGES=""
RELATED_IMAGES_ENV=""
for mapping in $(cat "${BASE_DIR}/generated/digests-mapping.txt")
do
CSV_FILE_COPY=${BASE_DIR}/generated/csv/$(basename ${CSV_FILE})
source=$(echo "${mapping}" | sed -e 's;\(.*\)=.*=.*;\1;')
# Image with digest.
dest=$(echo "${mapping}" | sed -e 's;.*=.*=\(.*\);\1;')
# Image label to set image target. For example: 'devfile-registry-image'
imageLabel=$(echo "${mapping}" | sed -e 's;.*=\(.*\)=.*;\1;')
name=$(echo "${dest}" | sed -e 's;.*/\([^\/][^\/]*\)@.*;\1;')
tagOrDigest=""
if [[ ${source} == *"@"* ]]; then
tagOrDigest="@${source#*@}"
elif [[ ${source} == *":"* ]]; then
tagOrDigest="${source#*:}"
fi
echo "[INFO] Generate digest update for CSV file ${CSV_FILE}"
RELATED_IMAGES=""
RELATED_IMAGES_ENV=""
for mapping in $(cat "${BASE_DIR}/generated/digests-mapping.txt")
do
source=$(echo "${mapping}" | sed -e 's;\(.*\)=.*=.*;\1;')
# Image with digest.
dest=$(echo "${mapping}" | sed -e 's;.*=.*=\(.*\);\1;')
# Image label to set image target. For example: 'devfile-registry-image'
imageLabel=$(echo "${mapping}" | sed -e 's;.*=\(.*\)=.*;\1;')
name=$(echo "${dest}" | sed -e 's;.*/\([^\/][^\/]*\)@.*;\1;')
tagOrDigest=""
if [[ ${source} == *"@"* ]]; then
tagOrDigest="@${source#*@}"
elif [[ ${source} == *":"* ]]; then
tagOrDigest="${source#*:}"
fi
if [[ ${imageLabel} == "plugin-registry-image" ]] || [[ ${imageLabel} == "devfile-registry-image" ]]; then
# Image tag could contains invalid for Env variable name characters, so let's encode it using base32.
# But alphabet of base32 uses one invalid for env variable name character '=' at the end of the line, so let's replace it by '_'.
# To recovery original tag should be done opposite actions: replace '_' to '=', and decode string using 'base32 -d'.
encodedTag=$(echo "${tagOrDigest}" | base32 -w 0 | tr "=" "_")
relatedImageEnvName=$(echo "${RELATED_IMAGE_PREFIX}${name}_${imageLabel}_${encodedTag}" | sed -r 's/[-.]/_/g')
ENV="{ name: \"${relatedImageEnvName}\", value: \"${dest}\"}"
if [[ -z ${RELATED_IMAGES_ENV} ]]; then
RELATED_IMAGES_ENV="${ENV}"
else
RELATED_IMAGES_ENV="${RELATED_IMAGES_ENV}, ${ENV}"
fi
fi
RELATED_IMAGE="{ name: \"${name}-${tagOrDigest}\", image: \"${dest}\", tag: \"${source}\"}"
if [[ -z ${RELATED_IMAGES} ]]; then
RELATED_IMAGES="${RELATED_IMAGE}"
if [[ ${imageLabel} == "plugin-registry-image" ]] || [[ ${imageLabel} == "devfile-registry-image" ]]; then
# Image tag could contains invalid for Env variable name characters, so let's encode it using base32.
# But alphabet of base32 uses one invalid for env variable name character '=' at the end of the line, so let's replace it by '_'.
# To recovery original tag should be done opposite actions: replace '_' to '=', and decode string using 'base32 -d'.
encodedTag=$(echo "${tagOrDigest}" | base32 -w 0 | tr "=" "_")
relatedImageEnvName=$(echo "${RELATED_IMAGE_PREFIX}${name}_${imageLabel}_${encodedTag}" | sed -r 's/[-.]/_/g')
ENV="{ name: \"${relatedImageEnvName}\", value: \"${dest}\"}"
if [[ -z ${RELATED_IMAGES_ENV} ]]; then
RELATED_IMAGES_ENV="${ENV}"
else
RELATED_IMAGES="${RELATED_IMAGES}, ${RELATED_IMAGE}"
RELATED_IMAGES_ENV="${RELATED_IMAGES_ENV}, ${ENV}"
fi
fi
sed -i -e "s;${source};${dest};" "${CSV_FILE_COPY}"
done
RELATED_IMAGE="{ name: \"${name}-${tagOrDigest}\", image: \"${dest}\", tag: \"${source}\"}"
if [[ -z ${RELATED_IMAGES} ]]; then
RELATED_IMAGES="${RELATED_IMAGE}"
else
RELATED_IMAGES="${RELATED_IMAGES}, ${RELATED_IMAGE}"
fi
mv "${CSV_FILE_COPY}" "${CSV_FILE_COPY}.old"
yq -rY "
( .spec.relatedImages ) += [${RELATED_IMAGES}] |
( .spec.install.spec.deployments[0].spec.template.spec.containers[0].env ) += [${RELATED_IMAGES_ENV}]
" "${CSV_FILE_COPY}.old" > "${CSV_FILE_COPY}"
sed -i "${CSV_FILE_COPY}" -r -e "s|tag: |# tag: |"
rm -f "${CSV_FILE_COPY}.old"
# update original file with generated changes
mv "${CSV_FILE_COPY}" "${CSV_FILE}"
echo "[INFO] CSV updated: ${CSV_FILE}"
sed -i -e "s;${source};${dest};" "${CSV_FILE_COPY}"
done
mv "${CSV_FILE_COPY}" "${CSV_FILE_COPY}.old"
yq -rY "
( .spec.relatedImages ) += [${RELATED_IMAGES}] |
( .spec.install.spec.deployments[0].spec.template.spec.containers[0].env ) += [${RELATED_IMAGES_ENV}]
" "${CSV_FILE_COPY}.old" > "${CSV_FILE_COPY}"
sed -i "${CSV_FILE_COPY}" -r -e "s|tag: |# tag: |"
rm -f "${CSV_FILE_COPY}.old"
# update original file with generated changes
mv "${CSV_FILE_COPY}" "${CSV_FILE}"
echo "[INFO] CSV updated: ${CSV_FILE}"
# cleanup
rm -fr "${BASE_DIR}/generated"

97
olm/buildAndPushBundleImages.sh Executable file
View File

@ -0,0 +1,97 @@
#!/bin/bash
#
# Copyright (c) 2012-2021 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
set -ex
usage () {
echo "Usage: $0 -p [platform] -c [channel] -i [from-index-image(optional)] -f [force-build-and-push(optional)]"
echo "Example: $0 -p openshift -c nightly -i quay.io/eclipse/eclipse-che-openshift-opm-catalog:preview -f true"
}
if [[ $# -lt 1 ]]; then usage; exit; fi
while [[ "$#" -gt 0 ]]; do
case $1 in
'-c') channel="$2"; shift 1;;
'-p') platform="$2"; shift 1;;
'-f') forceBuildAndPush="$2"; shift 1;;
'-i') fromIndexImage="$2"; shift 1;;
'--help'|'-h') usage; exit;;
esac
shift 1
done
if [[ ! ${channel} ]] || [[ ! ${platform} ]]; then usage; exit 1; fi
if [ -z "${forceBuildAndPush}" ]; then
forceBuildAndPush="false"
fi
if [ ! "${forceBuildAndPush}" == "true" ] && [ ! "${forceBuildAndPush}" == "false" ]; then
echo "[ERROR] -f argument should be 'true' or 'false'"
exit 1
fi
if [ -z "${IMAGE_REGISTRY_HOST}" ] || [ -z "${IMAGE_REGISTRY_USER_NAME}" ]; then
echo "[ERROR] Specify env variables with information about image registry 'IMAGE_REGISTRY_HOST' and 'IMAGE_REGISTRY_USER_NAME'."
exit 1
fi
if [ -n "${GITHUB_WORKSPACE}" ]; then
ROOT_PROJECT_DIR="${GITHUB_WORKSPACE}"
else
SCRIPT=$(readlink -f "${BASH_SOURCE[0]}")
ROOT_PROJECT_DIR=$(dirname "$(dirname "$SCRIPT")")
fi
export BASE_DIR="${ROOT_PROJECT_DIR}/olm"
source "${BASE_DIR}/olm.sh"
installOPM
${OPM_BINARY} version
echo "[INFO] Platform: ${platform}"
if [ -n "${OPM_BUNDLE_DIR}" ]; then
bundleDir="${OPM_BUNDLE_DIR}"
else
bundleDir=$(getBundlePath "${platform}" "${channel}")
fi
OPM_BUNDLE_MANIFESTS_DIR="${bundleDir}/manifests"
CSV="${OPM_BUNDLE_MANIFESTS_DIR}/che-operator.clusterserviceversion.yaml"
BUNDLE_TAG=$(yq -r ".spec.version" "${CSV}")
echo "[INFO] Bundle version and tag: ${BUNDLE_TAG}"
CATALOG_BUNDLE_IMAGE="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${platform}-opm-bundles:${BUNDLE_TAG}"
CATALOG_TAG="preview"
CATALOG_IMAGE="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${platform}-opm-catalog:${CATALOG_TAG}"
CHECK_BUNDLE_TAG=$(skopeo inspect docker://${CATALOG_BUNDLE_IMAGE} 2>/dev/null | jq -r ".RepoTags[]|select(. == \"${BUNDLE_TAG}\")")
if [[ -z "$CHECK_BUNDLE_TAG" ]] || [[ "${forceBuildAndPush}" == "true" ]]; then
buildBundleImage "${platform}" "${CATALOG_BUNDLE_IMAGE}" "${channel}" "docker"
if [ -n "${fromIndexImage}" ]; then
buildCatalogImage "${CATALOG_IMAGE}" "${CATALOG_BUNDLE_IMAGE}" "docker" "${forceBuildAndPush}" "${fromIndexImage}"
echo "[INFO] Done."
exit 0
fi
CHECK_CATALOG_TAG=$(skopeo inspect docker://${CATALOG_IMAGE} 2>/dev/null | jq -r ".RepoTags[]|select(. == \"${CATALOG_TAG}\")")
if [ -z "${CHECK_CATALOG_TAG}" ]; then
buildCatalogImage "${CATALOG_IMAGE}" "${CATALOG_BUNDLE_IMAGE}" "docker" "${forceBuildAndPush}"
else
buildCatalogImage "${CATALOG_IMAGE}" "${CATALOG_BUNDLE_IMAGE}" "docker" "${forceBuildAndPush}" "${CATALOG_IMAGE}"
fi
else
echo "[INFO] Bundle ${CATALOG_BUNDLE_IMAGE} is already pushed to the image registry"
fi
echo "[INFO] Done."

View File

@ -1,64 +0,0 @@
#!/bin/bash
#
# Copyright (c) 2012-2020 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
set -e
printHelp() {
echo ''
echo 'Please consider to pass this values to the script to run script:'
echo ' PLATFORM - cluster platform: "kubernetes" or "openshift".'
echo ' FROM_INDEX_IMAGE - (Optional) Using this argument you can include Olm bundles from another index image to you index(CatalogSource) image'
echo ''
echo 'EXAMPLE of running: ${OPERATOR_REPO}/olm/buildAndPushInitialBundle.sh openshift'
}
PLATFORM="${1}"
if [ "${PLATFORM}" == "" ]; then
echo -e "${RED}[ERROR]: Please specify a valid platform. The posible platforms are kubernetes or openshift.The script will exit with code 1.${NC}"
printHelp
exit 1
else
echo "[INFO]: Successfully validated platform. Starting olm tests in platform: ${PLATFORM}."
fi
FROM_INDEX_IMAGE="${2}"
if [ -z "${IMAGE_REGISTRY_HOST}" ] || [ -z "${IMAGE_REGISTRY_USER_NAME}" ]; then
echo "[ERROR] Specify env variables with information about image registry 'IMAGE_REGISTRY_HOST' and 'IMAGE_REGISTRY_USER_NAME'."
fi
SCRIPT=$(readlink -f "$0")
BASE_DIR=$(dirname "$SCRIPT")
ROOT_PROJECT_DIR=$(dirname "${BASE_DIR}")
OPM_BUNDLE_DIR="${ROOT_PROJECT_DIR}/deploy/olm-catalog/eclipse-che-preview-${PLATFORM}"
OPM_BUNDLE_MANIFESTS_DIR="${OPM_BUNDLE_DIR}/manifests"
CSV="${OPM_BUNDLE_MANIFESTS_DIR}/che-operator.clusterserviceversion.yaml"
nightlyVersion=$(yq -r ".spec.version" "${CSV}")
source ${BASE_DIR}/olm.sh "${PLATFORM}" "${nightlyVersion}" "che"
CATALOG_BUNDLE_IMAGE="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${PLATFORM}-opm-bundles:${nightlyVersion}"
echo "${nightlyVersion}"
installOPM
echo "[INFO] Build bundle image: ${CATALOG_BUNDLE_IMAGE}"
buildBundleImage "${CATALOG_BUNDLE_IMAGE}"
echo "[INFO] Build CatalogSource image: ${CATALOG_BUNDLE_IMAGE}"
CATALOG_IMAGENAME="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${PLATFORM}-opm-catalog:preview"
buildCatalogImage "${CATALOG_IMAGENAME}" "${CATALOG_BUNDLE_IMAGE}" "docker" "${FROM_INDEX_IMAGE}"
echo "[INFO] Done. Images '${CATALOG_IMAGENAME}' and '${CATALOG_BUNDLE_IMAGE}' were build and pushed"

View File

@ -16,7 +16,7 @@ SCRIPTS_DIR=$(cd "$(dirname "$0")" || exit 1; pwd)
BASE_DIR="$1"
QUIET=""
PODMAN=$(command -v podman)
PODMAN=$(command -v podman || true)
if [[ ! -x $PODMAN ]]; then
echo "[WARNING] podman is not installed."
PODMAN=$(command -v docker)
@ -29,7 +29,7 @@ command -v skopeo > /dev/null 2>&1 || { echo "skopeo is not installed. Aborting.
usage () {
echo "Usage: $0 [-w WORKDIR] -c [/path/to/csv.yaml] -t [IMAGE_TAG]"
echo "Example: $0 -w $(pwd) -c $(pwd)/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.9.0/eclipse-che-preview-kubernetes.v7.9.0.clusterserviceversion.yaml -t 7.9.0"
echo "Example: $0 -w $(pwd) -c $(pwd)/deploy/olm-catalog/nightly/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml -t 7.26.0"
}
if [[ $# -lt 1 ]]; then usage; exit; fi
@ -37,7 +37,7 @@ if [[ $# -lt 1 ]]; then usage; exit; fi
while [[ "$#" -gt 0 ]]; do
case $1 in
'-w') BASE_DIR="$2"; shift 1;;
'-c') CSV="$2"; CSVS+=("${CSV}");shift 1;;
'-c') CSV="$2";shift 1;;
'-t') IMAGE_TAG="$2"; shift 1;;
'-q') QUIET="-q"; shift 0;;
'--help'|'-h') usage; exit;;
@ -49,7 +49,7 @@ if [[ ! $CSV ]] || [[ ! $IMAGE_TAG ]]; then usage; exit 1; fi
mkdir -p "${BASE_DIR}/generated"
echo "[INFO] Get images from CSV ${CSV}"
echo "[INFO] Get images from CSV: ${CSV}"
# shellcheck source=images.sh
. "${SCRIPTS_DIR}"/images.sh

View File

@ -0,0 +1,58 @@
#!/bin/bash
#
# Copyright (c) 2012-2021 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
SCRIPT=$(readlink -f "$0")
OPERATOR_REPO=$(dirname "$(dirname "$SCRIPT")")
echo "${OPERATOR_REPO}"
set -e
BASE_DIR="${OPERATOR_REPO}/olm"
source "${BASE_DIR}/olm.sh"
installOPM
for platform in 'kubernetes' 'openshift'
do
manifestsFormatRootFolder="${OPERATOR_REPO}/olm/eclipse-che-preview-${platform}/deploy/olm-catalog/eclipse-che-preview-${platform}"
pushd "${manifestsFormatRootFolder}" || exit 1
stableBundleDir=$(getBundlePath "${platform}" "stable")
echo "${stableBundleDir}"
bundle_dir=$(mktemp -d -t che-releases-XXX)
echo "${bundle_dir}"
readarray -t dirs < <(find . -maxdepth 1 -type d -printf '%P\n' | sort)
for versionDir in ${dirs[*]} ; do
if [[ "${versionDir}" =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then
echo "Converting manifest format folder ${versionDir} to the bundle format..."
manifestFormatDir="${manifestsFormatRootFolder}/${versionDir}"
bundleDir="${bundle_dir}/${versionDir}"
mkdir -p "${bundleDir}/manifests"
cp -rf "${stableBundleDir}/bundle.Dockerfile" "${stableBundleDir}/metadata" "${bundleDir}"
packageName=$(getPackageName "${platform}")
cp -rf "${manifestFormatDir}/${packageName}.v${versionDir}.clusterserviceversion.yaml" "${bundleDir}/manifests/che-operator.clusterserviceversion.yaml"
cp -rf "${manifestFormatDir}/${packageName}.crd.yaml" "${bundleDir}/manifests/org_v1_che_crd.yaml"
cp -rf "${manifestFormatDir}/${packageName}.v${versionDir}.clusterserviceversion.yaml.diff" "${bundleDir}/manifests/che-operator.clusterserviceversion.yaml.diff"
cp -rf "${manifestFormatDir}/${packageName}.crd.yaml.diff" "${bundleDir}/manifests/org_v1_che_crd.yaml.diff"
fi
done
for versionDir in ${dirs[*]} ; do
if [[ "${versionDir}" =~ [0-9]+\.[0-9]+\.[0-9]+ ]]; then
OPM_BUNDLE_DIR="${bundle_dir}/${versionDir}"
export OPM_BUNDLE_DIR
"${OPERATOR_REPO}/olm/buildAndPushBundleImages.sh" -c "stable" -p "${platform}"
fi
done
popd || true
done

View File

@ -11,7 +11,7 @@
# Red Hat, Inc. - initial API and implementation
setImagesFromDeploymentEnv() {
REQUIRED_IMAGES=$(yq -r '.spec.install.spec.deployments[].spec.template.spec.containers[].env[] | select(.value) | select(.name | test("RELATED_IMAGE_.*"; "g")) | .value' "${CSVS[@]}" | sort | uniq)
REQUIRED_IMAGES=$(yq -r '.spec.install.spec.deployments[].spec.template.spec.containers[].env[] | select(.value) | select(.name | test("RELATED_IMAGE_.*"; "g")) | .value' "${CSV}" | sort | uniq)
}
setOperatorImage() {

View File

@ -15,14 +15,19 @@ set -e
if [ -z "${BASE_DIR}" ]; then
BASE_DIR=$(cd "$(dirname "$0")" && pwd)
fi
ROOT_PROJECT_DIR=$(dirname "${BASE_DIR}")
source ${BASE_DIR}/check-yq.sh
source ${BASE_DIR}/olm.sh
incrementNightlyVersion() {
platform="${1}"
OPM_BUNDLE_DIR="${ROOT_PROJECT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}"
OPM_BUNDLE_MANIFESTS_DIR="${OPM_BUNDLE_DIR}/manifests"
if [ -z "${platform}" ]; then
echo "[ERROR] please specify first argument 'platform'"
exit 1
fi
NIGHTLY_BUNDLE_PATH=$(getBundlePath "${platform}" "nightly")
OPM_BUNDLE_MANIFESTS_DIR="${NIGHTLY_BUNDLE_PATH}/manifests"
CSV="${OPM_BUNDLE_MANIFESTS_DIR}/che-operator.clusterserviceversion.yaml"
currentNightlyVersion=$(yq -r ".spec.version" "${CSV}")
@ -31,9 +36,8 @@ incrementNightlyVersion() {
getNightlyVersionIncrementPart "${currentNightlyVersion}"
PACKAGE_NAME="eclipse-che-preview-${platform}"
PACKAGE_FOLDER_PATH="${ROOT_PROJECT_DIR}/olm/eclipse-che-preview-${platform}/deploy/olm-catalog/${PACKAGE_NAME}"
PACKAGE_FILE_PATH="${PACKAGE_FOLDER_PATH}/${PACKAGE_NAME}.package.yaml"
CLUSTER_SERVICE_VERSION=$(yq -r ".channels[] | select(.name == \"stable\") | .currentCSV" "${PACKAGE_FILE_PATH}")
CLUSTER_SERVICE_VERSION=$(getCurrentStableVersion "${platform}")
STABLE_PACKAGE_VERSION=$(echo "${CLUSTER_SERVICE_VERSION}" | sed -e "s/${PACKAGE_NAME}.v//")
parseStableVersion

View File

@ -13,73 +13,69 @@
# Scripts to prepare OLM(operator lifecycle manager) and install che-operator package
# with specific version using OLM.
BASE_DIR=$(dirname $(dirname $(readlink -f "${BASH_SOURCE[0]}")))/olm
BASE_DIR=$(dirname $(readlink -f "${BASH_SOURCE[0]}"))
ROOT_DIR=$(dirname "${BASE_DIR}")
source ${ROOT_DIR}/olm/check-yq.sh
SOURCE_INSTALL=$4
function getPackageName() {
platform="${1}"
if [ -z "${1}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
if [ -z ${SOURCE_INSTALL} ]; then SOURCE_INSTALL="Marketplace"; fi
echo "eclipse-che-preview-${platform}"
}
platform=$1
if [ "${platform}" == "" ]; then
echo "Please specify platform ('openshift' or 'kubernetes') as the first argument."
echo ""
echo "testUpdate.sh <platform> [<channel>] [<namespace>]"
exit 1
fi
PACKAGE_VERSION=$2
if [ "${PACKAGE_VERSION}" == "" ]; then
echo "Please specify PACKAGE_VERSION version"
exit 1
fi
namespace=$3
if [ "${namespace}" == "" ]; then
namespace="eclipse-che-preview-test"
fi
channel="stable"
if [[ "${PACKAGE_VERSION}" =~ "nightly" ]]
then
channel="nightly"
OPM_BUNDLE_DIR="${ROOT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}"
OPM_BUNDLE_MANIFESTS_DIR="${OPM_BUNDLE_DIR}/manifests"
fi
packageName=eclipse-che-preview-${platform}
if [ "${channel}" == 'nightly' ]; then
CSV_FILE="${ROOT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}/manifests/che-operator.clusterserviceversion.yaml"
else
if [ ${SOURCE_INSTALL} == "catalog" ]; then
echo "[ERROR] Stable preview channel doesn't support installation using 'catalog'. Use 'Marketplace' instead of it."
function getBundlePath() {
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
channel="${2}"
if [ -z "${channel}" ]; then
echo "[ERROR] Please specify second argument: 'channel'"
exit 1
fi
platformPath="${BASE_DIR}/${packageName}"
packageFolderPath="${platformPath}/deploy/olm-catalog/${packageName}"
CSV_FILE="${packageFolderPath}/${PACKAGE_VERSION}/${packageName}.v${PACKAGE_VERSION}.clusterserviceversion.yaml"
fi
echo "${ROOT_DIR}/deploy/olm-catalog/${channel}/$(getPackageName "${platform}")"
}
CSV=$(yq -r ".metadata.name" "${CSV_FILE}")
getCurrentStableVersion() {
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
echo -e "\u001b[32m PACKAGE_VERSION=${PACKAGE_VERSION} \u001b[0m"
echo -e "\u001b[32m CSV=${CSV} \u001b[0m"
echo -e "\u001b[32m Channel=${channel} \u001b[0m"
echo -e "\u001b[32m Namespace=${namespace} \u001b[0m"
STABLE_BUNDLE_PATH=$(getBundlePath "${platform}" "stable")
LAST_STABLE_CSV="${STABLE_BUNDLE_PATH}/manifests/che-operator.clusterserviceversion.yaml"
# We don't need to delete ${namespace} anymore since tls secret is precreated there.
# if kubectl get namespace "${namespace}" >/dev/null 2>&1
# then
# echo "You should delete namespace '${namespace}' before running the update test first."
# exit 1
# fi
lastStableVersion=$(yq -r ".spec.version" "${LAST_STABLE_CSV}")
echo "${lastStableVersion}"
}
catalog_source() {
marketplaceNamespace=${namespace};
kubectl apply -f - <<EOF
createCatalogSource() {
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
CATALOG_IMAGENAME="${3}"
if [ -z "${CATALOG_IMAGENAME}" ]; then
echo "[ERROR] Please specify third argument: 'catalog image'"
exit 1
fi
packageName=$(getPackageName "${platform}")
kubectl apply -f - <<EOF
apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
@ -96,88 +92,119 @@ EOF
# Create catalog source to communicate with OLM using google rpc protocol.
createRpcCatalogSource() {
NAMESPACE=${1}
indexIp=${2}
cat <<EOF | oc apply -n "${NAMESPACE}" -f - || return $?
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
indexIP="${3}"
if [ -z "${indexIP}" ]; then
echo "[ERROR] Please specify third argument: 'index IP'"
exit 1
fi
packageName=$(getPackageName "${platform}")
cat <<EOF | oc apply -n "${namespace}" -f - || return $?
apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
name: ${packageName}
spec:
address: "${indexIp}:50051"
address: "${indexIP}:50051"
displayName: "Serverless Operator"
publisher: Red Hat
sourceType: grpc
EOF
}
applyCheOperatorInstallationSource() {
if [ ${SOURCE_INSTALL} == "catalog" ]; then
echo "[INFO] Use catalog source(index) image"
catalog_source
else
if [ "${APPLICATION_REGISTRY}" == "" ]; then
echo "[INFO] Use default Eclipse Che application registry"
cat "${platformPath}/operator-source.yaml"
kubectl apply -f "${platformPath}/operator-source.yaml"
else
echo "[INFO] Use custom Che application registry"
cat "${platformPath}/operator-source.yaml" | \
sed -e "s/registryNamespace:.*$/registryNamespace: \"${APPLICATION_REGISTRY}\"/" | \
kubectl apply -f -
fi
fi
}
buildBundleImage() {
CATALOG_BUNDLE_IMAGE_NAME_LOCAL=${1}
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
CATALOG_BUNDLE_IMAGE_NAME_LOCAL="${2}"
if [ -z "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" ]; then
echo "Please specify first argument: opm bundle image"
echo "[ERROR] Please specify second argument: 'opm bundle'"
exit 1
fi
channel="${3}"
if [ -z "${channel}" ]; then
echo "[ERROR] Please specify third argument: 'channel'"
exit 1
fi
imageTool="${4}"
if [ -z "${imageTool}" ]; then
echo "[ERROR] Please specify fourth argument: 'image tool'"
exit 1
fi
imageTool=${2:-docker}
packageName=$(getPackageName "${platform}")
pushd "${OPM_BUNDLE_DIR}" || exit
if [ -z "${OPM_BUNDLE_DIR}" ]; then
bundleDir=$(getBundlePath "${platform}" "${channel}")
else
bundleDir="${OPM_BUNDLE_DIR}"
fi
echo "[INFO] build bundle image for dir: ${OPM_BUNDLE_MANIFESTS_DIR}"
OPM_BUNDLE_MANIFESTS_DIR="${bundleDir}/manifests"
pushd "${bundleDir}" || exit
echo "[INFO] build bundle image for dir: ${bundleDir}"
${OPM_BINARY} alpha bundle build \
-d "${OPM_BUNDLE_MANIFESTS_DIR}" \
--tag "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" \
--package "eclipse-che-preview-${platform}" \
--channels "nightly" \
--default "nightly" \
--package "${packageName}" \
--channels "${channel}" \
--default "${channel}" \
--image-builder "${imageTool}"
# ${OPM_BINARY} alpha bundle validate -t "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" --image-builder "${imageTool}"
SKIP_TLS_VERIFY=""
if [ "${imageTool}" == "podman" ]; then
SKIP_TLS_VERIFY=" --tls-verify=false"
fi
eval "${imageTool}" push "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" "${SKIP_TLS_VERIFY}"
# ${OPM_BINARY} alpha bundle validate -t "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" --image-builder "${imageTool}"
popd || exit
}
# Build catalog source image with index based on bundle image.
buildCatalogImage() {
CATALOG_IMAGENAME=${1}
CATALOG_IMAGENAME="${1}"
if [ -z "${CATALOG_IMAGENAME}" ]; then
echo "Please specify first argument: catalog image"
echo "[ERROR] Please specify first argument: 'catalog image'"
exit 1
fi
CATALOG_BUNDLE_IMAGE_NAME_LOCAL=${2}
CATALOG_BUNDLE_IMAGE_NAME_LOCAL="${2}"
if [ -z "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" ]; then
echo "Please specify second argument: opm bundle image"
echo "[ERROR] Please specify second argument: 'opm bundle image'"
exit 1
fi
imageTool=${3:-docker}
imageTool="${3}"
if [ -z "${imageTool}" ]; then
echo "[ERROR] Please specify third argument: 'image tool'"
exit 1
fi
FROM_INDEX=${4:-""}
forceBuildAndPush="${4}"
if [ -z "${forceBuildAndPush}" ]; then
echo "[ERROR] Please specify fourth argument: 'force build and push: true or false'"
exit 1
fi
# optional argument
FROM_INDEX=${5:-""}
BUILD_INDEX_IMAGE_ARG=""
if [ ! "${FROM_INDEX}" == "" ]; then
BUILD_INDEX_IMAGE_ARG=" --from-index ${FROM_INDEX}"
@ -190,14 +217,34 @@ buildCatalogImage() {
SKIP_TLS_VERIFY=" --tls-verify=false"
fi
eval "${OPM_BINARY}" index add \
--bundles "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" \
--tag "${CATALOG_IMAGENAME}" \
--pull-tool "${imageTool}" \
--build-tool "${imageTool}" \
INDEX_ADD_CMD="${OPM_BINARY} index add \
--bundles ${CATALOG_BUNDLE_IMAGE_NAME_LOCAL} \
--tag ${CATALOG_IMAGENAME} \
--pull-tool ${imageTool} \
--build-tool ${imageTool} \
--binary-image=quay.io/operator-framework/upstream-opm-builder:v1.15.1 \
--mode semver \
"${BUILD_INDEX_IMAGE_ARG}" "${SKIP_TLS_ARG}"
--mode semver ${BUILD_INDEX_IMAGE_ARG} ${SKIP_TLS_ARG}"
exitCode=0
# Execute command and store an error output to the variable for following handling.
{
error=$(eval "${INDEX_ADD_CMD}" 2>&1 1>&$out) || \
{
exitCode="$?";
echo "[INFO] ${exitCode}";
true;
}
} {out}>&1
if [[ "${error}" == *"already exists, Bundle already added that provides package and csv"* ]] && [[ "${forceBuildAndPush}" == "true" ]]; then
echo "[INFO] Ignore error 'Bundle already added'"
# Catalog bundle image contains bundle reference, continue without unnecessary push operation
return
else
echo "[INFO] ${exitCode}"
if [ "${exitCode}" != 0 ]; then
exit "${exitCode}"
fi
fi
eval "${imageTool}" push "${CATALOG_IMAGENAME}" "${SKIP_TLS_VERIFY}"
}
@ -206,9 +253,14 @@ buildCatalogImage() {
# It makes troubles for test scripts, because image bundle could be outdated with
# such pull policy. That's why we launch job to fource image bundle pulling before Che installation.
forcePullingOlmImages() {
CATALOG_BUNDLE_IMAGE_NAME_LOCAL=${1}
namespace="${1}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify first argument: 'namespace'"
exit 1
fi
CATALOG_BUNDLE_IMAGE_NAME_LOCAL="${2}"
if [ -z "${CATALOG_BUNDLE_IMAGE_NAME_LOCAL}" ]; then
echo "Please specify first argument: opm bundle image"
echo "[ERROR] Please specify second argument: opm bundle image"
exit 1
fi
@ -236,6 +288,12 @@ installOPM() {
}
createNamespace() {
namespace="${1}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify first argument: 'namespace'"
exit 1
fi
kubectl apply -f - <<EOF
apiVersion: v1
kind: Namespace
@ -245,61 +303,78 @@ EOF
}
installOperatorMarketPlace() {
echo "Installing test pre-requisistes"
marketplaceNamespace="marketplace"
if [ "${platform}" == "openshift" ];
then
marketplaceNamespace="openshift-marketplace";
applyCheOperatorInstallationSource
else
IFS=$'\n' read -d '' -r -a olmApiGroups < <( kubectl api-resources --api-group=operators.coreos.com -o name ) || true
if [ -z "${olmApiGroups[*]}" ]; then
OLM_VERSION=0.15.1
MARKETPLACE_VERSION=4.5
OPERATOR_MARKETPLACE_VERSION="release-${MARKETPLACE_VERSION}"
echo "[INFO] Installing test pre-requisistes"
IFS=$'\n' read -d '' -r -a olmApiGroups < <( kubectl api-resources --api-group=operators.coreos.com -o name ) || true
if [ -z "${olmApiGroups[*]}" ]; then
OLM_VERSION=v0.17.0
curl -sL https://github.com/operator-framework/operator-lifecycle-manager/releases/download/${OLM_VERSION}/install.sh | bash -s ${OLM_VERSION}
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/01_namespace.yaml
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/03_operatorsource.crd.yaml
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/04_service_account.yaml
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/05_role.yaml
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/06_role_binding.yaml
sleep 1
kubectl apply -f https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/07_upstream_operatorsource.cr.yaml
curl -sL https://raw.githubusercontent.com/operator-framework/operator-marketplace/${OPERATOR_MARKETPLACE_VERSION}/deploy/upstream/08_operator.yaml | \
sed -e "s;quay.io/openshift/origin-operator-marketplace:latest;quay.io/openshift/origin-operator-marketplace:${MARKETPLACE_VERSION};" | \
kubectl apply -f -
fi
fi
}
applyCheOperatorInstallationSource
installCatalogSource() {
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
CATALOG_IMAGENAME=${3}
if [ -z "${CATALOG_IMAGENAME}" ]; then
echo "[ERROR] Please specify third argument: 'catalog image'"
exit 1
fi
packageName=$(getPackageName "${platform}")
i=0
while [ $i -le 240 ]
do
if kubectl get catalogsource/"${packageName}" -n "${marketplaceNamespace}" >/dev/null 2>&1
then
break
fi
sleep 1
((i++))
done
createCatalogSource "${platform}" "${namespace}" "${CATALOG_IMAGENAME}"
if [ $i -gt 240 ]
i=0
while [ $i -le 240 ]
do
if kubectl get catalogsource/"${packageName}" -n "${namespace}" >/dev/null 2>&1
then
echo "Catalog source not created after 4 minutes"
exit 1
fi
if [ "${SOURCE_INSTALL}" == "Marketplace" ]; then
kubectl get catalogsource/"${packageName}" -n "${marketplaceNamespace}" -o json | jq '.metadata.namespace = "olm" | del(.metadata.creationTimestamp) | del(.metadata.uid) | del(.metadata.resourceVersion) | del(.metadata.generation) | del(.metadata.selfLink) | del(.status)' | kubectl apply -f -
marketplaceNamespace="olm"
break
fi
sleep 1
((i++))
done
if [ $i -gt 240 ]
then
echo "[ERROR] Catalog source not created after 4 minutes"
exit 1
fi
}
subscribeToInstallation() {
CSV_NAME="${1-${CSV}}"
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
channel="${3}"
if [ -z "${channel}" ]; then
echo "[ERROR] Please specify third argument: 'channel'"
exit 1
fi
echo "Subscribing to version: ${CSV_NAME}"
# fourth argument is an optional
CSV_NAME="${4-${CSV_NAME}}"
if [ -n "${CSV_NAME}" ]; then
echo "[INFO] Subscribing to the version: '${CSV_NAME}'"
else
echo "[INFO] Subscribing to latest version for channel: '${channel}'"
fi
packageName=$(getPackageName "${platform}")
kubectl apply -f - <<EOF
apiVersion: operators.coreos.com/v1
@ -321,7 +396,7 @@ spec:
installPlanApproval: Manual
name: ${packageName}
source: ${packageName}
sourceNamespace: ${marketplaceNamespace}
sourceNamespace: ${namespace}
startingCSV: ${CSV_NAME}
EOF
@ -330,7 +405,7 @@ EOF
kubectl wait subscription/"${packageName}" -n "${namespace}" --for=condition=InstallPlanPending --timeout=240s
if [ $? -ne 0 ]
then
echo Subscription failed to install the operator
echo "[ERROR] Subscription failed to install the operator"
exit 1
fi
@ -338,6 +413,18 @@ EOF
}
installPackage() {
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
packageName=$(getPackageName "${platform}")
echo "[INFO] Install operator package ${packageName} into namespace ${namespace}"
installPlan=$(kubectl get subscription/"${packageName}" -n "${namespace}" -o jsonpath='{.status.installplan.name}')
@ -352,7 +439,23 @@ installPackage() {
}
applyCRCheCluster() {
echo "Creating Custom Resource"
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
CSV_FILE="${3}"
if [ -z "${CSV_FILE}" ]; then
echo "[ERROR] Please specify third argument: 'CSV_FILE'"
exit 1
fi
echo "[INFO] Creating Custom Resource"
CRs=$(yq -r '.metadata.annotations["alm-examples"]' "${CSV_FILE}")
CR=$(echo "$CRs" | yq -r ".[0]")
if [ "${platform}" == "kubernetes" ]
@ -363,11 +466,17 @@ applyCRCheCluster() {
CR=$(echo "$CR" | yq -r ".spec.auth.openShiftoAuth = false")
fi
echo "$CR" | kubectl apply -n "${namespace}" -f -
echo "$CR" | kubectl apply -n "${namespace}" --validate=false -f -
}
waitCheServerDeploy() {
echo "Waiting for Che server to be deployed"
namespace="${1}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify first argument: 'namespace'"
exit 1
fi
echo "[INFO] Waiting for Che server to be deployed"
set +e -x
i=0
@ -385,20 +494,32 @@ waitCheServerDeploy() {
if [ $i -gt 480 ]
then
echo "Che server did't start after 8 minutes"
echo "[ERROR] Che server did't start after 8 minutes"
exit 1
fi
}
getBundleListFromCatalogSource() {
CATALOG_POD=$(kubectl get pods -n ${namespace} -o yaml | yq -r ".items[] | select(.metadata.name | startswith(\"eclipse-che-preview-${platform}\")) | .metadata.name")
platform="${1}"
if [ -z "${platform}" ]; then
echo "[ERROR] Please specify first argument: 'platform'"
exit 1
fi
namespace="${2}"
if [ -z "${namespace}" ]; then
echo "[ERROR] Please specify second argument: 'namespace'"
exit 1
fi
packageName=$(getPackageName "${platform}")
CATALOG_POD=$(kubectl get pods -n "${namespace}" -o yaml | yq -r ".items[] | select(.metadata.name | startswith(\"${packageName}\")) | .metadata.name")
kubectl wait --for=condition=ready "pods/${CATALOG_POD}" --timeout=60s -n "${namespace}"
CATALOG_SERVICE=$(kubectl get service "eclipse-che-preview-${platform}" -n "${namespace}" -o yaml)
CATALOG_SERVICE=$(kubectl get service "${packageName}" -n "${namespace}" -o yaml)
CATALOG_IP=$(echo "${CATALOG_SERVICE}" | yq -r ".spec.clusterIP")
CATALOG_PORT=$(echo "${CATALOG_SERVICE}" | yq -r ".spec.ports[0].targetPort")
LIST_BUNDLES=$(kubectl run --generator=run-pod/v1 grpcurl-query -n che \
LIST_BUNDLES=$(kubectl run --generator=run-pod/v1 grpcurl-query -n "${namespace}" \
--rm=true \
--restart=Never \
--attach=true \
@ -412,10 +533,16 @@ getBundleListFromCatalogSource() {
}
getPreviousCSVInfo() {
channel="${1}"
if [ -z "${channel}" ]; then
echo "[ERROR] Please specify first argument: 'channel'"
exit 1
fi
previousBundle=$(echo "${LIST_BUNDLES}" | jq -s '.' | jq ". | map(. | select(.channelName == \"${channel}\"))" | yq -r '. |=sort_by(.csvName) | .[length - 2]')
PREVIOUS_CSV_NAME=$(echo "${previousBundle}" | yq -r ".csvName")
if [ "${PREVIOUS_CSV_NAME}" == "null" ]; then
echo "Error: bundle hasn't go previous bundle."
echo "[ERROR] Catalog source image hasn't go previous bundle."
exit 1
fi
export PREVIOUS_CSV_NAME
@ -424,6 +551,12 @@ getPreviousCSVInfo() {
}
getLatestCSVInfo() {
channel="${1}"
if [ -z "${channel}" ]; then
echo "[ERROR] Please specify first argument: 'channel'"
exit 1
fi
latestBundle=$(echo "${LIST_BUNDLES}" | jq -s '.' | jq ". | map(. | select(.channelName == \"${channel}\"))" | yq -r '. |=sort_by(.csvName) | .[length - 1]')
LATEST_CSV_NAME=$(echo "${latestBundle}" | yq -r ".csvName")
export LATEST_CSV_NAME

View File

@ -13,8 +13,9 @@
set -e
CURRENT_DIR=$(pwd)
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
source "${BASE_DIR}/check-yq.sh"
SCRIPT=$(readlink -f "${BASH_SOURCE[0]}")
BASE_DIR=$(dirname "$(dirname "$SCRIPT")")
source "${BASE_DIR}/olm/check-yq.sh"
base_branch="master"
GITHUB_USER="che-bot"
@ -49,17 +50,24 @@ Options:
"
}
. ${BASE_DIR}/olm/olm.sh
installOPM
for platform in 'kubernetes' 'openshift'
do
INDEX_IMAGE="quay.io/eclipse/eclipse-che-${platform}-opm-catalog:preview"
packageName="eclipse-che-preview-${platform}"
echo
echo "## Prepare the OperatorHub package to push to the 'community-operators' repository for platform '${platform}' from local package '${packageName}'"
packageBaseFolderPath="${BASE_DIR}/${packageName}"
manifestPackagesDir=$(mktemp -d -t che-${platform}-manifest-packages-XXX)
echo "[INFO] Folder with manifest packages: ${manifestPackagesDir}"
# Todo: check that github action really has installed docker...
opm index export --index="${INDEX_IMAGE}" --package="${packageName}" -c="docker" --download-folder "${manifestPackagesDir}"
packageBaseFolderPath="${manifestPackagesDir}/${packageName}"
cd "${packageBaseFolderPath}"
packageFolderPath="${packageBaseFolderPath}/deploy/olm-catalog/${packageName}"
sourcePackageFilePath="${packageFolderPath}/${packageName}.package.yaml"
sourcePackageFilePath="${packageBaseFolderPath}/package.yaml"
communityOperatorsLocalGitFolder="${packageBaseFolderPath}/generated/community-operators"
lastPackagePreReleaseVersion=$(yq -r '.channels[] | select(.name == "stable") | .currentCSV' "${sourcePackageFilePath}" | sed -e "s/${packageName}.v//")
@ -110,12 +118,12 @@ do
-e "/^ replaces: ${packageName}.v.*/d" \
-e "/^ version: ${lastPackagePreReleaseVersion}/i\ \ replaces: eclipse-che.v${lastPublishedPackageVersion}" \
-e "s/${packageName}/eclipse-che/" \
"${packageFolderPath}/${lastPackagePreReleaseVersion}/${packageName}.v${lastPackagePreReleaseVersion}.clusterserviceversion.yaml" \
"${packageBaseFolderPath}/${lastPackagePreReleaseVersion}/che-operator.clusterserviceversion.yaml" \
> "${folderToUpdate}/${lastPackagePreReleaseVersion}/eclipse-che.v${lastPackagePreReleaseVersion}.clusterserviceversion.yaml"
echo
echo " - Update the CRD file"
cp "${packageFolderPath}/${lastPackagePreReleaseVersion}/${packageName}.crd.yaml" \
cp "${packageBaseFolderPath}/${lastPackagePreReleaseVersion}/org_v1_che_crd.yaml" \
"${folderToUpdate}/${lastPackagePreReleaseVersion}/checlusters.org.eclipse.che.crd.yaml"
echo
echo " - Update 'stable' channel with new release in the package descriptor: ${destinationPackageFilePath}"

View File

@ -1,87 +0,0 @@
#!/bin/bash
#
# Copyright (c) 2019 Red Hat, Inc.
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# Red Hat, Inc. - initial API and implementation
set -e
CURRENT_DIR=$(pwd)
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
for platform in 'kubernetes' 'openshift'
do
packageName="eclipse-che-preview-${platform}"
if [ "${APPLICATION_REGISTRY}" == "" ]; then
quayNamespace="eclipse-che-operator-${platform}"
else
quayNamespace="${APPLICATION_REGISTRY}"
fi
echo
echo "## Pushing the OperatorHub package '${packageName}' for platform '${platform}' to the Quay.io '${quayNamespace}' organization"
packageBaseFolderPath="${BASE_DIR}/${packageName}"
cd "${packageBaseFolderPath}"
packageFolderPath="${packageBaseFolderPath}/deploy/olm-catalog/${packageName}"
flattenFolderPath="${packageBaseFolderPath}/generated/flatten"
echo " - Flatten package to temporary folder: ${flattenFolderPath}"
rm -Rf "${flattenFolderPath}"
mkdir -p "${flattenFolderPath}"
operator-courier flatten "${packageFolderPath}" generated/flatten
lastGitCommit=$(git log -n 1 --format="%h" -- .)
applicationVersion="9.9.$(date +%s)+${lastGitCommit}"
echo " - Push flattened files to Quay.io namespace '${quayNamespace}' as version ${applicationVersion}"
case ${platform} in
"kubernetes")
QUAY_USERNAME_PLATFORM_VAR="QUAY_USERNAME_K8S"
QUAY_PASSWORD_PLATFORM_VAR="QUAY_PASSWORD_K8S"
QUAY_ECLIPSE_CHE_USERNAME=${QUAY_USERNAME_K8S:-$QUAY_ECLIPSE_CHE_USERNAME}
QUAY_ECLIPSE_CHE_PASSWORD=${QUAY_PASSWORD_K8S:-$QUAY_ECLIPSE_CHE_PASSWORD}
;;
"openshift")
QUAY_USERNAME_PLATFORM_VAR="QUAY_USERNAME_OS"
QUAY_PASSWORD_PLATFORM_VAR="QUAY_PASSWORD_OS"
QUAY_ECLIPSE_CHE_USERNAME=${QUAY_USERNAME_OS:-$QUAY_ECLIPSE_CHE_USERNAME}
QUAY_ECLIPSE_CHE_PASSWORD=${QUAY_PASSWORD_OS:-$QUAY_ECLIPSE_CHE_PASSWORD}
;;
esac
if [ -z "${QUAY_ECLIPSE_CHE_USERNAME}" ] || [ -z "${QUAY_ECLIPSE_CHE_PASSWORD}" ]
then
echo "[ERROR] Must set ${QUAY_USERNAME_PLATFORM_VAR} and ${QUAY_PASSWORD_PLATFORM_VAR} environment variables"
echo "[ERROR] with a user that has write access to the following Quay.io application namespace: ${quayNamespace}"
echo "[ERROR] or QUAY_ECLIPSE_CHE_USERNAME and QUAY_ECLIPSE_CHE_PASSWORD if the same user can access both "
echo "[ERROR] application namespaces 'eclipse-che-operator-kubernetes' and 'eclipse-che-operator-openshift'"
exit 1
fi
# echo "[DEBUG] Authenticating with: QUAY_ECLIPSE_CHE_USERNAME = ${QUAY_ECLIPSE_CHE_USERNAME}"
AUTH_TOKEN=$(curl -sH "Content-Type: application/json" -XPOST https://quay.io/cnr/api/v1/users/login -d '
{
"user": {
"username": "'"${QUAY_ECLIPSE_CHE_USERNAME}"'",
"password": "'"${QUAY_ECLIPSE_CHE_PASSWORD}"'"
}
}' | jq -r '.token')
# if [[ ${AUTH_TOKEN} ]]; then echo "[DEBUG] Got token"; fi
# move all diff files away so we don't get warnings about invalid file names
find . -name "*.yaml.diff" -exec rm -f {} \; || true
# push new applications to quay.io/application/eclipse-che-operator-*
operator-courier push generated/flatten "${quayNamespace}" "${packageName}" "${applicationVersion}" "${AUTH_TOKEN}"
# now put them back
git checkout . || true
done
cd "${CURRENT_DIR}"

View File

@ -14,11 +14,43 @@ set -e
REGEX="^([0-9]+)\\.([0-9]+)\\.([0-9]+)(\\-[0-9a-z-]+(\\.[0-9a-z-]+)*)?(\\+[0-9A-Za-z-]+(\\.[0-9A-Za-z-]+)*)?$"
CURRENT_DIR=$(pwd)
BASE_DIR=$(cd "$(dirname "$0")"; pwd)
ROOT_PROJECT_DIR=$(dirname "${BASE_DIR}")
OPERATOR_DIR=$(dirname $(dirname $(readlink -f "${BASH_SOURCE[0]}")))
BASE_DIR="${OPERATOR_DIR}/olm"
source ${BASE_DIR}/check-yq.sh
command -v pysemver >/dev/null 2>&1 || { echo "[ERROR] pysemver is not installed. Abort."; exit 1; }
export LAST_RELEASE_VERSION
setLatestReleasedVersion() {
versions=$(curl \
-H "Authorization: bearer ${GITHUB_TOKEN}" \
-X POST -H "Content-Type: application/json" --data \
'{"query": "{ repository(owner: \"eclipse\", name: \"che-operator\") { refs(refPrefix: \"refs/tags/\", last: 2, orderBy: {field: TAG_COMMIT_DATE, direction: ASC}) { edges { node { name } } } } }" } ' \
https://api.github.com/graphql)
LAST_RELEASE_VERSION=$(echo "${versions[@]}" | jq '.data.repository.refs.edges[1].node.name | sub("\""; "")' | tr -d '"')
}
downloadLatestReleasedBundleCRCRD() {
mkdir -p "${STABLE_BUNDLE_PATH}/manifests" "${STABLE_BUNDLE_PATH}/generated/${platform}" "${STABLE_BUNDLE_PATH}/metadata"
PRE_RELEASE_CSV="${STABLE_BUNDLE_PATH}/generated/${platform}/che-operator.clusterserviceversion.yaml"
PRE_RELEASE_CRD="${STABLE_BUNDLE_PATH}/generated/${platform}/org_v1_che_crd.yaml"
compareResult=$(pysemver compare "${LAST_RELEASE_VERSION}" "7.27.0")
if [ "${compareResult}" == "1" ]; then
wget "https://raw.githubusercontent.com/eclipse/che-operator/${LAST_RELEASE_VERSION}/deploy/olm-catalog/stable/eclipse-che-preview-${platform}/manifests/che-operator.clusterserviceversion.yaml" \
-q -O "${PRE_RELEASE_CSV}"
wget "https://raw.githubusercontent.com/eclipse/che-operator/${LAST_RELEASE_VERSION}/deploy/olm-catalog/stable/eclipse-che-preview-${platform}/manifests/org_v1_che_crd.yaml" \
-q -O "${PRE_RELEASE_CRD}"
else
wget "https://raw.githubusercontent.com/eclipse/che-operator/${LAST_RELEASE_VERSION}/olm/eclipse-che-preview-${platform}/deploy/olm-catalog/eclipse-che-preview-${platform}/${LAST_RELEASE_VERSION}/eclipse-che-preview-${platform}.v${LAST_RELEASE_VERSION}.clusterserviceversion.yaml" \
-q -O "${PRE_RELEASE_CSV}"
wget "https://raw.githubusercontent.com/eclipse/che-operator/${LAST_RELEASE_VERSION}/olm/eclipse-che-preview-${platform}/deploy/olm-catalog/eclipse-che-preview-${platform}/${LAST_RELEASE_VERSION}/eclipse-che-preview-${platform}.crd.yaml" \
-q -O "${PRE_RELEASE_CRD}"
fi
}
if [[ "$1" =~ $REGEX ]]
then
RELEASE="$1"
@ -30,37 +62,26 @@ fi
for platform in 'kubernetes' 'openshift'
do
packageName="eclipse-che-preview-${platform}"
echo "[INFO] Creating release '${RELEASE}' of the OperatorHub package '${packageName}' for platform '${platform}'"
source ${BASE_DIR}/olm.sh
packageBaseFolderPath="${BASE_DIR}/${packageName}"
cd "${packageBaseFolderPath}"
echo "[INFO] Creating release '${RELEASE}' for platform '${platform}'"
LAST_NIGHTLY_CSV="${ROOT_PROJECT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}/manifests/che-operator.clusterserviceversion.yaml"
LAST_NIGHTLY_CRD="${ROOT_PROJECT_DIR}/deploy/olm-catalog/eclipse-che-preview-${platform}/manifests/org_v1_che_crd.yaml"
packageFolderPath="${packageBaseFolderPath}/deploy/olm-catalog/${packageName}"
packageFilePath="${packageFolderPath}/${packageName}.package.yaml"
NIGHTLY_BUNDLE_PATH=$(getBundlePath "${platform}" "nightly")
LAST_NIGHTLY_CSV="${NIGHTLY_BUNDLE_PATH}/manifests/che-operator.clusterserviceversion.yaml"
LAST_NIGHTLY_CRD="${NIGHTLY_BUNDLE_PATH}/manifests/org_v1_che_crd.yaml"
lastPackageNightlyVersion=$(yq -r ".spec.version" "${LAST_NIGHTLY_CSV}")
lastPackagePreReleaseVersion=$(yq -r '.channels[] | select(.name == "stable") | .currentCSV' "${packageFilePath}" | sed -e "s/${packageName}.v//")
echo "[INFO] Last package nightly version: ${lastPackageNightlyVersion}"
echo "[INFO] Last package pre-release version: ${lastPackagePreReleaseVersion}"
if [ "${lastPackagePreReleaseVersion}" == "${RELEASE}" ]
then
echo "[ERROR] Release ${RELEASE} already exists in the package !"
echo "[ERROR] You should first remove it"
exit 1
fi
STABLE_BUNDLE_PATH=$(getBundlePath "${platform}" "stable")
RELEASE_CSV="${STABLE_BUNDLE_PATH}/manifests/che-operator.clusterserviceversion.yaml"
RELEASE_CRD="${STABLE_BUNDLE_PATH}/manifests/org_v1_che_crd.yaml"
echo "[INFO] Will create release '${RELEASE}' from nightly version ${lastPackageNightlyVersion} that will replace previous release '${lastPackagePreReleaseVersion}'"
setLatestReleasedVersion
downloadLatestReleasedBundleCRCRD
packageName=$(getPackageName "${platform}")
PRE_RELEASE_CSV="${packageFolderPath}/${lastPackagePreReleaseVersion}/${packageName}.v${lastPackagePreReleaseVersion}.clusterserviceversion.yaml"
PRE_RELEASE_CRD="${packageFolderPath}/${lastPackagePreReleaseVersion}/${packageName}.crd.yaml"
RELEASE_CSV="${packageFolderPath}/${RELEASE}/${packageName}.v${RELEASE}.clusterserviceversion.yaml"
RELEASE_CRD="${packageFolderPath}/${RELEASE}/${packageName}.crd.yaml"
echo "[INFO] Will create release '${RELEASE}' from nightly version ${lastPackageNightlyVersion}'"
mkdir -p "${packageFolderPath}/${RELEASE}"
sed \
-e 's/imagePullPolicy: *Always/imagePullPolicy: IfNotPresent/' \
-e 's/"cheImageTag": *"nightly"/"cheImageTag": ""/' \
@ -69,26 +90,40 @@ do
-e 's|"pluginRegistryImage": *"quay.io/eclipse/che-plugin-registry:nightly"|"pluginRegistryImage": ""|' \
-e "/^ replaces: ${packageName}.v.*/d" \
-e "s/^ version: ${lastPackageNightlyVersion}/ version: ${RELEASE}/" \
-e "/^ version: ${RELEASE}/i\ \ replaces: ${packageName}.v${lastPackagePreReleaseVersion}" \
-e "/^ version: ${RELEASE}/i\ \ replaces: ${packageName}.v${LAST_RELEASE_VERSION}" \
-e "s/: nightly/: ${RELEASE}/" \
-e "s/:nightly/:${RELEASE}/" \
-e "s/${lastPackageNightlyVersion}/${RELEASE}/" \
-e "s/createdAt:.*$/createdAt: \"$(date -u +%FT%TZ)\"/" ${LAST_NIGHTLY_CSV} > ${RELEASE_CSV}
-e "s/createdAt:.*$/createdAt: \"$(date -u +%FT%TZ)\"/" "${LAST_NIGHTLY_CSV}" > "${RELEASE_CSV}"
cp ${LAST_NIGHTLY_CRD} ${RELEASE_CRD}
cp "${LAST_NIGHTLY_CRD}" "${RELEASE_CRD}"
cp -rf "${NIGHTLY_BUNDLE_PATH}/bundle.Dockerfile" "${STABLE_BUNDLE_PATH}"
cp -rf "${NIGHTLY_BUNDLE_PATH}/metadata" "${STABLE_BUNDLE_PATH}"
sed -e "s/${lastPackagePreReleaseVersion}/${RELEASE}/" "${packageFilePath}" > "${packageFilePath}.new"
mv "${packageFilePath}.new" "${packageFilePath}"
ANNOTATION_METADATA_YAML="${STABLE_BUNDLE_PATH}/metadata/annotations.yaml"
sed \
-e 's/operators.operatorframework.io.bundle.channels.v1: *nightly/operators.operatorframework.io.bundle.channels.v1: stable/' \
-e 's/operators.operatorframework.io.bundle.channel.default.v1: *nightly/operators.operatorframework.io.bundle.channel.default.v1: stable/' \
-i "${ANNOTATION_METADATA_YAML}"
PLATFORM_DIR=$(pwd)
BUNDLE_DOCKERFILE="${STABLE_BUNDLE_PATH}/bundle.Dockerfile"
sed \
-e 's/LABEL operators.operatorframework.io.bundle.channels.v1=nightly/LABEL operators.operatorframework.io.bundle.channels.v1=stable/' \
-e 's/LABEL operators.operatorframework.io.bundle.channel.default.v1=nightly/LABEL operators.operatorframework.io.bundle.channel.default.v1=stable/' \
-i "${BUNDLE_DOCKERFILE}"
pushd "${CURRENT_DIR}" || true
cd $CURRENT_DIR
source ${BASE_DIR}/addDigests.sh -w ${BASE_DIR} \
-r "eclipse-che-preview-${platform}.*\.v${RELEASE}.*yaml" \
-t ${RELEASE}
-t "${RELEASE}" \
-s "${STABLE_BUNDLE_PATH}/manifests/che-operator.clusterserviceversion.yaml"
cd $PLATFORM_DIR
popd || true
diff -u ${PRE_RELEASE_CSV} ${RELEASE_CSV} > ${RELEASE_CSV}".diff" || true
diff -u ${PRE_RELEASE_CRD} ${RELEASE_CRD} > ${RELEASE_CRD}".diff" || true
if [[ -n "${PRE_RELEASE_CSV}" ]] && [[ -n "${PRE_RELEASE_CRD}" ]]; then
diff -u "${PRE_RELEASE_CSV}" "${RELEASE_CSV}" > "${RELEASE_CSV}.diff" || true
diff -u "${PRE_RELEASE_CRD}" "${RELEASE_CRD}" > "${RELEASE_CRD}.diff" || true
fi
done
echo "[INFO] Release bundles successfully created."

View File

@ -34,10 +34,9 @@ printHelp() {
echo ' PLATFORM - Platform used to run olm files tests'
echo ' CHANNEL - Channel used to tests olm files'
echo ' NAMESPACE - Namespace where Eclipse Che will be deployed'
echo ' INSTALLATION_TYPE - Olm tests now includes two types of installation: Catalog source and marketplace'
echo ' CATALOG_SOURCE_IMAGE - Image name used to create a catalog source in cluster'
echo ''
echo 'EXAMPLE of running: ${OPERATOR_REPO}/olm/testCatalogSource.sh openshift nightly che catalog my_image_name'
echo 'EXAMPLE of running: ${OPERATOR_REPO}/olm/testCatalogSource.sh openshift nightly che my_image_name'
}
# Check if a platform was defined...
@ -70,48 +69,20 @@ else
echo "[INFO]: Successfully asigned namespace ${NAMESPACE} to tests olm files."
fi
# Check if a INSTALLATION_TYPE was defined... The possible installation are marketplace or catalog source
INSTALLATION_TYPE=$4
if [ "${INSTALLATION_TYPE}" == "" ]; then
echo "[ERROR]: Please specify a valid installation type. The valid values are: 'catalog' or 'marketplace'"
printHelp
exit 1
else
echo "[INFO]: Successfully detected installation type: ${INSTALLATION_TYPE}"
fi
# Assign catalog source image
CATALOG_SOURCE_IMAGE=$5
CATALOG_SOURCE_IMAGE=$4
IMAGE_REGISTRY_USER_NAME=${IMAGE_REGISTRY_USER_NAME:-eclipse}
echo "[INFO] Image 'IMAGE_REGISTRY_USER_NAME': ${IMAGE_REGISTRY_USER_NAME}"
init() {
if [[ "${PLATFORM}" == "openshift" ]]
then
export PLATFORM=openshift
PACKAGE_NAME=eclipse-che-preview-openshift
PACKAGE_FOLDER_PATH="${OLM_DIR}/eclipse-che-preview-openshift/deploy/olm-catalog/${PACKAGE_NAME}"
else
PACKAGE_NAME=eclipse-che-preview-${PLATFORM}
PACKAGE_FOLDER_PATH="${OLM_DIR}/eclipse-che-preview-${PLATFORM}/deploy/olm-catalog/${PACKAGE_NAME}"
fi
source "${OLM_DIR}/olm.sh"
OPM_BUNDLE_DIR=$(getBundlePath "${PLATFORM}" "${CHANNEL}")
if [ "${CHANNEL}" == "nightly" ]; then
PACKAGE_FOLDER_PATH="${OPERATOR_REPO}/deploy/olm-catalog/eclipse-che-preview-${PLATFORM}"
CLUSTER_SERVICE_VERSION_FILE="${OPERATOR_REPO}/deploy/olm-catalog/eclipse-che-preview-${PLATFORM}/manifests/che-operator.clusterserviceversion.yaml"
PACKAGE_VERSION=$(yq -r ".spec.version" "${CLUSTER_SERVICE_VERSION_FILE}")
else
PACKAGE_FILE_PATH="${PACKAGE_FOLDER_PATH}/${PACKAGE_NAME}.package.yaml"
CLUSTER_SERVICE_VERSION=$(yq -r ".channels[] | select(.name == \"${CHANNEL}\") | .currentCSV" "${PACKAGE_FILE_PATH}")
PACKAGE_VERSION=$(echo "${CLUSTER_SERVICE_VERSION}" | sed -e "s/${PACKAGE_NAME}.v//")
fi
CSV_FILE="${OPM_BUNDLE_DIR}/manifests/che-operator.clusterserviceversion.yaml"
CSV_NAME=$(yq -r ".metadata.name" "${CSV_FILE}")
source "${OLM_DIR}/olm.sh" "${PLATFORM}" "${PACKAGE_VERSION}" "${NAMESPACE}" "${INSTALLATION_TYPE}"
if [ "${CHANNEL}" == "nightly" ]; then
installOPM
fi
installOPM
}
buildOLMImages() {
@ -134,30 +105,22 @@ buildOLMImages() {
popd || true
# Use operator image in the latest CSV
if [ "${CHANNEL}" == "nightly" ]; then
sed -i "s|image: quay.io/eclipse/che-operator:nightly|image: ${OPERATOR_IMAGE}|" "${CLUSTER_SERVICE_VERSION_FILE}"
sed -i 's|imagePullPolicy: Always|imagePullPolicy: IfNotPresent|' "${CLUSTER_SERVICE_VERSION_FILE}"
else
sed -i 's|imagePullPolicy: Always|imagePullPolicy: IfNotPresent|' "${PACKAGE_FOLDER_PATH}/${PACKAGE_VERSION}/${PACKAGE_NAME}.v${PACKAGE_VERSION}.clusterserviceversion.yaml"
fi
sed -i "s|image: quay.io/eclipse/che-operator:nightly|image: ${OPERATOR_IMAGE}|" "${CSV_FILE}"
sed -i 's|imagePullPolicy: Always|imagePullPolicy: IfNotPresent|' "${CSV_FILE}"
fi
CATALOG_BUNDLE_IMAGE="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/che_operator_bundle:0.0.1"
CATALOG_SOURCE_IMAGE="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/testing_catalog:0.0.1"
if [ "${CHANNEL}" == "nightly" ]; then
echo "[INFO] Build bundle image... ${CATALOG_BUNDLE_IMAGE}"
buildBundleImage "${CATALOG_BUNDLE_IMAGE}"
echo "[INFO] Build catalog image... ${CATALOG_BUNDLE_IMAGE}"
buildCatalogImage "${CATALOG_SOURCE_IMAGE}" "${CATALOG_BUNDLE_IMAGE}"
fi
echo "[INFO] Build bundle image... ${CATALOG_BUNDLE_IMAGE}"
buildBundleImage "${PLATFORM}" "${CATALOG_BUNDLE_IMAGE}" "${CHANNEL}" "docker"
echo "[INFO] Build catalog image... ${CATALOG_BUNDLE_IMAGE}"
buildCatalogImage "${CATALOG_SOURCE_IMAGE}" "${CATALOG_BUNDLE_IMAGE}" "docker" "false"
echo "[INFO]: Successfully created catalog source container image and enabled minikube ingress."
elif [[ "${PLATFORM}" == "openshift" ]]
then
if [ "${INSTALLATION_TYPE}" == "Marketplace" ];then
return
fi
echo "[INFO]: Starting to build catalog image and push to ImageStream."
echo "============"
@ -193,11 +156,11 @@ buildOLMImages() {
oc -n "${NAMESPACE}" new-build --binary --strategy=docker --name serverless-bundle
cp -rf "${PACKAGE_FOLDER_PATH}/bundle.Dockerfile" "${PACKAGE_FOLDER_PATH}/Dockerfile"
if oc -n "${NAMESPACE}" start-build serverless-bundle --from-dir "${PACKAGE_FOLDER_PATH}"; then
rm -rf "${PACKAGE_FOLDER_PATH}/Dockerfile"
cp -rf "${OPM_BUNDLE_DIR}/bundle.Dockerfile" "${OPM_BUNDLE_DIR}/Dockerfile"
if oc -n "${NAMESPACE}" start-build serverless-bundle --from-dir "${OPM_BUNDLE_DIR}"; then
rm -rf "${OPM_BUNDLE_DIR}/Dockerfile"
else
rm -rf "${PACKAGE_FOLDER_PATH}/Dockerfile"
rm -rf "${OPM_BUNDLE_DIR}/Dockerfile"
echo "[ERROR ]Failed to build bundle image."
exit 1
fi
@ -244,10 +207,10 @@ EOF
# Wait for the index pod to be up to avoid inconsistencies with the catalog source.
kubectl wait --for=condition=ready "pods" -l app=catalog-source-app --timeout=120s -n "${NAMESPACE}" || true
indexip="$(oc -n "$NAMESPACE" get pods -l app=catalog-source-app -o jsonpath='{.items[0].status.podIP}')"
indexIP="$(oc -n "${NAMESPACE}" get pods -l app=catalog-source-app -o jsonpath='{.items[0].status.podIP}')"
# Install the catalogsource.
createRpcCatalogSource "${NAMESPACE}" "${indexip}"
createRpcCatalogSource "${PLATFORM}" "${NAMESPACE}" "${indexIP}"
else
echo "[ERROR]: Error to start olm tests. Invalid Platform"
printHelp
@ -256,31 +219,34 @@ EOF
}
run() {
createNamespace
if [ ! ${PLATFORM} == "openshift" ] && [ "${CHANNEL}" == "nightly" ]; then
forcePullingOlmImages "${CATALOG_BUNDLE_IMAGE}"
createNamespace "${NAMESPACE}"
if [ ! "${PLATFORM}" == "openshift" ]; then
forcePullingOlmImages "${NAMESPACE}" "${CATALOG_BUNDLE_IMAGE}"
fi
installOperatorMarketPlace
subscribeToInstallation
if [ ! "${PLATFORM}" == "openshift" ]; then
installCatalogSource "${PLATFORM}" "${NAMESPACE}" "${CATALOG_SOURCE_IMAGE}"
fi
subscribeToInstallation "${PLATFORM}" "${NAMESPACE}" "${CHANNEL}" "${CSV_NAME}"
installPackage
applyCRCheCluster
waitCheServerDeploy
installPackage "${PLATFORM}" "${NAMESPACE}"
applyCRCheCluster "${PLATFORM}" "${NAMESPACE}" "${CSV_FILE}"
waitCheServerDeploy "${NAMESPACE}"
}
function add_user {
name=$1
pass=$2
echo "Creating user $name:$pass"
echo "[INFO] Creating user $name:$pass"
PASSWD_TEMP_DIR="$(mktemp -q -d -t "passwd_XXXXXX" 2>/dev/null || mktemp -q -d)"
HT_PASSWD_FILE="${PASSWD_TEMP_DIR}/users.htpasswd"
touch "${HT_PASSWD_FILE}"
htpasswd -b "${HT_PASSWD_FILE}" "$name" "$pass"
echo "HTPASSWD content is:======================="
echo "====== HTPASSWD content is:========"
cat "${HT_PASSWD_FILE}"
echo "==================================="

View File

@ -35,53 +35,37 @@ if [ "${namespace}" == "" ]; then
namespace="eclipse-che-preview-test"
fi
IMAGE_REGISTRY_HOST=${IMAGE_REGISTRY_HOST:-quay.io}
IMAGE_REGISTRY_USER_NAME=${IMAGE_REGISTRY_USER_NAME:-eclipse}
init() {
if [ "${channel}" == "stable" ]; then
packageName=eclipse-che-preview-${platform}
platformPath=${OPERATOR_REPO}/olm/${packageName}
packageFolderPath="${platformPath}/deploy/olm-catalog/${packageName}"
packageFilePath="${packageFolderPath}/${packageName}.package.yaml"
IMAGE_REGISTRY_HOST=${IMAGE_REGISTRY_HOST:-quay.io}
IMAGE_REGISTRY_USER_NAME=${IMAGE_REGISTRY_USER_NAME:-eclipse}
export CATALOG_IMAGENAME="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${platform}-opm-catalog:preview"
LATEST_CSV_NAME=$(yq -r ".channels[] | select(.name == \"${channel}\") | .currentCSV" "${packageFilePath}")
lastPackageVersion=$(echo "${LATEST_CSV_NAME}" | sed -e "s/${packageName}.v//")
PREVIOUS_CSV_NAME=$(sed -n 's|^ *replaces: *\([^ ]*\) *|\1|p' "${packageFolderPath}/${lastPackageVersion}/${packageName}.v${lastPackageVersion}.clusterserviceversion.yaml")
PACKAGE_VERSION=$(echo "${PREVIOUS_CSV_NAME}" | sed -e "s/${packageName}.v//")
INSTALLATION_TYPE="Marketplace"
else
packageFolderPath="${OPERATOR_REPO}/deploy/olm-catalog/eclipse-che-preview-${platform}"
PACKAGE_VERSION="nightly"
export CATALOG_IMAGENAME="${IMAGE_REGISTRY_HOST}/${IMAGE_REGISTRY_USER_NAME}/eclipse-che-${platform}-opm-catalog:preview"
INSTALLATION_TYPE="catalog"
fi
source "${OPERATOR_REPO}/olm/olm.sh"
OPM_BUNDLE_DIR=$(getBundlePath "${platform}" "${channel}")
CSV_FILE_PATH="${OPM_BUNDLE_DIR}/manifests/che-operator.clusterserviceversion.yaml"
}
run() {
# $3 -> namespace
source "${OPERATOR_REPO}/olm/olm.sh" "${platform}" "${PACKAGE_VERSION}" "${namespace}" "${INSTALLATION_TYPE}"
createNamespace
createNamespace "${namespace}"
installOperatorMarketPlace
installCatalogSource "${platform}" "${namespace}" "${CATALOG_IMAGENAME}"
if [ "${channel}" == "nightly" ]; then
getBundleListFromCatalogSource
getPreviousCSVInfo
getLatestCSVInfo
getBundleListFromCatalogSource "${platform}" "${namespace}"
getPreviousCSVInfo "${channel}"
getLatestCSVInfo "${channel}"
forcePullingOlmImages "${PREVIOUS_CSV_BUNDLE_IMAGE}"
forcePullingOlmImages "${LATEST_CSV_BUNDLE_IMAGE}"
fi
forcePullingOlmImages "${namespace}" "${PREVIOUS_CSV_BUNDLE_IMAGE}"
forcePullingOlmImages "${namespace}" "${LATEST_CSV_BUNDLE_IMAGE}"
subscribeToInstallation "${PREVIOUS_CSV_NAME}"
installPackage
subscribeToInstallation "${platform}" "${namespace}" "${channel}" "${PREVIOUS_CSV_NAME}"
installPackage "${platform}" "${namespace}"
echo -e "\u001b[32m Installation of the previous che-operator version: ${PREVIOUS_CSV_NAME} successfully completed \u001b[0m"
applyCRCheCluster
waitCheServerDeploy
applyCRCheCluster "${platform}" "${namespace}" "${CSV_FILE_PATH}"
waitCheServerDeploy "${namespace}"
installPackage
installPackage "${platform}" "${namespace}"
echo -e "\u001b[32m Installation of the latest che-operator version: ${LATEST_CSV_NAME} successfully completed \u001b[0m"
}

View File

@ -46,6 +46,7 @@ eval head -10 "${OPERATOR_YAML}" > ${NEW_OPERATOR_YAML}
ROOT_PROJECT_DIR=$(dirname "${BASE_DIR}")
TAG=$1
source ${BASE_DIR}/check-yq.sh
source ${BASE_DIR}/olm.sh
ubiMinimal8Version=$(skopeo inspect docker://registry.access.redhat.com/ubi8-minimal:latest | jq -r '.Labels.version')
ubiMinimal8Release=$(skopeo inspect docker://registry.access.redhat.com/ubi8-minimal:latest | jq -r '.Labels.release')
@ -74,24 +75,22 @@ do
incrementNightlyVersion "${platform}"
fi
echo "[INFO] Updating OperatorHub bundle for platform '${platform}' for platform '${platform}'"
echo "[INFO] Updating OperatorHub bundle for platform '${platform}'"
pushd "${ROOT_PROJECT_DIR}" || true
olmCatalog=${ROOT_PROJECT_DIR}/deploy/olm-catalog
bundleFolder=${olmCatalog}/eclipse-che-preview-${platform}
NIGHTLY_BUNDLE_PATH=$(getBundlePath "${platform}" "nightly")
bundleCSVName="che-operator.clusterserviceversion.yaml"
NEW_CSV=${bundleFolder}/manifests/${bundleCSVName}
NEW_CSV=${NIGHTLY_BUNDLE_PATH}/manifests/${bundleCSVName}
newNightlyBundleVersion=$(yq -r ".spec.version" "${NEW_CSV}")
echo "[INFO] Will create new nightly bundle version: ${newNightlyBundleVersion}"
echo "[INFO] Creation new nightly bundle version: ${newNightlyBundleVersion}"
csv_config=${olmCatalog}/eclipse-che-preview-${platform}/csv-config.yaml
generateFolder=${olmCatalog}/eclipse-che-preview-${platform}/generated
csv_config=${NIGHTLY_BUNDLE_PATH}/csv-config.yaml
generateFolder=${NIGHTLY_BUNDLE_PATH}/generated
rm -rf "${generateFolder}"
mkdir -p "${generateFolder}"
"${bundleFolder}"/build-roles.sh
"${NIGHTLY_BUNDLE_PATH}/build-roles.sh"
operatorYaml=$(yq -r ".\"operator-path\"" "${csv_config}")
cp -rf "${operatorYaml}" "${generateFolder}/"
@ -102,7 +101,7 @@ do
"${OPERATOR_SDK_BINARY}" generate csv \
--csv-version "${newNightlyBundleVersion}" \
--deploy-dir "${generateFolder}" \
--output-dir "${bundleFolder}" 2>&1 | sed -e 's/^/ /'
--output-dir "${NIGHTLY_BUNDLE_PATH}" 2>&1 | sed -e 's/^/ /'
containerImage=$(sed -n 's|^ *image: *\([^ ]*/che-operator:[^ ]*\) *|\1|p' ${NEW_CSV})
echo "[INFO] Updating new package version fields:"
@ -122,7 +121,7 @@ do
fi
templateCRD="${ROOT_PROJECT_DIR}/deploy/crds/org_v1_che_crd.yaml"
platformCRD="${bundleFolder}/manifests/org_v1_che_crd.yaml"
platformCRD="${NIGHTLY_BUNDLE_PATH}/manifests/org_v1_che_crd.yaml"
cp -rf $templateCRD $platformCRD
if [[ $platform == "openshift" ]]; then

View File

@ -14,6 +14,7 @@ package che
import (
"context"
"fmt"
"reflect"
"strconv"
"strings"
"time"
@ -1235,7 +1236,7 @@ func (r *ReconcileChe) autoEnableOAuth(deployContext *deploy.DeployContext, requ
}
newOAuthValue := util.NewBoolPointer(oauth)
if !util.CompareBoolPointers(newOAuthValue, cr.Spec.Auth.OpenShiftoAuth) {
if !reflect.DeepEqual(newOAuthValue, cr.Spec.Auth.OpenShiftoAuth) {
cr.Spec.Auth.OpenShiftoAuth = newOAuthValue
if err := r.UpdateCheCRSpec(cr, "openShiftoAuth", strconv.FormatBool(oauth)); err != nil {
return reconcile.Result{Requeue: true, RequeueAfter: time.Second * 1}, err

View File

@ -385,21 +385,6 @@ func GetWorkspaceNamespaceDefault(cr *orgv1.CheCluster) string {
return GetValue(cr.Spec.Server.WorkspaceNamespaceDefault, workspaceNamespaceDefault)
}
// CompareBoolPointers compares two *bool variables. Returns "true" when both
// variables are nil, true or false. Otherwise returns "false".
func CompareBoolPointers(a *bool, b *bool) bool {
if a == nil && b == nil {
return true
}
if a == nil && b != nil {
return false
}
if b == nil && a != nil {
return false
}
return *a == *b
}
// IsDeleteOAuthInitialUser - returns true when initial Openshfit oAuth user must be deleted.
func IsDeleteOAuthInitialUser(cr *orgv1.CheCluster) bool {
return cr.Spec.Auth.InitialOpenShiftOAuthUser != nil && !*cr.Spec.Auth.InitialOpenShiftOAuthUser && cr.Status.OpenShiftOAuthUserCredentialsSecret != ""