From 5736506f9bd1d5b6fdb07b917c5f7474d601177e Mon Sep 17 00:00:00 2001 From: che-bot <39771996+che-bot@users.noreply.github.com> Date: Mon, 1 Feb 2021 09:36:59 +0100 Subject: [PATCH 1/8] Copy 7.25.1 csv to master (#656) Signed-off-by: Mykhailo Kuznietsov Co-authored-by: Mykhailo Kuznietsov --- .../eclipse-che-preview-kubernetes.crd.yaml | 826 +++++++++++++ ...lipse-che-preview-kubernetes.crd.yaml.diff | 0 ...ernetes.v7.25.1.clusterserviceversion.yaml | 853 +++++++++++++ ...es.v7.25.1.clusterserviceversion.yaml.diff | 342 ++++++ ...clipse-che-preview-kubernetes.package.yaml | 2 +- .../eclipse-che-preview-openshift.crd.yaml | 827 +++++++++++++ ...clipse-che-preview-openshift.crd.yaml.diff | 0 ...enshift.v7.25.1.clusterserviceversion.yaml | 1073 +++++++++++++++++ ...ft.v7.25.1.clusterserviceversion.yaml.diff | 492 ++++++++ ...eclipse-che-preview-openshift.package.yaml | 2 +- 10 files changed, 4415 insertions(+), 2 deletions(-) create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml.diff create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml.diff create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml.diff create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml.diff diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml new file mode 100644 index 000000000..fc0d9cb6a --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml @@ -0,0 +1,826 @@ +# +# 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 config + maps that will contain the appropriate environment variables the various + components of the Che installation. These generated config maps should + 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). By + default a dedicated Identity Provider server is deployed as part + of the Che installation. But if `externalIdentityProvider` is + `true`, then no dedicated identity provider will be deployed by + the operator and you might need to provide details about the external + identity provider you want to use. See also all the other fields + starting with: `identityProvider`.' + type: boolean + identityProviderAdminUserName: + description: Overrides the name of the Identity Provider admin user. + Defaults to `admin`. + type: string + identityProviderClientId: + description: Name of a Identity provider (Keycloak / RH SSO) `client-id` + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be 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 / RH SSO) deployment. This includes the image + tag. Omit it or leave it empty to use the defaut container image + provided by the operator. + type: string + identityProviderImagePullPolicy: + description: Overrides the image pull policy used in the Identity + Provider (Keycloak / 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 (scope and select) objects. + type: string + type: object + identityProviderPassword: + description: Overrides the password of Keycloak admin user. This + is useful to override it ONLY if you use an external Identity + Provider (see the `externalIdentityProvider` field). If omitted + or left blank, it will be set to an auto-generated password. + type: string + identityProviderPostgresPassword: + description: Password for The Identity Provider (Keycloak / 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). If omitted or left blank, it will be set to an auto-generated + password. + type: string + identityProviderPostgresSecret: + description: 'The secret that contains `password` for The Identity + Provider (Keycloak / RH SSO) to connect to the database. If the + secret is defined then `identityProviderPostgresPassword` will + be ignored. If the value is omitted or left blank then there are + two scenarios: 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 / RH SSO) realm + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be set to the value + of the `flavour` field. + type: string + identityProviderRoute: + description: Route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + identityProviderSecret: + description: 'The secret that contains `user` and `password` for + Identity Provider. If the secret is defined then `identityProviderAdminUserName` + and `identityProviderPassword` are ignored. If the value is omitted + or left blank then there are two scenarios: 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). You should set it ONLY if you use an external + Identity Provider (see the `externalIdentityProvider` field). + By default this will be automatically calculated and set by the + operator. + type: string + 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. + 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. + type: string + openShiftoAuth: + description: 'Enables the integration of the identity provider (Keycloak + / RHSSO) with OpenShift OAuth. Empty value on the OpenShift platform + by default. If user changes this empty value to true/false, then + che-operator respect this value. Otherwise che-operator tries + to auto detect if Openshift oAuth can be enabled and change empty + value, correspondly to auto-detection result. This property allows + 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: Postgres 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: Postgres database name that the Che server uses to + connect to the DB. Defaults to `dbche`. + type: string + chePostgresHostName: + description: Postgres Database hostname that the Che server uses + to connect to. Defaults to postgres. This value should be overridden + 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: Postgres password that the Che server should use to + connect to the DB. If omitted or left blank, it will be set to + an auto-generated value. + type: string + chePostgresPort: + description: Postgres Database port that the Che server uses to + connect to. Defaults to 5432. This value should be overridden + 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 Postgres `user` and `password` + that the Che server should use to connect to the DB. If the secret + is defined then `chePostgresUser` and `chePostgresPassword` are + ignored. If the value is omitted or left blank then there are + two scenarios: 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: Postgres user that the Che server should use to connect + to the DB. Defaults to `pgche`. + type: string + externalDb: + description: 'Instructs the operator on whether or not to deploy + a dedicated database. By default a dedicated Postgres database + is deployed as part of the Che installation. But if `externalDb` + is `true`, then no dedicated database will be deployed by the + operator and you might need to provide connection details to the + external DB you want to use. See also all the fields starting + with: `chePostgres`.' + type: boolean + postgresImage: + description: Overrides the container image used in the Postgres + database deployment. This includes the image tag. Omit it or leave + it empty to use the defaut container image provided by the operator. + type: string + postgresImagePullPolicy: + description: Overrides the image pull policy used in the Postgres + 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. 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 or not a spec is provided. \n Please note that while this + operator and its behavior is community-supported, its payload + may be commercially-supported if you use it 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 controler + will manage ingresses. Defaults to `nginx`. NB: This drives the + `is 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.' + type: string + ingressStrategy: + description: Strategy for ingress creation. This can be `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. If both are + defined, `serverExposureStrategy` takes precedence. + type: string + securityContextFsGroup: + description: FSGroup the Che pod and Workspace pods containers should + run in. Defaults to `1724`. + type: string + securityContextRunAsUser: + description: ID of the user the Che pod and Workspace pods containers + should run as. Default to `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 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 is used to set ingress TLS termination + if TLS is enabled. If the specified secret does not exist, a self-signed + certificate will be created. If the value is empty or omitted, + the default ingress controller certificate will be used. See also + the `tlsSupport` field. Note, when switching to the default ingress + controller certificate, `self-signed-certificate` secret should + be deleted manually. + type: string + type: object + metrics: + description: Configuration settings related to the metrics collection + used by the Che installation. + properties: + enable: + description: Enables `metrics` 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 hostname (or url) to an alternate container + registry to pull images from. This value overrides the container + registry hostname defined in all the default container images + involved in a Che deployment. This is particularly useful to install + Che in an air-gapped 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 + Che in an air-gapped environment. + type: string + allowUserDefinedWorkspaceNamespaces: + description: Defines if a user is able to specify Kubernetes namespace + (or OpenShift project) different from the default. It's NOT RECOMMENDED + to configured true without OAuth configured. This property is + also used by the OpenShift infra. + type: boolean + cheClusterRoles: + description: Comma-separated list of ClusterRoles that will be assigned + to che ServiceAccount. Be aware that che-operator has to already + have all permissions in these ClusterRoles to be able to grant + them. + type: string + cheDebug: + description: Enables the debug mode for Che server. Defaults to + `false`. + type: string + cheFlavor: + description: Flavor of the installation. This is either `che` for + upstream Che installations, or `codeready` for CodeReady Workspaces + installation. In most cases the default value should not be overridden. + type: string + cheHost: + description: Public hostname of the installed Che server. If value + is omitted then 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/route for the custom hostname 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 defaut 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 defaut 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: Che server ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + cheServerRoute: + description: Che server route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + 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. + type: string + customCheProperties: + additionalProperties: + type: string + description: Map of additional environment variables that will be + applied in the generated `che` config map to be used by the Che + server, in addition to the values already generated from other + fields of the `CheCluster` custom resource (CR). If `customCheProperties` + contains a property that would be normally generated in `che` + config map from other CR fields, then the value defined in the + `customCheProperties` will be 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 defaut container image provided by the operator. + type: string + devfileRegistryIngress: + description: Devfile registry ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryMemoryLimit: + description: Overrides the memory limit used in the Devfile registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + devfileRegistryMemoryRequest: + description: Overrides the memory request used in the Devfile registry + deployment In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: Devfile registry route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryUrl: + description: Public URL of the Devfile registry, that serves sample, + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (see the `externalDevfileRegistry` field). By + default this will be automatically calculated by the operator. + type: string + externalDevfileRegistry: + description: Instructs the operator on whether or not to deploy + a dedicated Devfile registry server. By default a dedicated devfile + registry server is started. But if `externalDevfileRegistry` is + `true`, then 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 or not to deploy + a dedicated Plugin registry server. By default a dedicated plugin + registry server is started. But if `externalPluginRegistry` is + `true`, then no such dedicated server will be started by the operator + and you will have to manually set the `pluginRegistryUrl` field. + type: boolean + gitSelfSignedCert: + description: If enabled, then the certificate from `che-git-self-signed-cert` + config map will be propagated to the Che components and provide + particular configuration for Git. + type: boolean + nonProxyHosts: + description: 'List of hosts that should not use the configured proxy. + So specify wild card domain use the following form `.` + and `|` as delimiter, eg: `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 (scope and select) objects. + type: string + type: object + pluginRegistryMemoryLimit: + description: Overrides the memory limit used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + pluginRegistryMemoryRequest: + description: Overrides the memory request used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + pluginRegistryUrl: + description: Public URL of the Plugin registry, that serves sample + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (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 also 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. If the secret is defined then `proxyUser` and + `proxyPassword` are ignored + type: string + proxyURL: + description: URL (protocol+hostname) 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. Che + operator will automatically detect if router certificate is self-signed. + If so it will be propagated to Che server and some other components. + 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 route on + OpenShift) for every required endpoint. "single-host" makes Che + exposed on a single hostname with workspaces exposed on subpaths. + Please read the docs to learn about the limitations of this approach. + Also consult the `singleHostExposureType` property to further + configure how the operator and Che server make that happen on + Kubernetes. "default-host" exposes che server on the host of the + cluster. Please 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. + In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). Defaults + to 1Gi. + type: string + serverMemoryRequest: + description: Overrides the memory request used in the Che server + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 512Mi. + type: string + serverTrustStoreConfigMapName: + description: Name of the config-map with public certificates to + add to Java trust store of the Che server. This is usually required + when adding the OpenShift OAuth provider which has https endpoint + signed with self-signed cert. So, 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 (and are put) on + 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 defaut 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 defaut 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 may 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 if user does not override it. It''s possible + to use , and placeholders (e.g.: + che-workspace-). In that case, new namespace will be + created for each user (or workspace). Is used by OpenShift infra + as well to specify Project' + 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 Postgres database. If omitted or left blank, default storage + class is used. + type: string + preCreateSubPaths: + description: Instructs the Che server to launch a special pod to + pre-create a subpath in the Persistent Volumes. Defaults to `false`, + however it might need to enable it according to the configuration + of your K8S 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 defaut 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. If omitted or left blank, 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 if or not a Postgres instance has been correctly + provisioned + type: boolean + devfileRegistryURL: + description: Public URL to the Devfile registry + type: string + gitHubOAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been configured to integrate with the GitHub OAuth. + type: boolean + helpLink: + description: A URL that can point to some URL where to find help related + to the current Operator status. + type: string + keycloakProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been provisioned with realm, client and user + type: boolean + keycloakURL: + description: Public URL to the Identity Provider server (Keycloak / + RH SSO). + type: string + message: + description: A human readable message indicating details about why the + pod is in this condition. + type: string + openShiftoAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / 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 diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml.diff b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.crd.yaml.diff new file mode 100644 index 000000000..e69de29bb diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml new file mode 100644 index 000000000..9b1ad411c --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml @@ -0,0 +1,853 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "org.eclipse.che/v1", + "kind": "CheCluster", + "metadata": { + "name": "eclipse-che" + }, + "spec": { + "auth": { + "externalIdentityProvider": false, + "identityProviderAdminUserName": "", + "identityProviderClientId": "", + "identityProviderImage": "", + "identityProviderPassword": "", + "identityProviderRealm": "", + "identityProviderURL": "", + "oAuthClientName": "", + "oAuthSecret": "" + }, + "database": { + "chePostgresDb": "", + "chePostgresHostName": "", + "chePostgresPassword": "", + "chePostgresPort": "", + "chePostgresUser": "", + "externalDb": false, + "postgresImage": "" + }, + "k8s": { + "ingressClass": "", + "ingressDomain": "", + "ingressStrategy": "", + "securityContextFsGroup": "", + "securityContextRunAsUser": "", + "singleHostExposureType": "", + "tlsSecretName": "che-tls" + }, + "metrics": { + "enable": true + }, + "server": { + "allowUserDefinedWorkspaceNamespaces": false, + "cheClusterRoles": "", + "cheFlavor": "", + "cheImage": "", + "cheImageTag": "", + "cheWorkspaceClusterRole": "", + "devfileRegistryImage": "", + "gitSelfSignedCert": false, + "nonProxyHosts": "", + "pluginRegistryImage": "", + "proxyPassword": "", + "proxyPort": "", + "proxyURL": "", + "proxyUser": "", + "serverExposureStrategy": "", + "serverMemoryLimit": "", + "serverMemoryRequest": "", + "serverTrustStoreConfigMapName": "", + "singleHostGatewayConfigMapLabels": {}, + "singleHostGatewayConfigSidecarImage": "", + "singleHostGatewayImage": "", + "tlsSupport": true, + "useInternalClusterSVCNames": true, + "workspaceNamespaceDefault": "" + }, + "storage": { + "postgresPVCStorageClassName": "", + "preCreateSubPaths": true, + "pvcClaimSize": "1Gi", + "pvcJobsImage": "", + "pvcStrategy": "common", + "workspacePVCStorageClassName": "" + } + } + } + ] + capabilities: Seamless Upgrades + categories: Developer Tools + certified: "false" + containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + createdAt: "2021-01-29T08:26:25Z" + 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.25.1 + namespace: placeholder +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - description: The `CheCluster` custom resource allows defining and managing + a Che server installation + displayName: Eclipse Che Cluster + kind: CheCluster + name: checlusters.org.eclipse.che + specDescriptors: + - description: Deprecated. Instructs the operator to deploy Che in TLS mode. + This is enabled by default. Disabling TLS may cause malfunction of some + Che components. + displayName: Tls support + path: server.tlsSupport + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + statusDescriptors: + - description: Status of a Che installation. Can be `Available`, `Unavailable`, + or `Available, Rolling Update in Progress` + displayName: Status + path: cheClusterRunning + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase + - description: Public URL to the Che server + displayName: Eclipse Che URL + path: cheURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Current installed Che version + displayName: 'displayName: Eclipse Che version' + path: cheVersion + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A URL that can point to some URL where to find help related + to the current Operator status. + displayName: Help link + path: helpLink + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Public URL to the Identity Provider server (Keycloak / RH + SSO). + displayName: Keycloak Admin Console URL + path: keycloakURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A human readable message indicating details about why the + pod is in this condition. + displayName: Message + path: message + x-descriptors: + - urn:alm:descriptor:text + - description: A brief CamelCase message indicating details about why the + pod is in this state. + displayName: Reason + path: reason + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase:reason + - urn:alm:descriptor:text + version: v1 + description: | + A collaborative Kubernetes-native development solution that delivers Kubernetes workspaces and in-browser IDE for rapid cloud application development. + This operator installs PostgreSQL, Keycloak, Registries and the Eclipse Che server, as well as configures all these services. + ## Prerequisites + - Operator Lifecycle Manager (OLM) needs to be installed. + - Kubernetes Platform. For OpenShift, the installation is directly made from OperatorHub UI in the admin console. + + OLM installation can be checked by running the command: + ``` + $ kubectl get pods --all-namespaces | grep olm + olm catalog-operator-7b8cd7f8bf-2v7zj 1/1 Running 0 10m + olm olm-operator-5c5c798cd5-s6ll5 1/1 Running 0 10m + olm olm-operators-fm5wc 1/1 Running 0 10m + olm operatorhubio-catalog-d78km 1/1 Running 0 10m + olm packageserver-5c5f64947b-trghp 1/1 Running 0 9m56s + olm packageserver-5c5f64947b-zqvxg 1/1 Running 0 9m56s + ``` + + ## How to Install + Install `Eclipse Che Operator` by following instructions in top right button `Install`. + + A new pod che-operator is created in `my-eclipse-che` namespace + + ``` + $ kubectl get pods --all-namespaces | grep my-eclipse-che + my-eclipse-che che-operator-554c564476-fl98z 1/1 Running 0 13s + ``` + + The operator is now providing new Custom Resources Definitions: `checluster.org.eclipse.che` + + Create a new Eclipse Che instance by creating a new CheCluster resource: + + On the bottom of this page, there is a section `Custom Resource Definitions` with `Eclipse Che Cluster` name. + + Click on `View YAML Example` *Link* and copy the content to a new file named `my-eclipse-che.yaml` + **Important!** Make sure you provide **K8s.ingressDomain** which is a global ingress domain of your k8s cluster, for example, `gcp.my-ide.cloud` + Create the new CheCluster by creating the resource in the `my-eclipse-che` namespace : + ``` + $ kubectl create -f my-eclipse-che.yaml -n my-eclipse-che + ``` + ***important:*** The operator is only tracking resources in its own namespace. If CheCluster is not created in this namespace it's ignored. + The operator will now create pods for Eclipse Che. The deployment status can be tracked by looking at the Operator logs by using the command: + ``` + $ kubectl logs -n my-eclipse-che che-operator-554c564476-fl98z + ``` + ***important:*** pod name is different on each installation + + When all Eclipse Che containers are running, the Eclipse Che URL is printed + + + Eclipse Che URL can be tracked by searching for available trace: + ``` + $ kubectl logs -f -n my-eclipse-che che-operator-7b6b4bcb9c-m4m2m | grep "Eclipse Che is now available" + time="2019-08-01T13:31:05Z" level=info msg="Eclipse Che is now available at: http://che-my-eclipse-che.gcp.my-ide.cloud" + ``` + When Eclipse Che is ready, the Eclipse Che URL is displayed in CheCluster resource in `status` section + ``` + $ kubectl describe checluster/eclipse-che -n my-eclipse-che + ``` + + ``` + Status: + Che Cluster Running: Available + Che URL: http://che-my-eclipse-che.gcp.my-ide.cloud + Che Version: 7.0.0 + ... + ``` + + By opening this URL in a web browser, Eclipse Che is ready to use. + ## Defaults + By default, the operator deploys Eclipse Che with: + * Bundled PostgreSQL and Keycloak + * Per-Workspace PVC strategy + * Auto-generated passwords + * TLS mode (secure routes) + ## Installation Options + Eclipse Che operator installation options include: + * Connection to external database and Keycloak + * Configuration of default passwords and object names + * PVC strategy (once shared PVC for all workspaces, PVC per workspace, or PVC per volume) + * Authentication options + ### External Database and Keycloak + To instruct the operator to skip deploying PostgreSQL and Keycloak and connect to an existing DB and Keycloak instead: + * set respective fields to `true` in a custom resource spec + * provide the operator with connection and authentication details: + ``` + externalDb: true + chePostgresHostname: 'yourPostgresHost' + chePostgresPort: '5432' + chePostgresUser: 'myuser' + chePostgresPassword: 'mypass' + chePostgresDb: 'mydb' + externalIdentityProvider: true + identityProviderURL: 'https://my-keycloak.com' + identityProviderRealm: 'myrealm' + identityProviderClientId: 'myClient' + ``` + #### Self-signed Certificates and TLS Secrets + + Eclipse Che uses self-signed certificates by default, as TLS mode is on by default. + + To provide the name of the tls secret that will be used for Eclipse Che and workspaces ingresses: + ``` + tlsSecretName: 'my-ingress-tls-secret' + ``` + displayName: Eclipse Che + icon: + - base64data: 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 + mediatype: image/png + install: + spec: + clusterPermissions: + - rules: + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + verbs: + - list + - create + - watch + - update + serviceAccountName: che-operator + - rules: + - apiGroups: + - "" + resources: + - namespaces + verbs: + - update + - get + serviceAccountName: che-namespace-editor + deployments: + - name: che-operator + spec: + replicas: 1 + selector: + matchLabels: + app: che-operator + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: che-operator + spec: + containers: + - command: + - /usr/local/bin/che-operator + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION + value: 7.25.1 + - name: RELATED_IMAGE_che_server + value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - name: RELATED_IMAGE_plugin_registry + value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - name: RELATED_IMAGE_devfile_registry + value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + - 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 + - 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:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + - 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 + value: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - name: RELATED_IMAGE_che_server_secure_exposer_jwt_proxy_image + value: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033 + - name: RELATED_IMAGE_single_host_gateway + value: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: RELATED_IMAGE_single_host_gateway_config_sidecar + value: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: CHE_FLAVOR + value: che + - name: CONSOLE_LINK_NAME + value: che + - name: CONSOLE_LINK_DISPLAY_NAME + value: Eclipse Che + - name: CONSOLE_LINK_SECTION + value: Red Hat Applications + - name: CONSOLE_LINK_IMAGE + value: /dashboard/assets/branding/loader.svg + - name: CHE_IDENTITY_SECRET + value: che-identity-secret + - name: CHE_IDENTITY_POSTGRES_SECRET + value: che-identity-postgres-secret + - name: CHE_POSTGRES_SECRET + value: che-postgres-secret + - name: CHE_SERVER_TRUST_STORE_CONFIGMAP_NAME + value: ca-certs + - name: RELATED_IMAGE_code_server_plugin_registry_image_GMXDMLRS + value: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_GMXDILRQ + value: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_GUXDOLRQ + value: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: RELATED_IMAGE_eclipse_broadway_plugin_registry_image_ + value: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: RELATED_IMAGE_che_editor_intellij_community_plugin_registry_image_GIYDEMBOGIWWGZDDGAYDEYY_ + value: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: RELATED_IMAGE_che_buildah_base_plugin_registry_image_GEXDCNBOGAWWEMDDHEYWIMY_ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNQW2ZLMNMWWMMJVMM2WINQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNWGC3THFU3GEY3GMQ3WE___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRQXE5BNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRSXAZLOMRSW4Y3ZFVQW4YLMPF2GSY3TFVRTSMZZMJQTI___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRXXI3TFOQWWGOJTHFRGCNA_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MZWHK5DUMVZC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NBQXG23FNRWC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NN2WEZLSNZSXIZLTFV2G633MNFXGOLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NZXWIZJNMM4TGOLCME2A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_N5YGK3TTNBUWM5BNORXW63DJNZTS2MTGMNTDGNBR + value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBUHALLDHEZTSYTBGQ______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBZG65DPMJ2WMLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2WE6JNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONUGK3DMMNUGKY3LFUZGMY3GGM2DC___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONXW4YLSNRUW45BNGJTGGZRTGQYQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ORSWW5DPNYWWENRUGAZTSZQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OZQWYZJNGJRDSOBXGIZA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGE______ + value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 + httpGet: + path: /healthz + port: 6789 + initialDelaySeconds: 15 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + name: che-operator + ports: + - containerPort: 60000 + name: metrics + readinessProbe: + exec: + command: + - stat + - /tmp/operator-sdk-ready + failureThreshold: 10 + initialDelaySeconds: 5 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + resources: + limits: + cpu: 500m + memory: 256Mi + requests: + cpu: 100m + memory: 64Mi + securityContext: + capabilities: + drop: + - ALL + restartPolicy: Always + serviceAccountName: che-operator + terminationGracePeriodSeconds: 5 + permissions: + - rules: + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - '*' + - apiGroups: + - batch + resources: + - jobs + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + - rolebindings + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + - clusterrolebindings + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + - services + - serviceaccounts + - endpoints + - persistentvolumeclaims + - events + - configmaps + - secrets + - pods/exec + - pods/log + verbs: + - '*' + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - apiGroups: + - apps + resources: + - deployments + verbs: + - '*' + - apiGroups: + - monitoring.coreos.com + resources: + - servicemonitors + verbs: + - get + - create + - apiGroups: + - org.eclipse.che + resources: + - '*' + verbs: + - '*' + - apiGroups: + - metrics.k8s.io + resources: + - pods + - nodes + verbs: + - get + - list + - watch + - apiGroups: + - che.eclipse.org + resources: + - kubernetesimagepullers + verbs: + - '*' + - apiGroups: + - operators.coreos.com + resources: + - subscriptions + - clusterserviceversions + - operatorgroups + verbs: + - '*' + - apiGroups: + - packages.operators.coreos.com + resources: + - packagemanifests + verbs: + - get + - list + serviceAccountName: che-operator + strategy: deployment + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: true + type: MultiNamespace + - supported: false + type: AllNamespaces + keywords: + - eclipse che + - workspaces + - devtools + - developer + - ide + - java + links: + - name: Product Page + url: http://www.eclipse.org/che + - name: Documentation + url: https://www.eclipse.org/che/docs + - name: Operator GitHub Repo + url: https://github.com/eclipse/che-operator + maintainers: + - email: dfestal@redhat.com + name: David Festal + maturity: stable + provider: + name: Eclipse Foundation + replaces: eclipse-che-preview-kubernetes.v7.25.0 + version: 7.25.1 + relatedImages: + - name: che-operator-7.25.1 + image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + # tag: quay.io/eclipse/che-operator:7.25.1 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 + - name: configbump-0.1.4 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump:0.1.4 + - 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.25.1 + image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + # tag: quay.io/eclipse/che-devfile-registry:7.25.1 + - 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.25.1 + image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + # tag: quay.io/eclipse/che-keycloak:7.25.1 + - 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.25.1 + image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + # tag: quay.io/eclipse/che-plugin-registry:7.25.1 + - name: che-server-7.25.1 + image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + # tag: quay.io/eclipse/che-server:7.25.1 + - 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: code-server-3.6.2 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: codercom/code-server:3.6.2 + - name: dirigible-openshift-3.4.0 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift:3.4.0 + - name: che-editor-jupyter-5.7.0 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter:5.7.0 + - name: eclipse-broadway- + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway + - name: che-editor-intellij-community-2020.2-cdc002c + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community:2020.2-cdc002c + - name: che-buildah-base-1.14.0-b0c91d3 + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base:1.14.0-b0c91d3 + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 + - name: che-machine-exec-7.25.1 + image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + # tag: quay.io/eclipse/che-machine-exec:7.25.1 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 + - name: che-plugin-sidecar-bazel-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + # tag: quay.io/eclipse/che-plugin-sidecar:bazel-f15c5d6 + - name: che-plugin-sidecar-camelk-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + # tag: quay.io/eclipse/che-plugin-sidecar:camelk-f15c5d6 + - name: che-plugin-sidecar-clang-6bcfd7b + image: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + # tag: quay.io/eclipse/che-plugin-sidecar:clang-6bcfd7b + - name: che-plugin-sidecar-dart-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + # tag: quay.io/eclipse/che-plugin-sidecar:dart-b64039f + - name: che-plugin-sidecar-dependency-analytics-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + # tag: quay.io/eclipse/che-plugin-sidecar:dependency-analytics-c939ba4 + - name: che-plugin-sidecar-dotnet-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + # tag: quay.io/eclipse/che-plugin-sidecar:dotnet-c939ba4 + - name: che-plugin-sidecar-flutter-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + # tag: quay.io/eclipse/che-plugin-sidecar:flutter-b64039f + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 + - name: che-plugin-sidecar-haskell-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + # tag: quay.io/eclipse/che-plugin-sidecar:haskell-b64039f + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 + - name: che-plugin-sidecar-java8-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + # tag: quay.io/eclipse/che-plugin-sidecar:java8-b8f0528 + - name: che-plugin-sidecar-kubernetes-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar:kubernetes-tooling-2fcf341 + - name: che-plugin-sidecar-node-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + # tag: quay.io/eclipse/che-plugin-sidecar:node-c939ba4 + - name: che-plugin-sidecar-openshift-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar:openshift-tooling-2fcf341 + - name: che-plugin-sidecar-php-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + # tag: quay.io/eclipse/che-plugin-sidecar:php-c939ba4 + - name: che-plugin-sidecar-protobuf-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + # tag: quay.io/eclipse/che-plugin-sidecar:protobuf-2fcf341 + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 + - name: che-plugin-sidecar-ruby-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + # tag: quay.io/eclipse/che-plugin-sidecar:ruby-b64039f + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a + - name: che-plugin-sidecar-scala-1be6877 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar:scala-1be6877 + - name: che-plugin-sidecar-shellcheck-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + # tag: quay.io/eclipse/che-plugin-sidecar:shellcheck-2fcf341 + - name: che-plugin-sidecar-sonarlint-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar:sonarlint-2fcf341 + - name: che-plugin-sidecar-tekton-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + # tag: quay.io/eclipse/che-plugin-sidecar:tekton-b64039f + - name: che-plugin-sidecar-vale-2b98722 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar:vale-2b98722 + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 + - name: che-theia-endpoint-runtime-binary-7.25.1 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 + - name: che-theia-7.25.1 + image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + # tag: quay.io/eclipse/che-theia:7.25.1 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest + - name: che--centos--mongodb-36-centos7-latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7:latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - 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.25.1 + image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 + - name: che-dotnet-2.2-7.25.1 + image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 + - name: che-dotnet-3.1-7.25.1 + image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 + - name: che-golang-1.14-7.25.1 + image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + # tag: quay.io/eclipse/che-golang-1.14:7.25.1 + - name: che-java11-gradle-7.25.1 + image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + # tag: quay.io/eclipse/che-java11-gradle:7.25.1 + - name: che-java11-maven-7.25.1 + image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + # tag: quay.io/eclipse/che-java11-maven:7.25.1 + - name: che-java8-maven-7.25.1 + image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + # tag: quay.io/eclipse/che-java8-maven:7.25.1 + - name: che-nodejs10-community-7.25.1 + image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 + - name: che-nodejs10-ubi-7.25.1 + image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 + - name: che-nodejs12-community-7.25.1 + image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 + - name: che-nodejs8-centos-7.25.1 + image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 + - name: che-php-7-7.25.1 + image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + # tag: quay.io/eclipse/che-php-7:7.25.1 + - name: che-python-3.7-7.25.1 + image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + # tag: quay.io/eclipse/che-python-3.7:7.25.1 + - name: che-python-3.8-7.25.1 + image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + # tag: quay.io/eclipse/che-python-3.8:7.25.1 + - name: che-quarkus-7.25.1 + image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + # tag: quay.io/eclipse/che-quarkus:7.25.1 + - name: che-rust-1.39-7.25.1 + image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + # tag: quay.io/eclipse/che-rust-1.39:7.25.1 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 + - name: ubi-minimal- + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml.diff b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml.diff new file mode 100644 index 000000000..30759394a --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml.diff @@ -0,0 +1,342 @@ +--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.0/eclipse-che-preview-kubernetes.v7.25.0.clusterserviceversion.yaml 2021-01-29 07:41:24.316094232 +0000 ++++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml 2021-01-29 08:27:32.009831613 +0000 +@@ -83,14 +83,14 @@ + capabilities: Seamless Upgrades + categories: Developer Tools + certified: "false" +- containerImage: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 +- createdAt: "2021-01-26T10:44:59Z" ++ containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ createdAt: "2021-01-29T08:26:25Z" + 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.25.0 ++ name: eclipse-che-preview-kubernetes.v7.25.1 + namespace: placeholder + spec: + apiservicedefinitions: {} +@@ -313,13 +313,13 @@ + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION +- value: 7.25.0 ++ value: 7.25.1 + - name: RELATED_IMAGE_che_server +- value: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 ++ value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - name: RELATED_IMAGE_plugin_registry +- value: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c ++ value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - name: RELATED_IMAGE_devfile_registry +- value: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 ++ value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + - name: RELATED_IMAGE_che_tls_secrets_creation_job + value: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5 + - name: RELATED_IMAGE_pvc_jobs +@@ -327,7 +327,7 @@ + - 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:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af ++ value: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + - 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 +@@ -370,8 +370,8 @@ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 +- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 ++ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ +@@ -424,53 +424,53 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 +- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 ++ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGA______ +- value: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d ++ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a +- image: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 ++ image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 +@@ -638,12 +638,12 @@ + maturity: stable + provider: + name: Eclipse Foundation +- replaces: eclipse-che-preview-kubernetes.v7.24.2 +- version: 7.25.0 ++ replaces: eclipse-che-preview-kubernetes.v7.25.0 ++ version: 7.25.1 + relatedImages: +- - name: che-operator-7.25.0 +- image: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 +- # tag: quay.io/eclipse/che-operator:7.25.0 ++ - name: che-operator-7.25.1 ++ image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ # tag: quay.io/eclipse/che-operator:7.25.1 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 +@@ -653,27 +653,27 @@ + - 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.25.0 +- image: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 +- # tag: quay.io/eclipse/che-devfile-registry:7.25.0 ++ - name: che-devfile-registry-7.25.1 ++ image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ # tag: quay.io/eclipse/che-devfile-registry:7.25.1 + - 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.25.0 +- image: quay.io/eclipse/che-keycloak@sha256:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af +- # tag: quay.io/eclipse/che-keycloak:7.25.0 ++ - name: che-keycloak-7.25.1 ++ image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ # tag: quay.io/eclipse/che-keycloak:7.25.1 + - 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.25.0 +- image: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c +- # tag: quay.io/eclipse/che-plugin-registry:7.25.0 +- - name: che-server-7.25.0 +- image: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 +- # tag: quay.io/eclipse/che-server:7.25.0 ++ - name: che-plugin-registry-7.25.1 ++ image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ # tag: quay.io/eclipse/che-plugin-registry:7.25.1 ++ - name: che-server-7.25.1 ++ image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ # tag: quay.io/eclipse/che-server:7.25.1 + - 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 +@@ -701,9 +701,9 @@ + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 +- - name: che-machine-exec-7.25.0 +- image: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 +- # tag: quay.io/eclipse/che-machine-exec:7.25.0 ++ - name: che-machine-exec-7.25.1 ++ image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ # tag: quay.io/eclipse/che-machine-exec:7.25.1 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 +@@ -782,12 +782,12 @@ + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 +- - name: che-theia-endpoint-runtime-binary-7.25.0 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.0 +- - name: che-theia-7.25.0 +- image: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 +- # tag: quay.io/eclipse/che-theia:7.25.0 ++ - name: che-theia-endpoint-runtime-binary-7.25.1 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 ++ - name: che-theia-7.25.1 ++ image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ # tag: quay.io/eclipse/che-theia:7.25.1 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest +@@ -797,54 +797,54 @@ + - 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.25.0 +- image: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- # tag: quay.io/eclipse/che-cpp-rhel7:7.25.0 +- - name: che-dotnet-2.2-7.25.0 +- image: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- # tag: quay.io/eclipse/che-dotnet-2.2:7.25.0 +- - name: che-dotnet-3.1-7.25.0 +- image: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- # tag: quay.io/eclipse/che-dotnet-3.1:7.25.0 +- - name: che-golang-1.14-7.25.0 +- image: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- # tag: quay.io/eclipse/che-golang-1.14:7.25.0 +- - name: che-java11-gradle-7.25.0 +- image: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- # tag: quay.io/eclipse/che-java11-gradle:7.25.0 +- - name: che-java11-maven-7.25.0 +- image: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- # tag: quay.io/eclipse/che-java11-maven:7.25.0 +- - name: che-java8-maven-7.25.0 +- image: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- # tag: quay.io/eclipse/che-java8-maven:7.25.0 +- - name: che-nodejs10-community-7.25.0 +- image: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- # tag: quay.io/eclipse/che-nodejs10-community:7.25.0 +- - name: che-nodejs10-ubi-7.25.0 +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.0 +- - name: che-nodejs12-community-7.25.0 +- image: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- # tag: quay.io/eclipse/che-nodejs12-community:7.25.0 +- - name: che-nodejs8-centos-7.25.0 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- # tag: quay.io/eclipse/che-nodejs8-centos:7.25.0 +- - name: che-php-7-7.25.0 +- image: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- # tag: quay.io/eclipse/che-php-7:7.25.0 +- - name: che-python-3.7-7.25.0 +- image: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- # tag: quay.io/eclipse/che-python-3.7:7.25.0 +- - name: che-python-3.8-7.25.0 +- image: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- # tag: quay.io/eclipse/che-python-3.8:7.25.0 +- - name: che-quarkus-7.25.0 +- image: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- # tag: quay.io/eclipse/che-quarkus:7.25.0 +- - name: che-rust-1.39-7.25.0 +- image: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d +- # tag: quay.io/eclipse/che-rust-1.39:7.25.0 ++ - name: che-cpp-rhel7-7.25.1 ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 ++ - name: che-dotnet-2.2-7.25.1 ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 ++ - name: che-dotnet-3.1-7.25.1 ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 ++ - name: che-golang-1.14-7.25.1 ++ image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ # tag: quay.io/eclipse/che-golang-1.14:7.25.1 ++ - name: che-java11-gradle-7.25.1 ++ image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ # tag: quay.io/eclipse/che-java11-gradle:7.25.1 ++ - name: che-java11-maven-7.25.1 ++ image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ # tag: quay.io/eclipse/che-java11-maven:7.25.1 ++ - name: che-java8-maven-7.25.1 ++ image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ # tag: quay.io/eclipse/che-java8-maven:7.25.1 ++ - name: che-nodejs10-community-7.25.1 ++ image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 ++ - name: che-nodejs10-ubi-7.25.1 ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 ++ - name: che-nodejs12-community-7.25.1 ++ image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 ++ - name: che-nodejs8-centos-7.25.1 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 ++ - name: che-php-7-7.25.1 ++ image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ # tag: quay.io/eclipse/che-php-7:7.25.1 ++ - name: che-python-3.7-7.25.1 ++ image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ # tag: quay.io/eclipse/che-python-3.7:7.25.1 ++ - name: che-python-3.8-7.25.1 ++ image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ # tag: quay.io/eclipse/che-python-3.8:7.25.1 ++ - name: che-quarkus-7.25.1 ++ image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ # tag: quay.io/eclipse/che-quarkus:7.25.1 ++ - name: che-rust-1.39-7.25.1 ++ image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ # tag: quay.io/eclipse/che-rust-1.39:7.25.1 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml index b2d475262..4e50840cd 100644 --- a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml @@ -1,5 +1,5 @@ channels: -- currentCSV: eclipse-che-preview-kubernetes.v7.25.0 +- currentCSV: eclipse-che-preview-kubernetes.v7.25.1 name: stable defaultChannel: stable packageName: eclipse-che-preview-kubernetes diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml new file mode 100644 index 000000000..3f7ee6316 --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml @@ -0,0 +1,827 @@ +# +# 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 config + maps that will contain the appropriate environment variables the various + components of the Che installation. These generated config maps should + 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). By + default a dedicated Identity Provider server is deployed as part + of the Che installation. But if `externalIdentityProvider` is + `true`, then no dedicated identity provider will be deployed by + the operator and you might need to provide details about the external + identity provider you want to use. See also all the other fields + starting with: `identityProvider`.' + type: boolean + identityProviderAdminUserName: + description: Overrides the name of the Identity Provider admin user. + Defaults to `admin`. + type: string + identityProviderClientId: + description: Name of a Identity provider (Keycloak / RH SSO) `client-id` + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be 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 / RH SSO) deployment. This includes the image + tag. Omit it or leave it empty to use the defaut container image + provided by the operator. + type: string + identityProviderImagePullPolicy: + description: Overrides the image pull policy used in the Identity + Provider (Keycloak / 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 (scope and select) objects. + type: string + type: object + identityProviderPassword: + description: Overrides the password of Keycloak admin user. This + is useful to override it ONLY if you use an external Identity + Provider (see the `externalIdentityProvider` field). If omitted + or left blank, it will be set to an auto-generated password. + type: string + identityProviderPostgresPassword: + description: Password for The Identity Provider (Keycloak / 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). If omitted or left blank, it will be set to an auto-generated + password. + type: string + identityProviderPostgresSecret: + description: 'The secret that contains `password` for The Identity + Provider (Keycloak / RH SSO) to connect to the database. If the + secret is defined then `identityProviderPostgresPassword` will + be ignored. If the value is omitted or left blank then there are + two scenarios: 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 / RH SSO) realm + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be set to the value + of the `flavour` field. + type: string + identityProviderRoute: + description: Route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + identityProviderSecret: + description: 'The secret that contains `user` and `password` for + Identity Provider. If the secret is defined then `identityProviderAdminUserName` + and `identityProviderPassword` are ignored. If the value is omitted + or left blank then there are two scenarios: 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). You should set it ONLY if you use an external + Identity Provider (see the `externalIdentityProvider` field). + By default this will be automatically calculated and set by the + operator. + type: string + 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. + 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. + type: string + openShiftoAuth: + description: 'Enables the integration of the identity provider (Keycloak + / RHSSO) with OpenShift OAuth. Empty value on the OpenShift platform + by default. If user changes this empty value to true/false, then + che-operator respect this value. Otherwise che-operator tries + to auto detect if Openshift oAuth can be enabled and change empty + value, correspondly to auto-detection result. This property allows + 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: Postgres 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: Postgres database name that the Che server uses to + connect to the DB. Defaults to `dbche`. + type: string + chePostgresHostName: + description: Postgres Database hostname that the Che server uses + to connect to. Defaults to postgres. This value should be overridden + 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: Postgres password that the Che server should use to + connect to the DB. If omitted or left blank, it will be set to + an auto-generated value. + type: string + chePostgresPort: + description: Postgres Database port that the Che server uses to + connect to. Defaults to 5432. This value should be overridden + 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 Postgres `user` and `password` + that the Che server should use to connect to the DB. If the secret + is defined then `chePostgresUser` and `chePostgresPassword` are + ignored. If the value is omitted or left blank then there are + two scenarios: 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: Postgres user that the Che server should use to connect + to the DB. Defaults to `pgche`. + type: string + externalDb: + description: 'Instructs the operator on whether or not to deploy + a dedicated database. By default a dedicated Postgres database + is deployed as part of the Che installation. But if `externalDb` + is `true`, then no dedicated database will be deployed by the + operator and you might need to provide connection details to the + external DB you want to use. See also all the fields starting + with: `chePostgres`.' + type: boolean + postgresImage: + description: Overrides the container image used in the Postgres + database deployment. This includes the image tag. Omit it or leave + it empty to use the defaut container image provided by the operator. + type: string + postgresImagePullPolicy: + description: Overrides the image pull policy used in the Postgres + 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. 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 or not a spec is provided. \n Please note that while\ + \ this operator and its behavior is community-supported, its payload\ + \ may be commercially-supported if you use it 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 controler + will manage ingresses. Defaults to `nginx`. NB: This drives the + `is 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.' + type: string + ingressStrategy: + description: Strategy for ingress creation. This can be `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. If both are + defined, `serverExposureStrategy` takes precedence. + type: string + securityContextFsGroup: + description: FSGroup the Che pod and Workspace pods containers should + run in. Defaults to `1724`. + type: string + securityContextRunAsUser: + description: ID of the user the Che pod and Workspace pods containers + should run as. Default to `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 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 is used to set ingress TLS termination + if TLS is enabled. If the specified secret does not exist, a self-signed + certificate will be created. If the value is empty or omitted, + the default ingress controller certificate will be used. See also + the `tlsSupport` field. Note, when switching to the default ingress + controller certificate, `self-signed-certificate` secret should + be deleted manually. + type: string + type: object + metrics: + description: Configuration settings related to the metrics collection + used by the Che installation. + properties: + enable: + description: Enables `metrics` 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 hostname (or url) to an alternate container + registry to pull images from. This value overrides the container + registry hostname defined in all the default container images + involved in a Che deployment. This is particularly useful to install + Che in an air-gapped 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 + Che in an air-gapped environment. + type: string + allowUserDefinedWorkspaceNamespaces: + description: Defines if a user is able to specify Kubernetes namespace + (or OpenShift project) different from the default. It's NOT RECOMMENDED + to configured true without OAuth configured. This property is + also used by the OpenShift infra. + type: boolean + cheClusterRoles: + description: Comma-separated list of ClusterRoles that will be assigned + to che ServiceAccount. Be aware that che-operator has to already + have all permissions in these ClusterRoles to be able to grant + them. + type: string + cheDebug: + description: Enables the debug mode for Che server. Defaults to + `false`. + type: string + cheFlavor: + description: Flavor of the installation. This is either `che` for + upstream Che installations, or `codeready` for CodeReady Workspaces + installation. In most cases the default value should not be overridden. + type: string + cheHost: + description: Public hostname of the installed Che server. If value + is omitted then 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/route for the custom hostname 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 defaut 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 defaut 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: Che server ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + cheServerRoute: + description: Che server route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + 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. + type: string + customCheProperties: + additionalProperties: + type: string + description: Map of additional environment variables that will be + applied in the generated `che` config map to be used by the Che + server, in addition to the values already generated from other + fields of the `CheCluster` custom resource (CR). If `customCheProperties` + contains a property that would be normally generated in `che` + config map from other CR fields, then the value defined in the + `customCheProperties` will be 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 defaut container image provided by the operator. + type: string + devfileRegistryIngress: + description: Devfile registry ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryMemoryLimit: + description: Overrides the memory limit used in the Devfile registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + devfileRegistryMemoryRequest: + description: Overrides the memory request used in the Devfile registry + deployment In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: Devfile registry route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryUrl: + description: Public URL of the Devfile registry, that serves sample, + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (see the `externalDevfileRegistry` field). By + default this will be automatically calculated by the operator. + type: string + externalDevfileRegistry: + description: Instructs the operator on whether or not to deploy + a dedicated Devfile registry server. By default a dedicated devfile + registry server is started. But if `externalDevfileRegistry` is + `true`, then 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 or not to deploy + a dedicated Plugin registry server. By default a dedicated plugin + registry server is started. But if `externalPluginRegistry` is + `true`, then no such dedicated server will be started by the operator + and you will have to manually set the `pluginRegistryUrl` field. + type: boolean + gitSelfSignedCert: + description: If enabled, then the certificate from `che-git-self-signed-cert` + config map will be propagated to the Che components and provide + particular configuration for Git. + type: boolean + nonProxyHosts: + description: 'List of hosts that should not use the configured proxy. + So specify wild card domain use the following form `.` + and `|` as delimiter, eg: `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 (scope and select) objects. + type: string + type: object + pluginRegistryMemoryLimit: + description: Overrides the memory limit used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + pluginRegistryMemoryRequest: + description: Overrides the memory request used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + pluginRegistryUrl: + description: Public URL of the Plugin registry, that serves sample + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (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 also 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. If the secret is defined then `proxyUser` and + `proxyPassword` are ignored + type: string + proxyURL: + description: URL (protocol+hostname) 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. Che + operator will automatically detect if router certificate is self-signed. + If so it will be propagated to Che server and some other components. + 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 route on + OpenShift) for every required endpoint. "single-host" makes Che + exposed on a single hostname with workspaces exposed on subpaths. + Please read the docs to learn about the limitations of this approach. + Also consult the `singleHostExposureType` property to further + configure how the operator and Che server make that happen on + Kubernetes. "default-host" exposes che server on the host of the + cluster. Please 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. + In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). Defaults + to 1Gi. + type: string + serverMemoryRequest: + description: Overrides the memory request used in the Che server + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 512Mi. + type: string + serverTrustStoreConfigMapName: + description: Name of the config-map with public certificates to + add to Java trust store of the Che server. This is usually required + when adding the OpenShift OAuth provider which has https endpoint + signed with self-signed cert. So, 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 (and are put) on + 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 defaut 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 defaut 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 may 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 if user does not override it. It''s possible + to use , and placeholders (e.g.: + che-workspace-). In that case, new namespace will be + created for each user (or workspace). Is used by OpenShift infra + as well to specify Project' + 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 Postgres database. If omitted or left blank, default storage + class is used. + type: string + preCreateSubPaths: + description: Instructs the Che server to launch a special pod to + pre-create a subpath in the Persistent Volumes. Defaults to `false`, + however it might need to enable it according to the configuration + of your K8S 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 defaut 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. If omitted or left blank, 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 if or not a Postgres instance has been correctly + provisioned + type: boolean + devfileRegistryURL: + description: Public URL to the Devfile registry + type: string + gitHubOAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been configured to integrate with the GitHub OAuth. + type: boolean + helpLink: + description: A URL that can point to some URL where to find help related + to the current Operator status. + type: string + keycloakProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been provisioned with realm, client and user + type: boolean + keycloakURL: + description: Public URL to the Identity Provider server (Keycloak / + RH SSO). + type: string + message: + description: A human readable message indicating details about why the + pod is in this condition. + type: string + openShiftoAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / 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 diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml.diff b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.crd.yaml.diff new file mode 100644 index 000000000..e69de29bb diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml new file mode 100644 index 000000000..46bda08ba --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml @@ -0,0 +1,1073 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "org.eclipse.che/v1", + "kind": "CheCluster", + "metadata": { + "name": "eclipse-che" + }, + "spec": { + "auth": { + "externalIdentityProvider": false, + "identityProviderAdminUserName": "", + "identityProviderClientId": "", + "identityProviderImage": "", + "identityProviderPassword": "", + "identityProviderRealm": "", + "identityProviderURL": "", + "oAuthClientName": "", + "oAuthSecret": "" + }, + "database": { + "chePostgresDb": "", + "chePostgresHostName": "", + "chePostgresPassword": "", + "chePostgresPort": "", + "chePostgresUser": "", + "externalDb": false, + "postgresImage": "" + }, + "metrics": { + "enable": true + }, + "server": { + "allowUserDefinedWorkspaceNamespaces": false, + "cheClusterRoles": "", + "cheFlavor": "", + "cheImage": "", + "cheImageTag": "", + "cheWorkspaceClusterRole": "", + "devfileRegistryImage": "", + "gitSelfSignedCert": false, + "nonProxyHosts": "", + "pluginRegistryImage": "", + "proxyPassword": "", + "proxyPort": "", + "proxyURL": "", + "proxyUser": "", + "serverExposureStrategy": "", + "serverMemoryLimit": "", + "serverMemoryRequest": "", + "serverTrustStoreConfigMapName": "", + "singleHostGatewayConfigMapLabels": {}, + "singleHostGatewayConfigSidecarImage": "", + "singleHostGatewayImage": "", + "tlsSupport": true, + "useInternalClusterSVCNames": true, + "workspaceNamespaceDefault": "" + }, + "storage": { + "postgresPVCStorageClassName": "", + "preCreateSubPaths": true, + "pvcClaimSize": "1Gi", + "pvcJobsImage": "", + "pvcStrategy": "common", + "workspacePVCStorageClassName": "" + } + } + } + ] + capabilities: Seamless Upgrades + categories: Developer Tools, OpenShift Optional + certified: "false" + containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + createdAt: "2021-01-29T08:27:32Z" + 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.25.1 + namespace: placeholder +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - description: The `CheCluster` custom resource allows defining and managing + a Che server installation + displayName: Eclipse Che Cluster + kind: CheCluster + name: checlusters.org.eclipse.che + specDescriptors: + - description: Deprecated. Instructs the operator to deploy Che in TLS mode. + This is enabled by default. Disabling TLS may cause malfunction of some + Che components. + displayName: Tls support + path: server.tlsSupport + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + statusDescriptors: + - description: Status of a Che installation. Can be `Available`, `Unavailable`, + or `Available, Rolling Update in Progress` + displayName: Status + path: cheClusterRunning + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase + - description: Public URL to the Che server + displayName: Eclipse Che URL + path: cheURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Current installed Che version + displayName: 'displayName: Eclipse Che version' + path: cheVersion + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A URL that can point to some URL where to find help related + to the current Operator status. + displayName: Help link + path: helpLink + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Public URL to the Identity Provider server (Keycloak / RH + SSO). + displayName: Keycloak Admin Console URL + path: keycloakURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A human readable message indicating details about why the + pod is in this condition. + displayName: Message + path: message + x-descriptors: + - urn:alm:descriptor:text + - description: A brief CamelCase message indicating details about why the + pod is in this state. + displayName: Reason + path: reason + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase:reason + - urn:alm:descriptor:text + version: v1 + description: | + A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development. + This operator installs PostgreSQL, Keycloak, and the Eclipse Che server, as well as configures all three services. + + ## How to Install + + Press the **Install** button, choose the upgrade strategy, and wait for the **Installed** Operator status. + + When the operator is installed, create a new CR of Kind CheCluster (click the **Create New** button). + The CR spec contains all defaults (see below). + + You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che. + + ## Defaults + + By default, the operator deploys Eclipse Che with: + + * Bundled PostgreSQL and Keycloak + + * Per-Workspace PVC strategy + + * Auto-generated passwords + + * TLS mode (secure routes) + + * Regular login extended with OpenShift OAuth authentication + + ## Installation Options + + Eclipse Che operator installation options include: + + * Connection to external database and Keycloak + + * Configuration of default passwords and object names + + * PVC strategy (once shared PVC for all workspaces, PVC per workspace, or PVC per volume) + + * Authentication options + + ### External Database and Keycloak + + To instruct the operator to skip deploying PostgreSQL and Keycloak and connect to an existing DB and Keycloak instead: + + * set respective fields to `true` in a custom resource spec + + * provide the operator with connection and authentication details: + + + + `externalDb: true` + + + `chePostgresHostname: 'yourPostgresHost'` + + + `chePostgresPort: '5432'` + + + `chePostgresUser: 'myuser'` + + + `chePostgresPassword: 'mypass'` + + + `chePostgresDb: 'mydb'` + + + `externalIdentityProvider: true` + + + `identityProviderURL: 'https://my-keycloak.com'` + + + `identityProviderRealm: 'myrealm'` + + + `identityProviderClientId: 'myClient'` + + + #### Self-signed Certificates + + Eclipse Che uses self-signed certificates by default. + + You can also manually create a secret: + + + + ``` + oc create secret generic self-signed-certificate --from-file=/path/to/certificate/ca.crt -n=$codeReadyNamespace + ``` + displayName: Eclipse Che + icon: + - base64data: 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 + mediatype: image/png + install: + spec: + clusterPermissions: + - rules: + - apiGroups: + - oauth.openshift.io + resources: + - oauthclients + verbs: + - create + - get + - delete + - list + - patch + - update + - watch + - apiGroups: + - config.openshift.io + resources: + - infrastructures + - oauths + - proxies + verbs: + - get + - list + - watch + - apiGroups: + - user.openshift.io + resources: + - users + verbs: + - list + - apiGroups: + - console.openshift.io + resources: + - consolelinks + verbs: + - get + - list + - create + - update + - patch + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + verbs: + - list + - create + - watch + - update + serviceAccountName: che-operator + - rules: + - apiGroups: + - "" + resources: + - namespaces + verbs: + - update + - get + serviceAccountName: che-namespace-editor + deployments: + - name: che-operator + spec: + replicas: 1 + selector: + matchLabels: + app: che-operator + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: che-operator + spec: + containers: + - command: + - /usr/local/bin/che-operator + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION + value: 7.25.1 + - name: RELATED_IMAGE_che_server + value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - name: RELATED_IMAGE_plugin_registry + value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - name: RELATED_IMAGE_devfile_registry + value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + - name: RELATED_IMAGE_pvc_jobs + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - 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:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + - 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 + value: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - name: RELATED_IMAGE_che_server_secure_exposer_jwt_proxy_image + value: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033 + - name: RELATED_IMAGE_single_host_gateway + value: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: RELATED_IMAGE_single_host_gateway_config_sidecar + value: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: CHE_FLAVOR + value: che + - name: CONSOLE_LINK_NAME + value: che + - name: CONSOLE_LINK_DISPLAY_NAME + value: Eclipse Che + - name: CONSOLE_LINK_SECTION + value: Red Hat Applications + - name: CONSOLE_LINK_IMAGE + value: /dashboard/assets/branding/loader.svg + - name: CHE_IDENTITY_SECRET + value: che-identity-secret + - name: CHE_IDENTITY_POSTGRES_SECRET + value: che-identity-postgres-secret + - name: CHE_POSTGRES_SECRET + value: che-postgres-secret + - name: CHE_SERVER_TRUST_STORE_CONFIGMAP_NAME + value: ca-certs + - name: RELATED_IMAGE_code_server_plugin_registry_image_GMXDMLRS + value: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_GMXDILRQ + value: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_GUXDOLRQ + value: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: RELATED_IMAGE_eclipse_broadway_plugin_registry_image_ + value: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: RELATED_IMAGE_che_editor_intellij_community_plugin_registry_image_GIYDEMBOGIWWGZDDGAYDEYY_ + value: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: RELATED_IMAGE_che_buildah_base_plugin_registry_image_GEXDCNBOGAWWEMDDHEYWIMY_ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNQW2ZLMNMWWMMJVMM2WINQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNWGC3THFU3GEY3GMQ3WE___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRQXE5BNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRSXAZLOMRSW4Y3ZFVQW4YLMPF2GSY3TFVRTSMZZMJQTI___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRXXI3TFOQWWGOJTHFRGCNA_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MZWHK5DUMVZC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NBQXG23FNRWC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NN2WEZLSNZSXIZLTFV2G633MNFXGOLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NZXWIZJNMM4TGOLCME2A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_N5YGK3TTNBUWM5BNORXW63DJNZTS2MTGMNTDGNBR + value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBUHALLDHEZTSYTBGQ______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBZG65DPMJ2WMLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2WE6JNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONUGK3DMMNUGKY3LFUZGMY3GGM2DC___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONXW4YLSNRUW45BNGJTGGZRTGQYQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ORSWW5DPNYWWENRUGAZTSZQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OZQWYZJNGJRDSOBXGIZA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGE______ + value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ + value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 + httpGet: + path: /healthz + port: 6789 + initialDelaySeconds: 15 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + name: che-operator + ports: + - containerPort: 60000 + name: metrics + readinessProbe: + exec: + command: + - stat + - /tmp/operator-sdk-ready + failureThreshold: 10 + initialDelaySeconds: 5 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + resources: + limits: + cpu: 500m + memory: 256Mi + requests: + cpu: 100m + memory: 64Mi + securityContext: + capabilities: + drop: + - ALL + restartPolicy: Always + serviceAccountName: che-operator + terminationGracePeriodSeconds: 5 + permissions: + - rules: + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - '*' + - apiGroups: + - batch + resources: + - jobs + verbs: + - '*' + - apiGroups: + - route.openshift.io + resources: + - routes + - routes/custom-host + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + - rolebindings + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + - clusterrolebindings + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + - services + - serviceaccounts + - endpoints + - persistentvolumeclaims + - events + - configmaps + - secrets + - pods/exec + - pods/log + verbs: + - '*' + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - apiGroups: + - apps + resources: + - deployments + verbs: + - '*' + - apiGroups: + - monitoring.coreos.com + resources: + - servicemonitors + verbs: + - get + - create + - apiGroups: + - org.eclipse.che + resources: + - '*' + verbs: + - '*' + - apiGroups: + - metrics.k8s.io + resources: + - pods + - nodes + verbs: + - get + - list + - watch + - apiGroups: + - che.eclipse.org + resources: + - kubernetesimagepullers + verbs: + - '*' + - apiGroups: + - operators.coreos.com + resources: + - subscriptions + - clusterserviceversions + - operatorgroups + verbs: + - '*' + - apiGroups: + - packages.operators.coreos.com + resources: + - packagemanifests + verbs: + - get + - list + serviceAccountName: che-operator + strategy: deployment + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: true + type: MultiNamespace + - supported: false + type: AllNamespaces + keywords: + - workspaces + - devtools + - developer + - ide + - java + links: + - name: Product Page + url: http://www.eclipse.org/che + - name: Documentation + url: https://www.eclipse.org/che/docs + - name: Operator GitHub Repo + url: https://github.com/eclipse/che-operator + maintainers: + - email: dfestal@redhat.com + name: David Festal + maturity: stable + provider: + name: Eclipse Foundation + replaces: eclipse-che-preview-openshift.v7.25.0 + version: 7.25.1 + relatedImages: + - name: che-operator-7.25.1 + image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + # tag: quay.io/eclipse/che-operator:7.25.1 + - name: code-server-@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: dirigible-openshift-@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: che-editor-jupyter-@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 + - name: traefik-@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: eclipse-broadway-@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: che-editor-intellij-community-@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: configbump-0.1.4 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump:0.1.4 + - name: configbump-@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: che--centos--mongodb-36-centos7-@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - name: che--centos--mysql-57-centos7-@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + image: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + # tag: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + - 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--centos--postgresql-96-centos7-@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + image: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + # tag: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + - name: che-buildah-base-@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - 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:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + # tag: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + - name: che-devfile-registry-7.25.1 + image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + # tag: quay.io/eclipse/che-devfile-registry:7.25.1 + - name: che-devfile-registry-@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + # tag: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + - name: che-dotnet-2.2-@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + # tag: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + - name: che-dotnet-3.1-@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + # tag: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + - name: che-golang-1.14-@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + # tag: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + - name: che-java11-gradle-@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + # tag: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + - name: che-java11-maven-@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + # tag: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + - name: che-java8-maven-@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + # tag: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + - 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.25.1 + image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + # tag: quay.io/eclipse/che-keycloak:7.25.1 + - name: che-keycloak-@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + # tag: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + - name: che-machine-exec-@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + # tag: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + - name: che-nodejs10-community-@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + # tag: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + - name: che-nodejs10-ubi-@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + - name: che-nodejs12-community-@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + # tag: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + - name: che-nodejs8-centos-@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + # tag: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + - name: che-php-7-@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + # tag: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + - 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-artifacts-broker-@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + image: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + # tag: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - 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-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.25.1 + image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + # tag: quay.io/eclipse/che-plugin-registry:7.25.1 + - name: che-plugin-registry-@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + # tag: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - 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:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - 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: 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 + - 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:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - 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:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - 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: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 + - name: che-plugin-sidecar-@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - 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:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: che-plugin-sidecar-@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: che-plugin-sidecar-@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: che-plugin-sidecar-@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: che-plugin-sidecar-@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - 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.7-@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + # tag: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + - name: che-python-3.8-@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + # tag: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + - name: che-quarkus-@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + # tag: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + - name: che-rust-1.39-@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + # tag: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + - name: che-server-7.25.1 + image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + # tag: quay.io/eclipse/che-server:7.25.1 + - name: che-server-@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + # tag: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - 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:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + - name: che-theia-@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + # tag: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - 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:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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: ubi-minimal-@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: code-server-3.6.2 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: codercom/code-server:3.6.2 + - name: dirigible-openshift-3.4.0 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift:3.4.0 + - name: che-editor-jupyter-5.7.0 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter:5.7.0 + - name: eclipse-broadway- + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway + - name: che-editor-intellij-community-2020.2-cdc002c + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community:2020.2-cdc002c + - name: che-buildah-base-1.14.0-b0c91d3 + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base:1.14.0-b0c91d3 + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 + - name: che-machine-exec-7.25.1 + image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + # tag: quay.io/eclipse/che-machine-exec:7.25.1 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 + - name: che-plugin-sidecar-bazel-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + # tag: quay.io/eclipse/che-plugin-sidecar:bazel-f15c5d6 + - name: che-plugin-sidecar-camelk-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + # tag: quay.io/eclipse/che-plugin-sidecar:camelk-f15c5d6 + - name: che-plugin-sidecar-clang-6bcfd7b + image: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + # tag: quay.io/eclipse/che-plugin-sidecar:clang-6bcfd7b + - name: che-plugin-sidecar-dart-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + # tag: quay.io/eclipse/che-plugin-sidecar:dart-b64039f + - name: che-plugin-sidecar-dependency-analytics-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + # tag: quay.io/eclipse/che-plugin-sidecar:dependency-analytics-c939ba4 + - name: che-plugin-sidecar-dotnet-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + # tag: quay.io/eclipse/che-plugin-sidecar:dotnet-c939ba4 + - name: che-plugin-sidecar-flutter-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + # tag: quay.io/eclipse/che-plugin-sidecar:flutter-b64039f + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 + - name: che-plugin-sidecar-haskell-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + # tag: quay.io/eclipse/che-plugin-sidecar:haskell-b64039f + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 + - name: che-plugin-sidecar-java8-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + # tag: quay.io/eclipse/che-plugin-sidecar:java8-b8f0528 + - name: che-plugin-sidecar-kubernetes-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar:kubernetes-tooling-2fcf341 + - name: che-plugin-sidecar-node-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + # tag: quay.io/eclipse/che-plugin-sidecar:node-c939ba4 + - name: che-plugin-sidecar-openshift-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar:openshift-tooling-2fcf341 + - name: che-plugin-sidecar-php-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + # tag: quay.io/eclipse/che-plugin-sidecar:php-c939ba4 + - name: che-plugin-sidecar-protobuf-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + # tag: quay.io/eclipse/che-plugin-sidecar:protobuf-2fcf341 + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 + - name: che-plugin-sidecar-ruby-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + # tag: quay.io/eclipse/che-plugin-sidecar:ruby-b64039f + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a + - name: che-plugin-sidecar-scala-1be6877 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar:scala-1be6877 + - name: che-plugin-sidecar-shellcheck-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + # tag: quay.io/eclipse/che-plugin-sidecar:shellcheck-2fcf341 + - name: che-plugin-sidecar-sonarlint-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar:sonarlint-2fcf341 + - name: che-plugin-sidecar-tekton-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + # tag: quay.io/eclipse/che-plugin-sidecar:tekton-b64039f + - name: che-plugin-sidecar-vale-2b98722 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar:vale-2b98722 + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 + - name: che-theia-endpoint-runtime-binary-7.25.1 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 + - name: che-theia-7.25.1 + image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + # tag: quay.io/eclipse/che-theia:7.25.1 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest + - name: che--centos--mongodb-36-centos7-latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7:latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - 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.25.1 + image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c + # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 + - name: che-dotnet-2.2-7.25.1 + image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba + # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 + - name: che-dotnet-3.1-7.25.1 + image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 + # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 + - name: che-golang-1.14-7.25.1 + image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 + # tag: quay.io/eclipse/che-golang-1.14:7.25.1 + - name: che-java11-gradle-7.25.1 + image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 + # tag: quay.io/eclipse/che-java11-gradle:7.25.1 + - name: che-java11-maven-7.25.1 + image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 + # tag: quay.io/eclipse/che-java11-maven:7.25.1 + - name: che-java8-maven-7.25.1 + image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + # tag: quay.io/eclipse/che-java8-maven:7.25.1 + - name: che-nodejs10-community-7.25.1 + image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac + # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 + - name: che-nodejs10-ubi-7.25.1 + image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee + # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 + - name: che-nodejs12-community-7.25.1 + image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea + # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 + - name: che-nodejs8-centos-7.25.1 + image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 + # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 + - name: che-php-7-7.25.1 + image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + # tag: quay.io/eclipse/che-php-7:7.25.1 + - name: che-python-3.7-7.25.1 + image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 + # tag: quay.io/eclipse/che-python-3.7:7.25.1 + - name: che-python-3.8-7.25.1 + image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace + # tag: quay.io/eclipse/che-python-3.8:7.25.1 + - name: che-quarkus-7.25.1 + image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 + # tag: quay.io/eclipse/che-quarkus:7.25.1 + - name: che-rust-1.39-7.25.1 + image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + # tag: quay.io/eclipse/che-rust-1.39:7.25.1 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 + - name: ubi-minimal- + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml.diff b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml.diff new file mode 100644 index 000000000..5e3c2c97d --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml.diff @@ -0,0 +1,492 @@ +--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.0/eclipse-che-preview-openshift.v7.25.0.clusterserviceversion.yaml 2021-01-29 07:41:24.324094137 +0000 ++++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml 2021-01-29 08:28:21.521288986 +0000 +@@ -74,14 +74,14 @@ + capabilities: Seamless Upgrades + categories: Developer Tools, OpenShift Optional + certified: "false" +- containerImage: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 +- createdAt: "2021-01-26T10:46:10Z" ++ containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ createdAt: "2021-01-29T08:27:32Z" + 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.25.0 ++ name: eclipse-che-preview-openshift.v7.25.1 + namespace: placeholder + spec: + apiservicedefinitions: {} +@@ -328,19 +328,19 @@ + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION +- value: 7.25.0 ++ value: 7.25.1 + - name: RELATED_IMAGE_che_server +- value: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 ++ value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - name: RELATED_IMAGE_plugin_registry +- value: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c ++ value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - name: RELATED_IMAGE_devfile_registry +- value: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 ++ value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 + - name: RELATED_IMAGE_pvc_jobs + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - 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:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af ++ value: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 + - 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 +@@ -383,8 +383,8 @@ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 +- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 ++ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ +@@ -437,53 +437,53 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 +- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 ++ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGA______ +- value: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGA______ +- value: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d ++ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ ++ value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a +- image: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 ++ image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 +@@ -657,12 +657,12 @@ + maturity: stable + provider: + name: Eclipse Foundation +- replaces: eclipse-che-preview-openshift.v7.24.2 +- version: 7.25.0 ++ replaces: eclipse-che-preview-openshift.v7.25.0 ++ version: 7.25.1 + relatedImages: +- - name: che-operator-7.25.0 +- image: quay.io/eclipse/che-operator@sha256:22bb6fdfbcd7cca4c0b4db9fa0b50f65e5a963e93f7173c4028c30276d80ab97 +- # tag: quay.io/eclipse/che-operator:7.25.0 ++ - name: che-operator-7.25.1 ++ image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ # tag: quay.io/eclipse/che-operator:7.25.1 + - name: code-server-@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 +@@ -708,63 +708,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:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- image: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- # tag: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- - name: che-devfile-registry-7.25.0 +- image: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 +- # tag: quay.io/eclipse/che-devfile-registry:7.25.0 +- - name: che-devfile-registry-@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 +- image: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 +- # tag: quay.io/eclipse/che-devfile-registry@sha256:d7c13ef4ecd77c4520a8a80ba265029e8bee3d69dd2bee8ad5339814aa651230 +- - name: che-dotnet-2.2-@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- image: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- # tag: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- - name: che-dotnet-3.1-@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- image: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- # tag: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- - name: che-golang-1.14-@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- image: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- # tag: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- - name: che-java11-gradle-@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- image: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- # tag: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- - name: che-java11-maven-@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- image: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- # tag: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- - name: che-java8-maven-@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- image: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- # tag: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 ++ - name: che-cpp-rhel7-@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ # tag: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ - name: che-devfile-registry-7.25.1 ++ image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ # tag: quay.io/eclipse/che-devfile-registry:7.25.1 ++ - name: che-devfile-registry-@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ # tag: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ - name: che-dotnet-2.2-@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ # tag: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ - name: che-dotnet-3.1-@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ # tag: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ - name: che-golang-1.14-@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ # tag: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ - name: che-java11-gradle-@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ # tag: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ - name: che-java11-maven-@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ # tag: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ - name: che-java8-maven-@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ # tag: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 + - 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.25.0 +- image: quay.io/eclipse/che-keycloak@sha256:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af +- # tag: quay.io/eclipse/che-keycloak:7.25.0 +- - name: che-keycloak-@sha256:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af +- image: quay.io/eclipse/che-keycloak@sha256:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af +- # tag: quay.io/eclipse/che-keycloak@sha256:a7ce0f5343469b42079f0bd79dd0f4344e9de8fa439d39d94413466b96ba28af +- - name: che-machine-exec-@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 +- image: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 +- # tag: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 +- - name: che-nodejs10-community-@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- image: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- # tag: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- - name: che-nodejs10-ubi-@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- - name: che-nodejs12-community-@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- image: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- # tag: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- - name: che-nodejs8-centos-@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- # tag: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- - name: che-php-7-@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- image: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- # tag: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b ++ - name: che-keycloak-7.25.1 ++ image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ # tag: quay.io/eclipse/che-keycloak:7.25.1 ++ - name: che-keycloak-@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ # tag: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ - name: che-machine-exec-@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ # tag: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ - name: che-nodejs10-community-@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ # tag: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ - name: che-nodejs10-ubi-@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ - name: che-nodejs12-community-@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ # tag: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ - name: che-nodejs8-centos-@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ # tag: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ - name: che-php-7-@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ # tag: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 + - 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 +@@ -777,12 +777,12 @@ + - 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.25.0 +- image: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c +- # tag: quay.io/eclipse/che-plugin-registry:7.25.0 +- - name: che-plugin-registry-@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c +- image: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c +- # tag: quay.io/eclipse/che-plugin-registry@sha256:4ca8ef9eaf2f059ed936b6ae83793a98190291ea89cd99d7cb4b9ac05cef648c ++ - name: che-plugin-registry-7.25.1 ++ image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ # tag: quay.io/eclipse/che-plugin-registry:7.25.1 ++ - name: che-plugin-registry-@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ # tag: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 + - name: che-plugin-sidecar-@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a +@@ -858,33 +858,33 @@ + - 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.7-@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- image: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- # tag: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- - name: che-python-3.8-@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- image: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- # tag: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- - name: che-quarkus-@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- image: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- # tag: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- - name: che-rust-1.39-@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d +- image: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d +- # tag: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d +- - name: che-server-7.25.0 +- image: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 +- # tag: quay.io/eclipse/che-server:7.25.0 +- - name: che-server-@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 +- image: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 +- # tag: quay.io/eclipse/che-server@sha256:f48b84be09094ec2b6ee5d9fad41b52e89051776110133c6b03c92e94d16d7e9 ++ - name: che-python-3.7-@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ # tag: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ - name: che-python-3.8-@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ # tag: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ - name: che-quarkus-@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ # tag: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ - name: che-rust-1.39-@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ # tag: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ - name: che-server-7.25.1 ++ image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ # tag: quay.io/eclipse/che-server:7.25.1 ++ - name: che-server-@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ # tag: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce + - 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:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- - name: che-theia-@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 +- image: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 +- # tag: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 ++ - name: che-theia-endpoint-runtime-binary-@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ - name: che-theia-@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ # tag: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f + - 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 +@@ -921,9 +921,9 @@ + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 +- - name: che-machine-exec-7.25.0 +- image: quay.io/eclipse/che-machine-exec@sha256:7ec846d087ee1f11bc213e7a7488750611e4048f98cb0d7347b72fe7d087b616 +- # tag: quay.io/eclipse/che-machine-exec:7.25.0 ++ - name: che-machine-exec-7.25.1 ++ image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ # tag: quay.io/eclipse/che-machine-exec:7.25.1 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 +@@ -1002,12 +1002,12 @@ + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 +- - name: che-theia-endpoint-runtime-binary-7.25.0 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:50c4eea1fbbd0f3fab0fb5347e33dae7fd12bb8f30b3459750dd948ef2a79ac7 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.0 +- - name: che-theia-7.25.0 +- image: quay.io/eclipse/che-theia@sha256:c69b4701fd65f79f80833df18c17ea34fd8876d7bd95f6a808b428e3b6cb47a0 +- # tag: quay.io/eclipse/che-theia:7.25.0 ++ - name: che-theia-endpoint-runtime-binary-7.25.1 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 ++ - name: che-theia-7.25.1 ++ image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ # tag: quay.io/eclipse/che-theia:7.25.1 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest +@@ -1017,54 +1017,54 @@ + - 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.25.0 +- image: quay.io/eclipse/che-cpp-rhel7@sha256:61061f00950100441ad86124c5ef1a4a77fe44362372fe5a0925449a1f67b3ba +- # tag: quay.io/eclipse/che-cpp-rhel7:7.25.0 +- - name: che-dotnet-2.2-7.25.0 +- image: quay.io/eclipse/che-dotnet-2.2@sha256:7abad700feb5ca051d636af0003ca6c1e44c755dbf6a0b000f6fd30a4649ed39 +- # tag: quay.io/eclipse/che-dotnet-2.2:7.25.0 +- - name: che-dotnet-3.1-7.25.0 +- image: quay.io/eclipse/che-dotnet-3.1@sha256:edc458c9acf7260e951f41a52f55b072459b8016958945ca9e3aa79a3ed2abee +- # tag: quay.io/eclipse/che-dotnet-3.1:7.25.0 +- - name: che-golang-1.14-7.25.0 +- image: quay.io/eclipse/che-golang-1.14@sha256:85c9a7702fa62000ee743bda18ae236aa208a97520690a798fb0e522c04f5acd +- # tag: quay.io/eclipse/che-golang-1.14:7.25.0 +- - name: che-java11-gradle-7.25.0 +- image: quay.io/eclipse/che-java11-gradle@sha256:fcf158878ccf999ec4d0ec4b94d813c7c0b5d506c023a63b24358ac736ce3849 +- # tag: quay.io/eclipse/che-java11-gradle:7.25.0 +- - name: che-java11-maven-7.25.0 +- image: quay.io/eclipse/che-java11-maven@sha256:edf270bd09599790072414bc36eee15ba86cbbafc7643b71e9c4de346eb1d783 +- # tag: quay.io/eclipse/che-java11-maven:7.25.0 +- - name: che-java8-maven-7.25.0 +- image: quay.io/eclipse/che-java8-maven@sha256:9ec9cb95961ef3d022636ea701a21123aeac8ec1a829b4eb4d2ff7feceb5f800 +- # tag: quay.io/eclipse/che-java8-maven:7.25.0 +- - name: che-nodejs10-community-7.25.0 +- image: quay.io/eclipse/che-nodejs10-community@sha256:f52281cbfbb295f5064efd83d2a0fc5f854cbc357e6f74b4da392052742b0156 +- # tag: quay.io/eclipse/che-nodejs10-community:7.25.0 +- - name: che-nodejs10-ubi-7.25.0 +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:84d1593553b373ff0d976d792cac313dc2aeb2f4d4bf908776752cb799d13da1 +- # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.0 +- - name: che-nodejs12-community-7.25.0 +- image: quay.io/eclipse/che-nodejs12-community@sha256:45b69cab2aff3c646ab6c756438761cae2c2a01d6d59e1ac1f3ec97d8c1c3d4f +- # tag: quay.io/eclipse/che-nodejs12-community:7.25.0 +- - name: che-nodejs8-centos-7.25.0 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:3b2d38eb73e8e5dc351924d6e7e787394d7157effe28ae0dd402ebe7dd9c06f5 +- # tag: quay.io/eclipse/che-nodejs8-centos:7.25.0 +- - name: che-php-7-7.25.0 +- image: quay.io/eclipse/che-php-7@sha256:bc8e69bd17a1a7b6549086c3aaacbc038ad0e523b636b947f326af93991e830b +- # tag: quay.io/eclipse/che-php-7:7.25.0 +- - name: che-python-3.7-7.25.0 +- image: quay.io/eclipse/che-python-3.7@sha256:a5187abba32d6bef1b23ebe55174ef892f8f59c653ee2a77594b35d37134aec5 +- # tag: quay.io/eclipse/che-python-3.7:7.25.0 +- - name: che-python-3.8-7.25.0 +- image: quay.io/eclipse/che-python-3.8@sha256:6f289152120b737c0d1776b45419d1f659e81a9bded37985616f73a50e1faa72 +- # tag: quay.io/eclipse/che-python-3.8:7.25.0 +- - name: che-quarkus-7.25.0 +- image: quay.io/eclipse/che-quarkus@sha256:e0e9c54749aa2fffb4f0012bb79adc0b4d05107c61a2e14c49124d673a0c78cc +- # tag: quay.io/eclipse/che-quarkus:7.25.0 +- - name: che-rust-1.39-7.25.0 +- image: quay.io/eclipse/che-rust-1.39@sha256:0e9af0b0818e70327f465b9ad98bdc9e9109935da9ce058013c8d8b827ad298d +- # tag: quay.io/eclipse/che-rust-1.39:7.25.0 ++ - name: che-cpp-rhel7-7.25.1 ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c ++ # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 ++ - name: che-dotnet-2.2-7.25.1 ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba ++ # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 ++ - name: che-dotnet-3.1-7.25.1 ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 ++ # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 ++ - name: che-golang-1.14-7.25.1 ++ image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 ++ # tag: quay.io/eclipse/che-golang-1.14:7.25.1 ++ - name: che-java11-gradle-7.25.1 ++ image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 ++ # tag: quay.io/eclipse/che-java11-gradle:7.25.1 ++ - name: che-java11-maven-7.25.1 ++ image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 ++ # tag: quay.io/eclipse/che-java11-maven:7.25.1 ++ - name: che-java8-maven-7.25.1 ++ image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ # tag: quay.io/eclipse/che-java8-maven:7.25.1 ++ - name: che-nodejs10-community-7.25.1 ++ image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac ++ # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 ++ - name: che-nodejs10-ubi-7.25.1 ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee ++ # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 ++ - name: che-nodejs12-community-7.25.1 ++ image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea ++ # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 ++ - name: che-nodejs8-centos-7.25.1 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 ++ # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 ++ - name: che-php-7-7.25.1 ++ image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ # tag: quay.io/eclipse/che-php-7:7.25.1 ++ - name: che-python-3.7-7.25.1 ++ image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 ++ # tag: quay.io/eclipse/che-python-3.7:7.25.1 ++ - name: che-python-3.8-7.25.1 ++ image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace ++ # tag: quay.io/eclipse/che-python-3.8:7.25.1 ++ - name: che-quarkus-7.25.1 ++ image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 ++ # tag: quay.io/eclipse/che-quarkus:7.25.1 ++ - name: che-rust-1.39-7.25.1 ++ image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ # tag: quay.io/eclipse/che-rust-1.39:7.25.1 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml index 28094c05c..f030af01e 100644 --- a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml @@ -1,5 +1,5 @@ channels: -- currentCSV: eclipse-che-preview-openshift.v7.25.0 +- currentCSV: eclipse-che-preview-openshift.v7.25.1 name: stable defaultChannel: stable packageName: eclipse-che-preview-openshift From 84b955398d15fbced472b8b25f272d6863220f70 Mon Sep 17 00:00:00 2001 From: Anatolii Bazko Date: Tue, 2 Feb 2021 19:17:42 +0200 Subject: [PATCH 2/8] Add .svc to no proxy (#659) Signed-off-by: Anatolii Bazko --- pkg/controller/che/proxy.go | 6 +++++- pkg/controller/che/proxy_test.go | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pkg/controller/che/proxy.go b/pkg/controller/che/proxy.go index cb1c9439c..bdbf547e5 100644 --- a/pkg/controller/che/proxy.go +++ b/pkg/controller/che/proxy.go @@ -43,7 +43,11 @@ func (r *ReconcileChe) getProxyConfiguration(checluster *orgv1.CheCluster) (*dep // If proxy configuration exists in CR then cluster wide proxy configuration is ignored // Non proxy hosts are merged if cheClusterProxyConf.HttpProxy != "" { - cheClusterProxyConf.NoProxy = deploy.MergeNonProxy(cheClusterProxyConf.NoProxy, clusterWideProxyConf.NoProxy) + if clusterWideProxyConf.HttpProxy != "" { + cheClusterProxyConf.NoProxy = deploy.MergeNonProxy(cheClusterProxyConf.NoProxy, clusterWideProxyConf.NoProxy) + } else { + cheClusterProxyConf.NoProxy = deploy.MergeNonProxy(cheClusterProxyConf.NoProxy, ".svc") + } return cheClusterProxyConf, nil } else if clusterWideProxyConf.HttpProxy != "" { clusterWideProxyConf.NoProxy = deploy.MergeNonProxy(clusterWideProxyConf.NoProxy, cheClusterProxyConf.NoProxy) diff --git a/pkg/controller/che/proxy_test.go b/pkg/controller/che/proxy_test.go index 42c45333e..16da4a3d0 100644 --- a/pkg/controller/che/proxy_test.go +++ b/pkg/controller/che/proxy_test.go @@ -90,7 +90,7 @@ func TestReadProxyConfiguration(t *testing.T) { HttpsPassword: "", HttpsHost: "proxy", HttpsPort: "3128", - NoProxy: "host1", + NoProxy: "host1,.svc", TrustedCAMapName: "", }, }, From 6ca3b5b661672f401c06a1e6d9bd57adf5698e20 Mon Sep 17 00:00:00 2001 From: Nick Boldt Date: Wed, 3 Feb 2021 11:32:30 -0500 Subject: [PATCH 3/8] gh18864 new GH action to run che-docs... (#657) * gh18864 new GH action to run che-docs release when olm/eclipse-che-preview-*/deploy/olm-catalog/eclipse-che-preview-*/eclipse-che-preview-*.package.yaml is updated in master branch Change-Id: Icfb71b6c1e254af4778dcc4f458c4565e94de867 Signed-off-by: nickboldt * probably don't need python Change-Id: I45e689555b9ca2f5722ff18309fd739181578379 Signed-off-by: nickboldt * forgot the --trigger-release flag to create a tag Change-Id: Ie41b19f473384eedf131153deb6e32a6288b689b Signed-off-by: nickboldt --- .github/workflows/release-che-docs.yml | 46 ++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 .github/workflows/release-che-docs.yml diff --git a/.github/workflows/release-che-docs.yml b/.github/workflows/release-che-docs.yml new file mode 100644 index 000000000..a1cb21560 --- /dev/null +++ b/.github/workflows/release-che-docs.yml @@ -0,0 +1,46 @@ +# This Workflow creates PRs for the release of the latest che-docs +name: Release che docs +on: + # manual trigger if required + workflow_dispatch: + inputs: + version: + description: 'The version that is going to be released. Should be in format 7.y.z' + required: true + default: '7.y.z' + forceflag: + description: 'To force creation of .x branch, use --force flag here' + default: '' + # trigger on commit to master branch of new CSVs, eg., https://github.com/eclipse/che-operator/pull/571/files + push: + branches: + - master + paths: + - 'olm/eclipse-che-preview-*/deploy/olm-catalog/eclipse-che-preview-*/eclipse-che-preview-*.package.yaml' + +jobs: + build: + runs-on: ubuntu-20.04 + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Release che docs PRs + run: | + hub version + git config --global user.name "Mykhailo Kuznietsov" + git config --global user.email "mkuznets@redhat.com" + export GITHUB_TOKEN=${{ secrets.CHE_BOT_GITHUB_TOKEN }} + 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=$(cat olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml | yq -r '.channels[].currentCSV' | sed -e "s#eclipse-che-preview-openshift.v##") + else + chedocsVersion="${{ github.event.inputs.version }}" + fi + cd /tmp + # TODO switch to master branch version, not PR version from https://github.com/eclipse/che-docs/pull/1823 + curl -sSLO https://raw.githubusercontent.com/eclipse/che-docs/f634c1d49b0bc88718dcb593f75d11f45de2ba1c/make-release.sh + chmod +x make-release.sh + # fetch che-docs code, bump antora playbook file, create .x branch if not exist, and create release tag from that branch + ./make-release.sh --repo git@github.com:eclipse/che-docs --version ${chedocsVersion} ${{ github.event.inputs.forceflag }} --trigger-release From 428e720ad32c5f3ed12e19ed8726a65ed67974d6 Mon Sep 17 00:00:00 2001 From: Mykhailo Kuznietsov Date: Thu, 4 Feb 2021 16:45:29 +0200 Subject: [PATCH 4/8] Fix community operator update action (#661) --- .github/workflows/release-community-operator-PRs.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/release-community-operator-PRs.yml b/.github/workflows/release-community-operator-PRs.yml index f629a8ebf..422415e3d 100644 --- a/.github/workflows/release-community-operator-PRs.yml +++ b/.github/workflows/release-community-operator-PRs.yml @@ -42,7 +42,7 @@ jobs: hub version git config --global user.name "Mykhailo Kuznietsov" git config --global user.email "mkuznets@redhat.com" - export GITHUB_TOKEN=${{ secrets.CHE_BOT_GITHUB_TOKEN }} + export GITHUB_TOKEN=${{ secrets.CHE_INCUBATOR_BOT_GITHUB_TOKEN }} set -e OP_SDK_DIR=/opt/operator-sdk mkdir -p $OP_SDK_DIR @@ -61,4 +61,4 @@ jobs: export QUAY_PASSWORD_K8S=${{ secrets.QUAY_ECLIPSE_CHE_OPERATOR_KUBERNETES_PASSWORD }} export QUAY_USERNAME_OS=${{ secrets.QUAY_ECLIPSE_CHE_OPERATOR_OPENSHIFT_USERNAME }} export QUAY_PASSWORD_OS=${{ secrets.QUAY_ECLIPSE_CHE_OPERATOR_OPENSHIFT_PASSWORD }} - ./make-release.sh nightly --update-nightly-olm-files --prepare-community-operators-update ${{ github.event.inputs.forceflag }} + ./make-release.sh --prepare-community-operators-update ${{ github.event.inputs.forceflag }} From 2143397b7012cf686e1c325c33c6efcc09b8c452 Mon Sep 17 00:00:00 2001 From: Nick Boldt Date: Thu, 4 Feb 2021 09:56:33 -0500 Subject: [PATCH 5/8] gh18864 - instead of curl, use GH action invocation (#660) Change-Id: I93157a916f85bc2ef108328a969e5dbc38b67034 Signed-off-by: nickboldt --- .github/workflows/release-che-docs.yml | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/.github/workflows/release-che-docs.yml b/.github/workflows/release-che-docs.yml index a1cb21560..af3843bb5 100644 --- a/.github/workflows/release-che-docs.yml +++ b/.github/workflows/release-che-docs.yml @@ -38,9 +38,23 @@ jobs: else chedocsVersion="${{ github.event.inputs.version }}" fi - cd /tmp - # TODO switch to master branch version, not PR version from https://github.com/eclipse/che-docs/pull/1823 - curl -sSLO https://raw.githubusercontent.com/eclipse/che-docs/f634c1d49b0bc88718dcb593f75d11f45de2ba1c/make-release.sh - chmod +x make-release.sh - # fetch che-docs code, bump antora playbook file, create .x branch if not exist, and create release tag from that branch - ./make-release.sh --repo git@github.com:eclipse/che-docs --version ${chedocsVersion} ${{ github.event.inputs.forceflag }} --trigger-release + + # generic method to call a GH action and pass in a single var=val parameter + invokeAction() { + this_repo=$1 + this_action_name=$2 + this_workflow_id=$3 + this_var=$4 + this_val=$5 + + # can compute using GH API + # workflow_id=$(curl -sSL https://api.github.com/repos/${this_repo}/actions/workflows -H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github.v3+json" | jq --arg search_field "${this_action_name}" '.workflows[] | select(.name == $search_field).id'); # echo "workflow_id = $workflow_id" + # or just pass it in + workflow_id=$this_workflow_id + + curl -sSL https://api.github.com/repos/${this_repo}/actions/workflows/${workflow_id}/dispatches -X POST -H "Authorization: token ${GITHUB_TOKEN}" -H "Accept: application/vnd.github.v3+json" -d "{\"ref\":\"master\",\"inputs\": {\"${this_var}\":\"${this_val}\"} }" || die_with "[ERROR] Problem invoking action https://github.com/${this_repo}/actions?query=workflow%3A%22${this_action_name// /+}%22" + echo "[INFO] Invoked '${this_action_name}' action ($workflow_id) - see https://github.com/${this_repo}/actions?query=workflow%3A%22${this_action_name// /+}%22" + } + + # invoke action from che-docs repo + invokeAction eclipse/che-docs "Release Che Docs" "5193493" version "${chedocsVersion}" From 9de44148466c19ce65c5cec3c6d79285ec44231d Mon Sep 17 00:00:00 2001 From: Nick Boldt Date: Thu, 4 Feb 2021 10:09:08 -0500 Subject: [PATCH 6/8] no need for base32 python wrapper as base32 executable is part of coreutils in ubuntu image; requirement for operator-sdk-v0.10.0 is now obsolete as Che 7.21 is EOL; switch to curl as it's better/safer than wget (#662) Change-Id: Iba11ab83257b2df4d7b63f1fd242c15bde65c239 Signed-off-by: nickboldt --- .../release-community-operator-PRs.yml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/.github/workflows/release-community-operator-PRs.yml b/.github/workflows/release-community-operator-PRs.yml index 422415e3d..61b9e589b 100644 --- a/.github/workflows/release-community-operator-PRs.yml +++ b/.github/workflows/release-community-operator-PRs.yml @@ -25,18 +25,11 @@ jobs: uses: actions/setup-python@v2 with: python-version: 3.6 - - name: Install operator courier, yq, and base32 wrapper + - name: Install operator courier, yq run: | python -m pip install --upgrade pip pip install operator-courier==2.1.7 pip install yq - # 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) - sudo cp -f $(pwd)/base32 /usr/local/bin/ - sudo chmod +x /usr/local/bin/base32 - #remove base32 from current directory to avoid it being commited during release - rm $(pwd)/base32 - name: Release community operator PRs run: | hub version @@ -46,13 +39,8 @@ jobs: set -e OP_SDK_DIR=/opt/operator-sdk mkdir -p $OP_SDK_DIR - if [[ ${CHE_VERSION%.*} == 7.21 ]];then - wget https://github.com/operator-framework/operator-sdk/releases/download/v0.10.0/operator-sdk-v0.10.0-x86_64-linux-gnu -O $OP_SDK_DIR/operator-sdk - else - OPERATOR_SDK=$(sed -r 's|operator-sdk:\s*(.*)|\1|' REQUIREMENTS) - wget https://github.com/operator-framework/operator-sdk/releases/download/${OPERATOR_SDK}/operator-sdk-${OPERATOR_SDK}-x86_64-linux-gnu -O $OP_SDK_DIR/operator-sdk - fi - chmod +x $OP_SDK_DIR/operator-sdk + OPERATOR_SDK=$(sed -r 's|operator-sdk:\s*(.*)|\1|' REQUIREMENTS) + curl -sSLo $OP_SDK_DIR/operator-sdk https://github.com/operator-framework/operator-sdk/releases/download/${OPERATOR_SDK}/operator-sdk-${OPERATOR_SDK}-x86_64-linux-gnu && chmod +x $OP_SDK_DIR/operator-sdk export PATH="$PATH:$OP_SDK_DIR" export QUAY_ECLIPSE_CHE_USERNAME=${{ secrets.QUAY_USERNAME }} export QUAY_ECLIPSE_CHE_PASSWORD=${{ secrets.QUAY_PASSWORD }} From 619c9d943bd4c99e12f4ef0ed0c100ba4294690c Mon Sep 17 00:00:00 2001 From: che-bot <39771996+che-bot@users.noreply.github.com> Date: Fri, 5 Feb 2021 17:11:04 +0100 Subject: [PATCH 7/8] Copy 7.25.2 csv to master (#664) Signed-off-by: Mykhailo Kuznietsov Co-authored-by: Mykhailo Kuznietsov --- .../eclipse-che-preview-kubernetes.crd.yaml | 826 +++++++++++++ ...lipse-che-preview-kubernetes.crd.yaml.diff | 0 ...ernetes.v7.25.2.clusterserviceversion.yaml | 843 +++++++++++++ ...es.v7.25.2.clusterserviceversion.yaml.diff | 380 ++++++ ...clipse-che-preview-kubernetes.package.yaml | 2 +- .../eclipse-che-preview-openshift.crd.yaml | 827 +++++++++++++ ...clipse-che-preview-openshift.crd.yaml.diff | 0 ...enshift.v7.25.2.clusterserviceversion.yaml | 1057 +++++++++++++++++ ...ft.v7.25.2.clusterserviceversion.yaml.diff | 548 +++++++++ ...eclipse-che-preview-openshift.package.yaml | 2 +- 10 files changed, 4483 insertions(+), 2 deletions(-) create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml.diff create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml create mode 100644 olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml.diff create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml.diff create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml create mode 100644 olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml.diff diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml new file mode 100644 index 000000000..fc0d9cb6a --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml @@ -0,0 +1,826 @@ +# +# 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 config + maps that will contain the appropriate environment variables the various + components of the Che installation. These generated config maps should + 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). By + default a dedicated Identity Provider server is deployed as part + of the Che installation. But if `externalIdentityProvider` is + `true`, then no dedicated identity provider will be deployed by + the operator and you might need to provide details about the external + identity provider you want to use. See also all the other fields + starting with: `identityProvider`.' + type: boolean + identityProviderAdminUserName: + description: Overrides the name of the Identity Provider admin user. + Defaults to `admin`. + type: string + identityProviderClientId: + description: Name of a Identity provider (Keycloak / RH SSO) `client-id` + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be 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 / RH SSO) deployment. This includes the image + tag. Omit it or leave it empty to use the defaut container image + provided by the operator. + type: string + identityProviderImagePullPolicy: + description: Overrides the image pull policy used in the Identity + Provider (Keycloak / 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 (scope and select) objects. + type: string + type: object + identityProviderPassword: + description: Overrides the password of Keycloak admin user. This + is useful to override it ONLY if you use an external Identity + Provider (see the `externalIdentityProvider` field). If omitted + or left blank, it will be set to an auto-generated password. + type: string + identityProviderPostgresPassword: + description: Password for The Identity Provider (Keycloak / 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). If omitted or left blank, it will be set to an auto-generated + password. + type: string + identityProviderPostgresSecret: + description: 'The secret that contains `password` for The Identity + Provider (Keycloak / RH SSO) to connect to the database. If the + secret is defined then `identityProviderPostgresPassword` will + be ignored. If the value is omitted or left blank then there are + two scenarios: 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 / RH SSO) realm + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be set to the value + of the `flavour` field. + type: string + identityProviderRoute: + description: Route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + identityProviderSecret: + description: 'The secret that contains `user` and `password` for + Identity Provider. If the secret is defined then `identityProviderAdminUserName` + and `identityProviderPassword` are ignored. If the value is omitted + or left blank then there are two scenarios: 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). You should set it ONLY if you use an external + Identity Provider (see the `externalIdentityProvider` field). + By default this will be automatically calculated and set by the + operator. + type: string + 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. + 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. + type: string + openShiftoAuth: + description: 'Enables the integration of the identity provider (Keycloak + / RHSSO) with OpenShift OAuth. Empty value on the OpenShift platform + by default. If user changes this empty value to true/false, then + che-operator respect this value. Otherwise che-operator tries + to auto detect if Openshift oAuth can be enabled and change empty + value, correspondly to auto-detection result. This property allows + 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: Postgres 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: Postgres database name that the Che server uses to + connect to the DB. Defaults to `dbche`. + type: string + chePostgresHostName: + description: Postgres Database hostname that the Che server uses + to connect to. Defaults to postgres. This value should be overridden + 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: Postgres password that the Che server should use to + connect to the DB. If omitted or left blank, it will be set to + an auto-generated value. + type: string + chePostgresPort: + description: Postgres Database port that the Che server uses to + connect to. Defaults to 5432. This value should be overridden + 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 Postgres `user` and `password` + that the Che server should use to connect to the DB. If the secret + is defined then `chePostgresUser` and `chePostgresPassword` are + ignored. If the value is omitted or left blank then there are + two scenarios: 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: Postgres user that the Che server should use to connect + to the DB. Defaults to `pgche`. + type: string + externalDb: + description: 'Instructs the operator on whether or not to deploy + a dedicated database. By default a dedicated Postgres database + is deployed as part of the Che installation. But if `externalDb` + is `true`, then no dedicated database will be deployed by the + operator and you might need to provide connection details to the + external DB you want to use. See also all the fields starting + with: `chePostgres`.' + type: boolean + postgresImage: + description: Overrides the container image used in the Postgres + database deployment. This includes the image tag. Omit it or leave + it empty to use the defaut container image provided by the operator. + type: string + postgresImagePullPolicy: + description: Overrides the image pull policy used in the Postgres + 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. 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 or not a spec is provided. \n Please note that while this + operator and its behavior is community-supported, its payload + may be commercially-supported if you use it 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 controler + will manage ingresses. Defaults to `nginx`. NB: This drives the + `is 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.' + type: string + ingressStrategy: + description: Strategy for ingress creation. This can be `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. If both are + defined, `serverExposureStrategy` takes precedence. + type: string + securityContextFsGroup: + description: FSGroup the Che pod and Workspace pods containers should + run in. Defaults to `1724`. + type: string + securityContextRunAsUser: + description: ID of the user the Che pod and Workspace pods containers + should run as. Default to `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 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 is used to set ingress TLS termination + if TLS is enabled. If the specified secret does not exist, a self-signed + certificate will be created. If the value is empty or omitted, + the default ingress controller certificate will be used. See also + the `tlsSupport` field. Note, when switching to the default ingress + controller certificate, `self-signed-certificate` secret should + be deleted manually. + type: string + type: object + metrics: + description: Configuration settings related to the metrics collection + used by the Che installation. + properties: + enable: + description: Enables `metrics` 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 hostname (or url) to an alternate container + registry to pull images from. This value overrides the container + registry hostname defined in all the default container images + involved in a Che deployment. This is particularly useful to install + Che in an air-gapped 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 + Che in an air-gapped environment. + type: string + allowUserDefinedWorkspaceNamespaces: + description: Defines if a user is able to specify Kubernetes namespace + (or OpenShift project) different from the default. It's NOT RECOMMENDED + to configured true without OAuth configured. This property is + also used by the OpenShift infra. + type: boolean + cheClusterRoles: + description: Comma-separated list of ClusterRoles that will be assigned + to che ServiceAccount. Be aware that che-operator has to already + have all permissions in these ClusterRoles to be able to grant + them. + type: string + cheDebug: + description: Enables the debug mode for Che server. Defaults to + `false`. + type: string + cheFlavor: + description: Flavor of the installation. This is either `che` for + upstream Che installations, or `codeready` for CodeReady Workspaces + installation. In most cases the default value should not be overridden. + type: string + cheHost: + description: Public hostname of the installed Che server. If value + is omitted then 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/route for the custom hostname 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 defaut 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 defaut 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: Che server ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + cheServerRoute: + description: Che server route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + 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. + type: string + customCheProperties: + additionalProperties: + type: string + description: Map of additional environment variables that will be + applied in the generated `che` config map to be used by the Che + server, in addition to the values already generated from other + fields of the `CheCluster` custom resource (CR). If `customCheProperties` + contains a property that would be normally generated in `che` + config map from other CR fields, then the value defined in the + `customCheProperties` will be 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 defaut container image provided by the operator. + type: string + devfileRegistryIngress: + description: Devfile registry ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryMemoryLimit: + description: Overrides the memory limit used in the Devfile registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + devfileRegistryMemoryRequest: + description: Overrides the memory request used in the Devfile registry + deployment In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: Devfile registry route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryUrl: + description: Public URL of the Devfile registry, that serves sample, + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (see the `externalDevfileRegistry` field). By + default this will be automatically calculated by the operator. + type: string + externalDevfileRegistry: + description: Instructs the operator on whether or not to deploy + a dedicated Devfile registry server. By default a dedicated devfile + registry server is started. But if `externalDevfileRegistry` is + `true`, then 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 or not to deploy + a dedicated Plugin registry server. By default a dedicated plugin + registry server is started. But if `externalPluginRegistry` is + `true`, then no such dedicated server will be started by the operator + and you will have to manually set the `pluginRegistryUrl` field. + type: boolean + gitSelfSignedCert: + description: If enabled, then the certificate from `che-git-self-signed-cert` + config map will be propagated to the Che components and provide + particular configuration for Git. + type: boolean + nonProxyHosts: + description: 'List of hosts that should not use the configured proxy. + So specify wild card domain use the following form `.` + and `|` as delimiter, eg: `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 (scope and select) objects. + type: string + type: object + pluginRegistryMemoryLimit: + description: Overrides the memory limit used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + pluginRegistryMemoryRequest: + description: Overrides the memory request used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + pluginRegistryUrl: + description: Public URL of the Plugin registry, that serves sample + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (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 also 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. If the secret is defined then `proxyUser` and + `proxyPassword` are ignored + type: string + proxyURL: + description: URL (protocol+hostname) 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. Che + operator will automatically detect if router certificate is self-signed. + If so it will be propagated to Che server and some other components. + 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 route on + OpenShift) for every required endpoint. "single-host" makes Che + exposed on a single hostname with workspaces exposed on subpaths. + Please read the docs to learn about the limitations of this approach. + Also consult the `singleHostExposureType` property to further + configure how the operator and Che server make that happen on + Kubernetes. "default-host" exposes che server on the host of the + cluster. Please 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. + In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). Defaults + to 1Gi. + type: string + serverMemoryRequest: + description: Overrides the memory request used in the Che server + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 512Mi. + type: string + serverTrustStoreConfigMapName: + description: Name of the config-map with public certificates to + add to Java trust store of the Che server. This is usually required + when adding the OpenShift OAuth provider which has https endpoint + signed with self-signed cert. So, 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 (and are put) on + 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 defaut 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 defaut 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 may 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 if user does not override it. It''s possible + to use , and placeholders (e.g.: + che-workspace-). In that case, new namespace will be + created for each user (or workspace). Is used by OpenShift infra + as well to specify Project' + 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 Postgres database. If omitted or left blank, default storage + class is used. + type: string + preCreateSubPaths: + description: Instructs the Che server to launch a special pod to + pre-create a subpath in the Persistent Volumes. Defaults to `false`, + however it might need to enable it according to the configuration + of your K8S 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 defaut 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. If omitted or left blank, 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 if or not a Postgres instance has been correctly + provisioned + type: boolean + devfileRegistryURL: + description: Public URL to the Devfile registry + type: string + gitHubOAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been configured to integrate with the GitHub OAuth. + type: boolean + helpLink: + description: A URL that can point to some URL where to find help related + to the current Operator status. + type: string + keycloakProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been provisioned with realm, client and user + type: boolean + keycloakURL: + description: Public URL to the Identity Provider server (Keycloak / + RH SSO). + type: string + message: + description: A human readable message indicating details about why the + pod is in this condition. + type: string + openShiftoAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / 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 diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml.diff b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.crd.yaml.diff new file mode 100644 index 000000000..e69de29bb diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml new file mode 100644 index 000000000..f06a4070c --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml @@ -0,0 +1,843 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "org.eclipse.che/v1", + "kind": "CheCluster", + "metadata": { + "name": "eclipse-che" + }, + "spec": { + "auth": { + "externalIdentityProvider": false, + "identityProviderAdminUserName": "", + "identityProviderClientId": "", + "identityProviderImage": "", + "identityProviderPassword": "", + "identityProviderRealm": "", + "identityProviderURL": "", + "oAuthClientName": "", + "oAuthSecret": "" + }, + "database": { + "chePostgresDb": "", + "chePostgresHostName": "", + "chePostgresPassword": "", + "chePostgresPort": "", + "chePostgresUser": "", + "externalDb": false, + "postgresImage": "" + }, + "k8s": { + "ingressClass": "", + "ingressDomain": "", + "ingressStrategy": "", + "securityContextFsGroup": "", + "securityContextRunAsUser": "", + "singleHostExposureType": "", + "tlsSecretName": "che-tls" + }, + "metrics": { + "enable": true + }, + "server": { + "allowUserDefinedWorkspaceNamespaces": false, + "cheClusterRoles": "", + "cheFlavor": "", + "cheImage": "", + "cheImageTag": "", + "cheWorkspaceClusterRole": "", + "devfileRegistryImage": "", + "gitSelfSignedCert": false, + "nonProxyHosts": "", + "pluginRegistryImage": "", + "proxyPassword": "", + "proxyPort": "", + "proxyURL": "", + "proxyUser": "", + "serverExposureStrategy": "", + "serverMemoryLimit": "", + "serverMemoryRequest": "", + "serverTrustStoreConfigMapName": "", + "singleHostGatewayConfigMapLabels": {}, + "singleHostGatewayConfigSidecarImage": "", + "singleHostGatewayImage": "", + "tlsSupport": true, + "useInternalClusterSVCNames": true, + "workspaceNamespaceDefault": "" + }, + "storage": { + "postgresPVCStorageClassName": "", + "preCreateSubPaths": true, + "pvcClaimSize": "1Gi", + "pvcJobsImage": "", + "pvcStrategy": "common", + "workspacePVCStorageClassName": "" + } + } + } + ] + capabilities: Seamless Upgrades + categories: Developer Tools + certified: "false" + containerImage: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + createdAt: "2021-02-05T12:53:51Z" + 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.25.2 + namespace: placeholder +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - description: The `CheCluster` custom resource allows defining and managing + a Che server installation + displayName: Eclipse Che Cluster + kind: CheCluster + name: checlusters.org.eclipse.che + specDescriptors: + - description: Deprecated. Instructs the operator to deploy Che in TLS mode. + This is enabled by default. Disabling TLS may cause malfunction of some + Che components. + displayName: Tls support + path: server.tlsSupport + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + statusDescriptors: + - description: Status of a Che installation. Can be `Available`, `Unavailable`, + or `Available, Rolling Update in Progress` + displayName: Status + path: cheClusterRunning + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase + - description: Public URL to the Che server + displayName: Eclipse Che URL + path: cheURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Current installed Che version + displayName: 'displayName: Eclipse Che version' + path: cheVersion + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A URL that can point to some URL where to find help related + to the current Operator status. + displayName: Help link + path: helpLink + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Public URL to the Identity Provider server (Keycloak / RH + SSO). + displayName: Keycloak Admin Console URL + path: keycloakURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A human readable message indicating details about why the + pod is in this condition. + displayName: Message + path: message + x-descriptors: + - urn:alm:descriptor:text + - description: A brief CamelCase message indicating details about why the + pod is in this state. + displayName: Reason + path: reason + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase:reason + - urn:alm:descriptor:text + version: v1 + description: | + A collaborative Kubernetes-native development solution that delivers Kubernetes workspaces and in-browser IDE for rapid cloud application development. + This operator installs PostgreSQL, Keycloak, Registries and the Eclipse Che server, as well as configures all these services. + ## Prerequisites + - Operator Lifecycle Manager (OLM) needs to be installed. + - Kubernetes Platform. For OpenShift, the installation is directly made from OperatorHub UI in the admin console. + + OLM installation can be checked by running the command: + ``` + $ kubectl get pods --all-namespaces | grep olm + olm catalog-operator-7b8cd7f8bf-2v7zj 1/1 Running 0 10m + olm olm-operator-5c5c798cd5-s6ll5 1/1 Running 0 10m + olm olm-operators-fm5wc 1/1 Running 0 10m + olm operatorhubio-catalog-d78km 1/1 Running 0 10m + olm packageserver-5c5f64947b-trghp 1/1 Running 0 9m56s + olm packageserver-5c5f64947b-zqvxg 1/1 Running 0 9m56s + ``` + + ## How to Install + Install `Eclipse Che Operator` by following instructions in top right button `Install`. + + A new pod che-operator is created in `my-eclipse-che` namespace + + ``` + $ kubectl get pods --all-namespaces | grep my-eclipse-che + my-eclipse-che che-operator-554c564476-fl98z 1/1 Running 0 13s + ``` + + The operator is now providing new Custom Resources Definitions: `checluster.org.eclipse.che` + + Create a new Eclipse Che instance by creating a new CheCluster resource: + + On the bottom of this page, there is a section `Custom Resource Definitions` with `Eclipse Che Cluster` name. + + Click on `View YAML Example` *Link* and copy the content to a new file named `my-eclipse-che.yaml` + **Important!** Make sure you provide **K8s.ingressDomain** which is a global ingress domain of your k8s cluster, for example, `gcp.my-ide.cloud` + Create the new CheCluster by creating the resource in the `my-eclipse-che` namespace : + ``` + $ kubectl create -f my-eclipse-che.yaml -n my-eclipse-che + ``` + ***important:*** The operator is only tracking resources in its own namespace. If CheCluster is not created in this namespace it's ignored. + The operator will now create pods for Eclipse Che. The deployment status can be tracked by looking at the Operator logs by using the command: + ``` + $ kubectl logs -n my-eclipse-che che-operator-554c564476-fl98z + ``` + ***important:*** pod name is different on each installation + + When all Eclipse Che containers are running, the Eclipse Che URL is printed + + + Eclipse Che URL can be tracked by searching for available trace: + ``` + $ kubectl logs -f -n my-eclipse-che che-operator-7b6b4bcb9c-m4m2m | grep "Eclipse Che is now available" + time="2019-08-01T13:31:05Z" level=info msg="Eclipse Che is now available at: http://che-my-eclipse-che.gcp.my-ide.cloud" + ``` + When Eclipse Che is ready, the Eclipse Che URL is displayed in CheCluster resource in `status` section + ``` + $ kubectl describe checluster/eclipse-che -n my-eclipse-che + ``` + + ``` + Status: + Che Cluster Running: Available + Che URL: http://che-my-eclipse-che.gcp.my-ide.cloud + Che Version: 7.0.0 + ... + ``` + + By opening this URL in a web browser, Eclipse Che is ready to use. + ## Defaults + By default, the operator deploys Eclipse Che with: + * Bundled PostgreSQL and Keycloak + * Per-Workspace PVC strategy + * Auto-generated passwords + * TLS mode (secure routes) + ## Installation Options + Eclipse Che operator installation options include: + * Connection to external database and Keycloak + * Configuration of default passwords and object names + * PVC strategy (once shared PVC for all workspaces, PVC per workspace, or PVC per volume) + * Authentication options + ### External Database and Keycloak + To instruct the operator to skip deploying PostgreSQL and Keycloak and connect to an existing DB and Keycloak instead: + * set respective fields to `true` in a custom resource spec + * provide the operator with connection and authentication details: + ``` + externalDb: true + chePostgresHostname: 'yourPostgresHost' + chePostgresPort: '5432' + chePostgresUser: 'myuser' + chePostgresPassword: 'mypass' + chePostgresDb: 'mydb' + externalIdentityProvider: true + identityProviderURL: 'https://my-keycloak.com' + identityProviderRealm: 'myrealm' + identityProviderClientId: 'myClient' + ``` + #### Self-signed Certificates and TLS Secrets + + Eclipse Che uses self-signed certificates by default, as TLS mode is on by default. + + To provide the name of the tls secret that will be used for Eclipse Che and workspaces ingresses: + ``` + tlsSecretName: 'my-ingress-tls-secret' + ``` + displayName: Eclipse Che + icon: + - base64data: iVBORw0KGgoAAAANSUhEUgAAANMAAAD0CAYAAAABrhNXAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAABmJLR0QA/wD/AP+gvaeTAAAaNklEQVR42u3de3QU9dkH8O/zm91EQK0U77dqVdTW++1V20KigUSQahLjsSSbtp4eeqqVLHILCcoiyQZEIbF61B6PVQJ6XiOkr6TlYiABr603wHotar1bBUWUYDY787x/JIGoSchmZ+c3M/t8/iS7M8+M5+vs7szz/IiZIYRIntJdgBB+IWESwiYSJiFsImESwiYSJiFsImESwiaBvv5ARLprEwB4ddaJTBQF8w/JsKbQmI0v665JAL3dUqK+7jNJmPTiNWOHWYhNB1AOILPrn+MA369MazaNe+Iz3TWmMwmTB3AEyrwwu4SIbwVwWB+v+hxEt6gg7qLs1rjumtORhMnlePUlF5hk1RFw4QDf8rrFmBLMa12tu/Z0I2FyKV53yVGWyTVgLgGQ8IknoImMQBnlNL+t+1jShYTJZXjlhKFW8KsbQJgNYP8ktxYDcI8yh95E41bt1H1sfidhcpH4mtETCHQHgONs3vTHAEXUMy33UQSW7uP0KwmTC/DqS84xyaol4Bcp3tULiqiMxrY8pfuY/UjCpBG3ZB1sxfgmgK4HYDi1WwI9SnGaTuPXv6v7HPiJhEkDfv7coPX5AdeB+RaADtRURRtAC9UB7Qvo4md26z4nfiBhcljH6qwcRbgDwKm6a+nyATNVGrkt9USQrtAkSJgcwquyT2ZlLWLQON219FofsMEghGls6ybdtXiVhCnFuOnnw62gEQHoOvTz3KM7sAVSy5RS0yln3X91V+M1EqYU4ZasgBWjawGuAnCI7noStAOM+coaUkvjVrXrLsYrJEwp0LHmkksUrFoAp+uuJSnMbzLR1EBua5PuUrxAwmSj7tYIBhfprsVOBDQTU5jyWl7RXYubSZhs0KM1YiaA/XTXkyIdAN+tMmgOZbfu0F2MG0mYksAMMtdkh4h4AYDDddfj0FF3tnrsOOROurrB1F2Nm0iYBolXjT7fVFRHwEW6a9FkkyIK09iWDboLcQsJU4KSbY3wGwKaCNZkyt34ju5adJMwDRA/fdEQa2fmZBAqARygux536Wr1+CY+m6546ivd1Wg7CxKmfUtha4TP8EeAmpuurR4Spn7w46PONi2qJdAo3bV4CROeM1iFKXf907prcfS4JUzfx82XjrDM+M0Ot0b4TWerB8yplLvxfd3FOHLAEqYeJ2NPawTmAviB7np8YheA21QG5lN26ze6i0klCVOXjtVZOUpxHZh+orsWn3qfmWYH8lqW6C4kVdI+TLwq+2Q2+HZmjNddSzogoIUsI0yXrduiuxa7pW2YuOnnw62MwEwwTwEoQ3c96aWr1SMen+qnKbRpF6a901GthQAdqrueNPcFGAvUzkMW09UNMd3FJCutwtSxenS2ItQCdIbuWsS3vMFENwbGtvxddyHJSIsw8ZpRx1hkVIM5pLsW0TcCmsk0ymjculd11zIYvg5TmrRG+E1nq4cK3kxjmr/UXUwifBkmZpD5+OiriHEbQMfqrkcMynYQ5nmp1cN3YepsjUAtgS7WXYuwA7+oGGHK2/CE7kr2WalfwsRrxxxpcWwOgN8BJEuJ+gwBTWThBrqs9T+6a+mL58PEjxRlWAd99gcw5kFaI3yO20D0JxVEFWW3fq27mu9V5+UwdbVG1AE4XnctwlEfMlOF26bQejJMvDbrLJNRS8Bo3bUIfRj8T0NRGY1pfVZ3LYDHwsSrc39o0TdzpDVC7OWeKbSeCFOP1ogIgIO0FCHcrrPVwxxSo2sKrevD1LVqRC2Anzq+c+FFW5m4IjB2Q4PTO3ZtmLj50pFsmrczcLnTJ0V4HzHWESFMua3/cmqfrgsTt2QdZHWgHIwwgEynToTwpTjA96sMqqTs1m2p3plrwiStESJ1uqbQBnEXZbfGU7YXN4SpY1VWllKoBXBmqg5UCACvW4wpwbzW1anYuNYw8d+zjrYCFJXpqMJJBDSRESijnOa37dyuljDxyglDrYyvZkBaI4Q2XVNozaE30bhVO23ZopNhktYI4UIfAxSxYwqtY2HitVnndT0C9DOHT5YQA/GCIiqjsS1PDXYDKQ8Tr/7FERapCKQ1Qrhf5xTaOE2n8evfTfjNqQrT3tYIvgWgA3WfJSEGjtsAWpjoFNqUhKmzNQK1AP1Y92kRIgkfMFPlQFs9bA0TPz7qVLbUIgbydJ8FIezChFbDojDltWzu93V2hElaI4T/dbV6cHAa5a79tNdXJBMmbskKWDG6FszVIBys+3CFcMAOMOYra0jtd1s9Bh2mjrXZlyrmWgCn6T46IRzH/CYTTQ3ktjbt/acEw8RrR53EbFQzuEj38QihGwHNxBSmvJZXEgqT9Xj2bWC+QVaNEKInjoFQpca0zvvuXwJ9vwdT5XlUIXpiC6T+Vyn1597+Gkh0c0KkIwb+YUCV0diWfwBAbx/oJExC9G/AN3MlTEL0qudE2ZYBTZSVMAnxHQQ0Udz4Y6IPwEqYhNiDX1SdU2OfHMy7pU1CCMY2EMLqy0MvGGyQALkyifTWuXKhNfQmyku+nV3CJNISAc2krMk0ZuNrdm1TwiTSzRtMdKORgtXeJUwiXXwBwtzO4ZQtKRlOKWESftc5Ntm0ZtO4Jz5L5Y4kTMK3CLyerMAUumzdFif2J2HyBu58GkwmPg3QW8w01chr/T8ndyr/cVyPX1QKoxTUBcwY9D2QNLELwFyVgdMCeS2OBgmQK5N7MbZBoUrtOPROurrBBABmjDIfH30VgRaC8SPdJboIg2ip6uAZNL71E11F9N0cuDbbNStbp5nOG4n9zMXuMb99BoAhugvWiQnPGSaX0WUbnnF0vwl12kqYHEdAE5kqTOPWvzWQ16f5yiIfMlPFQOfc2U3C5F5vMHhKIHfDqsG8mddmj7Y6B96cpftAHLAbhDvU7o5quuKpr3QVIWFynx43EpNb5W7vaox8K4DDdB9YKhDQRLAmU+7Gd3TXImFyj5TdSOSWrP2tGKYBKIdf1glmvKRIhSl3/UbdpewpScKkH4HXk+Iwjdn4cir345MxbdtBmKd2HLLnF023kDDptZWJKwJjNzQ4udOO1Vk5ilAL4Ke6T0AiZQN8t1LBm2lM85e6i+mNhEmPXQBuS3TJEjvx8+cGre0H/tYLo617DnrUXUt/JEzOcsWNxG8V5OZFF3oZQexmEiaHMPifhoWw0zcSB1zf46NOZVMtZkKu7lrQPRx/5yGL6eqGmO5iBkrClHpabyQmqnOhOqoDcLzze9/3si1u1ltu5EFXe+wGYYHKwCmBvJYlXggSAARyN6xUXx5yCghhAI7dAGVCq2J1jjG2pdSLQeqLXJmSREATWbiBLmv9j+5aksFrxxxpcWwOUru49/vMNNsrV+7+yMc8OzFeUuAyytvwhO5SbD2stVnnmcx1BLrYxq0OahFmN5Mw2cO1NxLtwgwyHx99FTFuA+jYZDZFoEdJGdNoTPN7uo/LThKm5Lj+RqLdeM3YYRZi0wHMBLBfQu8FnjeIwjS25Sndx5GScyNhGhwCmsk0ymjculd116IDrxl1jEVGNZhDA3j5xwBF1DMt91EElu7aU3ZOJEwJe4OJbgykYMaaF3WsHp3d+WgSnfH9v3IMwD39NTX6iYRp4L4AY4HXbiQ6YW+rh7UQoEOBrl80jUAZ5TS/rbs+x86DhGmf4gD/WRmBmyln3XbdxbhZ56NJ7dMtqMeDuevX667H8eOXMPWNgBayjLBTM9aEt/WWG5lO1H0jMa9lie5ChLelc5h6tEa0+OJGotArHcPUeSMR5lTK3fi+7mKEf6RVmJjwnMEqTLnrn9Zdi/CfNHlqnD8C6PfG060XSpBEqvj9ytQ1Yy2udcaaSA++DdOeGWtj9c9YE/4RiUTUlreCpQAe+O7f/BimTQqqzE0z1oQ/FBTXnL9lK2oBvhg+D5PvWyOEHr+8ZsGRgUB8DsC/Qz+/M/ghTGnXGiGcUVS0aEg8s30ywawE6IB9vd7TYdo7Y63V1TPWhPcUhqommPxNHSUwbMabYeqasWZ4ZMaa8I4rJ1afpRTqmGlUou/1Wpg6Z6xZQ2tp3Kp23cUI/ygqivzQysiYw4RBD+j0SJh6zFjL889oKKHfpEn3Bre3bbvOBEUAHJTMtlwfJia0GpYKU27LZt21CH8pLK3J2bZrey2IbFnUwM1hep+ZZgdypTVC2Cu/NDpSMW5niy+3c/FSF4ap54w1aY0Q9rnyN5GDjHiwnC2EOQULwbkpTF0z1gK+m7Em9IpEImrz1mAJxelWTuESpa4Ik99nrAl98kPR0Vu2oo6AM1O9L81h4o8ANdfw+Yw14byC4gVHA2YUjBLAzm9GfdMSprhF2PThwZvf3Tli/NU33vOhjhqEP02YFBkabAvOAMwZAIY4uW/Hw/TCB4fgL8+fgv9+NeRMAM8Vhmoip5/Qfl8kEpErk0gCU35o/lXUxgsB/EhHBY6N+vrgy/3xwPMnY/NHI3r78/NghFcsq5DvTCJhV06sOVcprgPwM6f2ubx+1vc+Oqb8yvR1ewANL5+I1a8fA4v7/Oh6HghPFJZEH1VKTWtYUi6/5ol9KiipPgJAZF+tEU5J2ZXJtAgtbx2FhzediJ3fZCTy1jaAFx4Y6Jj/wAMRuc8kvqeoKJJhZQb/YIFuIeBAHTX0dmVKSZpf/mQEZvztItz77E8SDRIADAVozs54xr/zS6pLAXbklxjhDYWhqglmZsZrDKrVFaS+2Hpl+njnUDy86UQ88+7hthXIQCugwo1Ly+XZvDRW+KvoKWxgMYA83bUAKfzO9E2HgZWvHYfGl49Hh2XvxY6ALMB6saA4uoxVcFpj/XR5ajyN9GiNuA7a74v2L6krEwN44p0jUf/CSOzYnfDHucHYwaD53wwfVrvqT5Oln8nHsrIigRHHZF7LbFUDdLDuer7L1u9M/972A1Su+h/86cnTnAoSABxE4PlDvvh6S35x9HKndiqcdVVx9aUjjs54kZnvdWOQ+pLwZXN72354+KWTsPGdw8H6fhsYSYSVBcXRZgqo8PIHy2UGhA8UldScaIGjFlCku5bBGHCY2k2Fx145Hn995TjE4oPq6rUfIYdN66XC4ujdZjA2568PRHboLkkkLhRaOGwXx6ab4HKkoDXCKfv8zsRMePa9w1D/wkh8tiuhBbcdPhJ8Tsy3qPaT7mxouFrm5nkCU35JNESgBQDs+wnYAb19Z+o3TG9tPxAPPn8yXvt0uO7aE8CvEWHK8vrKNborEX27cmLVBUoZdQBfqLuWwUjop/G7nj4NG946AuzM0+s2olOZsbowFG1SMCc31N8ks8ZdpKi06ijTVDUglPjthnyfYWp960jdtSWFGZebMMYWFkfv6cg0Zj92/0xZBUOj7umopsWzQdhfdz2poP3hwBTLYMLkQMx8vTBUMykSifj9eF2pMFQ1wcz45lUCzwf8GSTA/2HqdiQz37tla8azV5VUXay7mHRRUFJ9Tn5JdCOzegyE43TXk2qufjwjBc63oJ6UVo/Uyi+NjlAmbmbgehrkdFQvSrcwAQAxUGRa1riCkurbpNXDPt3TUdnCXCb8QHc9TkuXj3m9GQbQnJ1mxpudrR4iGYWlNTmftW3fxKBaIP2CBKTnlenbGMcQ6MGCUPQ3RBxevqRyi+6SvKSoZN7JJoxFbPE4X/3OPQgSpm6MbGZ6SVo9Bmb8xJrh+ylrpgmaAsCxJ53dTML0bQqEkOKOy/NLahYE2tsXNzREYrqLcpM901HBCxl0qO563CSdvzP1iYHhBJ5vZma8XFBSPV53PW5RMLE6e8vWjJcI9CAACdJ3yJWpfyMBaioojjYbQFnDsopXdRekwxXXVB1jGKoahJDuWtxMwjQQhBwT2FRYHL1bxdTNDQ3labEQdXdrBEAzAbi4ZcAd5GPewAWZMNnMtN4qLKkuKyp6xMc3I5nyQzVFu7jjVYDmQII0IBKmxI1gUK2ZufW5gonzE15E2O0KimvOLyiZ/yQxPwLgWN31eIl8zBu8s6GsDX5p9fjlNQuODATic9wyHdWLJExJ6mr1uLSwpPqOjoxAtddaPbqnozLMeQAdoLseL5P/A9ljCINmBmLma16aQts1HfX1rkeAJEhJkiuTvY4i0IMFJTV/ZBUta1xS8YzugnqTH1pwKlnmYmbk6q7FTyRMqXE+WXiqoDi61AgGZjQ8MOMT3QUBPaajsnk9KH1aI5wiYUodAiFkxuMFuls9Jk26N7h99+e/NdmqBuCZoY5eI9+ZUm9Y16oeL+eHahwfrlhYWpOzbdf2l7w2HdWL5MrknBOJ+ZGCkuh6Ujwl1a0ehRPnnQTDWMQWX+65AVMeJWFy3iVs0QsFJdX3G0Ga3fCXis/s3PiVv4kcZMSD5QwKg707HdWLJEx6BACaZHWgyK5Wjz2tEXG6lYHDdB9gOpLvTBp1t3rEMzO3FIai4wa7nfxQdPTLWzNe6GqNkCBpIlcmFyDwycz4W0FxtJmVMbmxfuZrA3lfQfGCowEzCkYJQ74Z6SZhchNCDrG5ubA4encbYjetWhbZ2dvLJkyKDA22BWcA5gwAQ3SXLTrJxzz3CTJh8hAK9tLq0dkaEWzL6G6NkCC5SJ+rYBSGahJeIFqkxIsKCMctalOK6wD8THdBIoULRIuUOscCNijFDPkk4WoSJm8gyA8Mrif/pxPCJhImIWwiYRLCJhImIWwiYRLCJhImIWwiYRLCJhImIWwiYRLCJhImIWwiYRLCJhImIWzSd5iIbgcgS1AK8W2xrmx8T59hWlE/axpZ5mkENOiuXghXYDSToc5ZUT9rWm9/7rM5kGjvE/9XFVdfahHVAjhN9/EIocGbAN+4Ymnl37r/obfcDChMAJCVFQmMOCbzWmarWiaDijSxg0HzexvFllSYuu0Z/k64DtJcKPzJAmMZq+C0xvrpn/b2AlvC1K3wV9FT2MBiAHm6j1wIuzDQCqhw49Lyzf2+zs4wdSsMVU1gVrUAfqz7RAgxaIT3mXl249LKJQN5eW+5Sfo+0/L62SuN9tipBA4zsDPZ7QnhsDaA5x5oxEYONEh9SfrK1FNBSfURACIAySLDwu2YgEeVUtMalpS/l/CbU/ExrzdXTqw5V2a8CRd7HozwimUVTw12A46FqWt3lB+afxUxLwTwIyfPlBB9+JiIIqef0H5fJBKxktmQw2HqtHcuNslcbKFLjBj39De/PVFawtRtz4oNhBLIQEXhECI0waSy5Q/NetvO7WoNU7f8UHQ0MeoAnJmSHQgBAITXmWlK49JZq1Ox+ZT8NJ6oxvqKDWecGDuHwb8G8F+n9y98jvA5gcOfvx87PVVB6nPXTl+ZevrW+quQ9VdFUuIA399hZlaufHjatlTvzBUf83qTXxodqRi3M+Nyx3YqfIOBdSAON9ZX/suxfbo1TN0KS2ty2ORaEH7q+M6FB9G/mVDZWD/L8Z47V3xn6s/yJbOaDx424mwi+j3AKb9UC8/6GuC5u4cPO11HkPriqitTTz1aPa4HYCS9QeEHFhjL4hZPf+zhSq0/Xrn+Y15v8kMLTiXLXAxCru5ahEaEf8KyylYsm/2s7lIAj4apW1erRx2A43XXIhz1IYMrGpdW1APkmnWWXf+dqT9drR6nEDgM4Cvd9YiUayPwAqM9dkpna4R7gtQXz1yZevrlNQuODATic6TVw5+I0GQadMNfH5j1H9219MXTH/N6UxiqOo/ZqAP4Yt21CFu8qIDwo0srntBdyL74Lkxdh9Xd6nEbgGN1VyMGg7cRUKXaT7qzoeFqU3c1A6rYn2HqFAotHLaLY9MBmglgP931iAHpIMbddrZGOMXXYep2xTVVxxiGqgYhpLsW0Q9GMytjcmP9zNd0lzKo8tMhTN0KJlZnQ1EtgDN01yL2YtAbivjG5fUVf9ddS1LH4eWfxhO14qHKljNOjJ3d1erxadIbFEkh4AsGlQfa28/wepD6PEa/Xpl66tHqMQVAhu560owFxjIjA1Mb/lLxme5i7JJWH/N6k18aHUkWLQJ4vO5a0gKhhYjDy5dUbtFdit3SPkzdCktrciyL6wj4ie5afOo9Bt+U7FBHN0ur70z9Wb5kVvMhQ0ec1fVo0pe66/GRXQDPPTAQO9nPQepLWl6ZesovjY5QJm6WVo+kMBhLjWBgRsMDMz7RXYwjBywf8/pWWFpzNltWLUCjdNfiMc+xQlnjkopndBfiJAnTAEirx4B9xOBZbmuNcIqEaYCKihYNiWe2TyZwJYADdNfjMrsJfEdHRqD6sftnpm0rjIQpQUWlVUeZpqqRKbSdiNCkYE5uqL/pHd216CZhGqSC4przAa4D4SLdtWjyEiwVXvFQ+UbdhbiFhCkpTPkl0RCBFgA4XHc1DtlO4Hleao1wioTJBmnS6tFBjLtVTN3c0FAu9+F6IWGy0ZW/nneCYRo1DBTprsVWjGYKqPDyB8tf0V2Km0mYUiA/VHMJMS+G91s93mTG1MZlFU26C/ECeZwoBRrrZ63v0erhxaeidzCofPfw/c+QICVHrkw2Gj+xZvh+yprpkVYPC4xlrILTGuunS79XguRjnkOKSuadbMJYBGCc7lp6w0AroMKNS8s3667FqyRMDissrclhy7oDoFN119LlAwZXpusjQHaS70wOW75kVvPBQw8+0wWtHm1drREneWU6qhfJlckhmlo9mIBH2bKmr3ho9ru6z4GfyMc8FygoqT6HQbUE/CKV+yHCC2yhbMWyiqd0H7MfSZhcpDBUNYEtdQcIx9m86Y+JKHL6Ce33RSIRS/dx+pWEyWUmTIoMDbRl3kDg2QD2T3JzMWLc48XpqF4kYXKpZFs9iNAEk8qWPzTrbd3Hki4kTC535cSqC5Qy6gC+cEBvILzOTFMal85arbv2dCNh8oQBtHoQPifmW7Z/0HFXa2skrrvidCRh8pAerR7lADK7/jkO8P0dZmblyoenyWr0GkmYPKhw4ryTYBiL2EKQlTHFq6tG+E1CYRJCJEYeJxLCJhImIWwiYRLCJhImIWwiYRLCJv8P9sXhC7xE4kIAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTktMDQtMTNUMDg6MTY6MDgrMDI6MDCcYZVaAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE5LTA0LTEzVDA4OjE2OjA4KzAyOjAw7Twt5gAAAABJRU5ErkJggg== + mediatype: image/png + install: + spec: + clusterPermissions: + - rules: + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + verbs: + - list + - create + - watch + - update + serviceAccountName: che-operator + - rules: + - apiGroups: + - "" + resources: + - namespaces + verbs: + - update + - get + serviceAccountName: che-namespace-editor + deployments: + - name: che-operator + spec: + replicas: 1 + selector: + matchLabels: + app: che-operator + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: che-operator + spec: + containers: + - command: + - /usr/local/bin/che-operator + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION + value: 7.25.2 + - name: RELATED_IMAGE_che_server + value: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - name: RELATED_IMAGE_plugin_registry + value: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - name: RELATED_IMAGE_devfile_registry + value: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + - 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 + - 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:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + - 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 + value: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - name: RELATED_IMAGE_che_server_secure_exposer_jwt_proxy_image + value: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033 + - name: RELATED_IMAGE_single_host_gateway + value: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: RELATED_IMAGE_single_host_gateway_config_sidecar + value: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: CHE_FLAVOR + value: che + - name: CONSOLE_LINK_NAME + value: che + - name: CONSOLE_LINK_DISPLAY_NAME + value: Eclipse Che + - name: CONSOLE_LINK_SECTION + value: Red Hat Applications + - name: CONSOLE_LINK_IMAGE + value: /dashboard/assets/branding/loader.svg + - name: CHE_IDENTITY_SECRET + value: che-identity-secret + - name: CHE_IDENTITY_POSTGRES_SECRET + value: che-identity-postgres-secret + - name: CHE_POSTGRES_SECRET + value: che-postgres-secret + - name: CHE_SERVER_TRUST_STORE_CONFIGMAP_NAME + value: ca-certs + - name: RELATED_IMAGE_code_server_plugin_registry_image_GMXDMLRS + value: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_GMXDILRQ + value: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_GUXDOLRQ + value: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: RELATED_IMAGE_eclipse_broadway_plugin_registry_image_ + value: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: RELATED_IMAGE_che_editor_intellij_community_plugin_registry_image_GIYDEMBOGIWWGZDDGAYDEYY_ + value: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: RELATED_IMAGE_che_buildah_base_plugin_registry_image_GEXDCNBOGAWWEMDDHEYWIMY_ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNQW2ZLMNMWWMMJVMM2WINQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNWGC3THFU3GEY3GMQ3WE___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRQXE5BNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRSXAZLOMRSW4Y3ZFVQW4YLMPF2GSY3TFVRTSMZZMJQTI___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRXXI3TFOQWWGOJTHFRGCNA_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MZWHK5DUMVZC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NN2WEZLSNZSXIZLTFV2G633MNFXGOLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NZXWIZJNMM4TGOLCME2A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_N5YGK3TTNBUWM5BNORXW63DJNZTS2MTGMNTDGNBR + value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBUHALLDHEZTSYTBGQ______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBZG65DPMJ2WMLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONUGK3DMMNUGKY3LFUZGMY3GGM2DC___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONXW4YLSNRUW45BNGJTGGZRTGQYQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ORSWW5DPNYWWENRUGAZTSZQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OZQWYZJNGJRDSOBXGIZA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGI______ + value: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 + httpGet: + path: /healthz + port: 6789 + initialDelaySeconds: 15 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + name: che-operator + ports: + - containerPort: 60000 + name: metrics + readinessProbe: + exec: + command: + - stat + - /tmp/operator-sdk-ready + failureThreshold: 10 + initialDelaySeconds: 5 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + resources: + limits: + cpu: 500m + memory: 256Mi + requests: + cpu: 100m + memory: 64Mi + securityContext: + capabilities: + drop: + - ALL + restartPolicy: Always + serviceAccountName: che-operator + terminationGracePeriodSeconds: 5 + permissions: + - rules: + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - '*' + - apiGroups: + - batch + resources: + - jobs + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + - rolebindings + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + - clusterrolebindings + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + - services + - serviceaccounts + - endpoints + - persistentvolumeclaims + - events + - configmaps + - secrets + - pods/exec + - pods/log + verbs: + - '*' + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - apiGroups: + - apps + resources: + - deployments + verbs: + - '*' + - apiGroups: + - monitoring.coreos.com + resources: + - servicemonitors + verbs: + - get + - create + - apiGroups: + - org.eclipse.che + resources: + - '*' + verbs: + - '*' + - apiGroups: + - metrics.k8s.io + resources: + - pods + - nodes + verbs: + - get + - list + - watch + - apiGroups: + - che.eclipse.org + resources: + - kubernetesimagepullers + verbs: + - '*' + - apiGroups: + - operators.coreos.com + resources: + - subscriptions + - clusterserviceversions + - operatorgroups + verbs: + - '*' + - apiGroups: + - packages.operators.coreos.com + resources: + - packagemanifests + verbs: + - get + - list + serviceAccountName: che-operator + strategy: deployment + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: true + type: MultiNamespace + - supported: false + type: AllNamespaces + keywords: + - eclipse che + - workspaces + - devtools + - developer + - ide + - java + links: + - name: Product Page + url: http://www.eclipse.org/che + - name: Documentation + url: https://www.eclipse.org/che/docs + - name: Operator GitHub Repo + url: https://github.com/eclipse/che-operator + maintainers: + - email: dfestal@redhat.com + name: David Festal + maturity: stable + provider: + name: Eclipse Foundation + replaces: eclipse-che-preview-kubernetes.v7.25.1 + version: 7.25.2 + relatedImages: + - name: che-operator-7.25.2 + image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + # tag: quay.io/eclipse/che-operator:7.25.2 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 + - name: configbump-0.1.4 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump:0.1.4 + - 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.25.2 + image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + # tag: quay.io/eclipse/che-devfile-registry:7.25.2 + - 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.25.2 + image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + # tag: quay.io/eclipse/che-keycloak:7.25.2 + - 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.25.2 + image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + # tag: quay.io/eclipse/che-plugin-registry:7.25.2 + - name: che-server-7.25.2 + image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + # tag: quay.io/eclipse/che-server:7.25.2 + - 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: code-server-3.6.2 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: codercom/code-server:3.6.2 + - name: dirigible-openshift-3.4.0 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift:3.4.0 + - name: che-editor-jupyter-5.7.0 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter:5.7.0 + - name: eclipse-broadway- + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway + - name: che-editor-intellij-community-2020.2-cdc002c + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community:2020.2-cdc002c + - name: che-buildah-base-1.14.0-b0c91d3 + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base:1.14.0-b0c91d3 + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 + - name: che-machine-exec-7.25.2 + image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + # tag: quay.io/eclipse/che-machine-exec:7.25.2 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 + - name: che-plugin-sidecar-bazel-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + # tag: quay.io/eclipse/che-plugin-sidecar:bazel-f15c5d6 + - name: che-plugin-sidecar-camelk-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + # tag: quay.io/eclipse/che-plugin-sidecar:camelk-f15c5d6 + - name: che-plugin-sidecar-clang-6bcfd7b + image: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + # tag: quay.io/eclipse/che-plugin-sidecar:clang-6bcfd7b + - name: che-plugin-sidecar-dart-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + # tag: quay.io/eclipse/che-plugin-sidecar:dart-b64039f + - name: che-plugin-sidecar-dependency-analytics-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + # tag: quay.io/eclipse/che-plugin-sidecar:dependency-analytics-c939ba4 + - name: che-plugin-sidecar-dotnet-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + # tag: quay.io/eclipse/che-plugin-sidecar:dotnet-c939ba4 + - name: che-plugin-sidecar-flutter-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + # tag: quay.io/eclipse/che-plugin-sidecar:flutter-b64039f + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 + - name: che-plugin-sidecar-java8-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + # tag: quay.io/eclipse/che-plugin-sidecar:java8-b8f0528 + - name: che-plugin-sidecar-kubernetes-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar:kubernetes-tooling-2fcf341 + - name: che-plugin-sidecar-node-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + # tag: quay.io/eclipse/che-plugin-sidecar:node-c939ba4 + - name: che-plugin-sidecar-openshift-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar:openshift-tooling-2fcf341 + - name: che-plugin-sidecar-php-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + # tag: quay.io/eclipse/che-plugin-sidecar:php-c939ba4 + - name: che-plugin-sidecar-protobuf-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + # tag: quay.io/eclipse/che-plugin-sidecar:protobuf-2fcf341 + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a + - name: che-plugin-sidecar-scala-1be6877 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar:scala-1be6877 + - name: che-plugin-sidecar-shellcheck-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + # tag: quay.io/eclipse/che-plugin-sidecar:shellcheck-2fcf341 + - name: che-plugin-sidecar-sonarlint-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar:sonarlint-2fcf341 + - name: che-plugin-sidecar-tekton-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + # tag: quay.io/eclipse/che-plugin-sidecar:tekton-b64039f + - name: che-plugin-sidecar-vale-2b98722 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar:vale-2b98722 + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 + - name: che-theia-endpoint-runtime-binary-7.25.2 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.2 + - name: che-theia-7.25.2 + image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + # tag: quay.io/eclipse/che-theia:7.25.2 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest + - name: che--centos--mongodb-36-centos7-latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7:latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - 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.25.2 + image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + # tag: quay.io/eclipse/che-cpp-rhel7:7.25.2 + - name: che-dotnet-2.2-7.25.2 + image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + # tag: quay.io/eclipse/che-dotnet-2.2:7.25.2 + - name: che-dotnet-3.1-7.25.2 + image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + # tag: quay.io/eclipse/che-dotnet-3.1:7.25.2 + - name: che-golang-1.14-7.25.2 + image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + # tag: quay.io/eclipse/che-golang-1.14:7.25.2 + - name: che-java11-gradle-7.25.2 + image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + # tag: quay.io/eclipse/che-java11-gradle:7.25.2 + - name: che-java11-maven-7.25.2 + image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + # tag: quay.io/eclipse/che-java11-maven:7.25.2 + - name: che-java8-maven-7.25.2 + image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + # tag: quay.io/eclipse/che-java8-maven:7.25.2 + - name: che-nodejs10-community-7.25.2 + image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + # tag: quay.io/eclipse/che-nodejs10-community:7.25.2 + - name: che-nodejs10-ubi-7.25.2 + image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.2 + - name: che-nodejs12-community-7.25.2 + image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + # tag: quay.io/eclipse/che-nodejs12-community:7.25.2 + - name: che-nodejs8-centos-7.25.2 + image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + # tag: quay.io/eclipse/che-nodejs8-centos:7.25.2 + - name: che-php-7-7.25.2 + image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + # tag: quay.io/eclipse/che-php-7:7.25.2 + - name: che-python-3.7-7.25.2 + image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + # tag: quay.io/eclipse/che-python-3.7:7.25.2 + - name: che-python-3.8-7.25.2 + image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + # tag: quay.io/eclipse/che-python-3.8:7.25.2 + - name: che-quarkus-7.25.2 + image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + # tag: quay.io/eclipse/che-quarkus:7.25.2 + - name: che-rust-1.39-7.25.2 + image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + # tag: quay.io/eclipse/che-rust-1.39:7.25.2 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 + - name: ubi-minimal- + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml.diff b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml.diff new file mode 100644 index 000000000..b885a5238 --- /dev/null +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml.diff @@ -0,0 +1,380 @@ +--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.1/eclipse-che-preview-kubernetes.v7.25.1.clusterserviceversion.yaml 2021-02-05 12:12:12.326509985 +0000 ++++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/7.25.2/eclipse-che-preview-kubernetes.v7.25.2.clusterserviceversion.yaml 2021-02-05 12:55:03.065263764 +0000 +@@ -83,14 +83,14 @@ + capabilities: Seamless Upgrades + categories: Developer Tools + certified: "false" +- containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 +- createdAt: "2021-01-29T08:26:25Z" ++ containerImage: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd ++ createdAt: "2021-02-05T12:53:51Z" + 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.25.1 ++ name: eclipse-che-preview-kubernetes.v7.25.2 + namespace: placeholder + spec: + apiservicedefinitions: {} +@@ -313,13 +313,13 @@ + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION +- value: 7.25.1 ++ value: 7.25.2 + - name: RELATED_IMAGE_che_server +- value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ value: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - name: RELATED_IMAGE_plugin_registry +- value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ value: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - name: RELATED_IMAGE_devfile_registry +- value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ value: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + - name: RELATED_IMAGE_che_tls_secrets_creation_job + value: quay.io/eclipse/che-tls-secret-creator@sha256:6f0433641e60851454e2dbbc559daf0b8e5f398e8947ca05286b4d1f9916e3e5 + - name: RELATED_IMAGE_pvc_jobs +@@ -327,7 +327,7 @@ + - 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:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ value: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + - 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 +@@ -370,8 +370,8 @@ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 +- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ +@@ -390,8 +390,6 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 +- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NBQXG23FNRWC2YRWGQYDGOLG +- value: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ +@@ -408,8 +406,6 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b +- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2WE6JNMI3DIMBTHFTA____ +- value: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ +@@ -424,53 +420,53 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 +- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGE______ +- value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a +- image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 +@@ -638,12 +634,12 @@ + maturity: stable + provider: + name: Eclipse Foundation +- replaces: eclipse-che-preview-kubernetes.v7.25.0 +- version: 7.25.1 ++ replaces: eclipse-che-preview-kubernetes.v7.25.1 ++ version: 7.25.2 + relatedImages: +- - name: che-operator-7.25.1 +- image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 +- # tag: quay.io/eclipse/che-operator:7.25.1 ++ - name: che-operator-7.25.2 ++ image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd ++ # tag: quay.io/eclipse/che-operator:7.25.2 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 +@@ -653,27 +649,27 @@ + - 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.25.1 +- image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 +- # tag: quay.io/eclipse/che-devfile-registry:7.25.1 ++ - name: che-devfile-registry-7.25.2 ++ image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 ++ # tag: quay.io/eclipse/che-devfile-registry:7.25.2 + - 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.25.1 +- image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 +- # tag: quay.io/eclipse/che-keycloak:7.25.1 ++ - name: che-keycloak-7.25.2 ++ image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a ++ # tag: quay.io/eclipse/che-keycloak:7.25.2 + - 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.25.1 +- image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 +- # tag: quay.io/eclipse/che-plugin-registry:7.25.1 +- - name: che-server-7.25.1 +- image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce +- # tag: quay.io/eclipse/che-server:7.25.1 ++ - name: che-plugin-registry-7.25.2 ++ image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad ++ # tag: quay.io/eclipse/che-plugin-registry:7.25.2 ++ - name: che-server-7.25.2 ++ image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 ++ # tag: quay.io/eclipse/che-server:7.25.2 + - 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 +@@ -701,9 +697,9 @@ + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 +- - name: che-machine-exec-7.25.1 +- image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a +- # tag: quay.io/eclipse/che-machine-exec:7.25.1 ++ - name: che-machine-exec-7.25.2 ++ image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 ++ # tag: quay.io/eclipse/che-machine-exec:7.25.2 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 +@@ -731,9 +727,6 @@ + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 +- - name: che-plugin-sidecar-haskell-b64039f +- image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 +- # tag: quay.io/eclipse/che-plugin-sidecar:haskell-b64039f + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 +@@ -758,9 +751,6 @@ + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 +- - name: che-plugin-sidecar-ruby-b64039f +- image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced +- # tag: quay.io/eclipse/che-plugin-sidecar:ruby-b64039f + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a +@@ -782,12 +772,12 @@ + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 +- - name: che-theia-endpoint-runtime-binary-7.25.1 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 +- - name: che-theia-7.25.1 +- image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f +- # tag: quay.io/eclipse/che-theia:7.25.1 ++ - name: che-theia-endpoint-runtime-binary-7.25.2 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.2 ++ - name: che-theia-7.25.2 ++ image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 ++ # tag: quay.io/eclipse/che-theia:7.25.2 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest +@@ -797,54 +787,54 @@ + - 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.25.1 +- image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 +- - name: che-dotnet-2.2-7.25.1 +- image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 +- - name: che-dotnet-3.1-7.25.1 +- image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 +- - name: che-golang-1.14-7.25.1 +- image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- # tag: quay.io/eclipse/che-golang-1.14:7.25.1 +- - name: che-java11-gradle-7.25.1 +- image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- # tag: quay.io/eclipse/che-java11-gradle:7.25.1 +- - name: che-java11-maven-7.25.1 +- image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- # tag: quay.io/eclipse/che-java11-maven:7.25.1 +- - name: che-java8-maven-7.25.1 +- image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- # tag: quay.io/eclipse/che-java8-maven:7.25.1 +- - name: che-nodejs10-community-7.25.1 +- image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 +- - name: che-nodejs10-ubi-7.25.1 +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 +- - name: che-nodejs12-community-7.25.1 +- image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 +- - name: che-nodejs8-centos-7.25.1 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 +- - name: che-php-7-7.25.1 +- image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- # tag: quay.io/eclipse/che-php-7:7.25.1 +- - name: che-python-3.7-7.25.1 +- image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- # tag: quay.io/eclipse/che-python-3.7:7.25.1 +- - name: che-python-3.8-7.25.1 +- image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- # tag: quay.io/eclipse/che-python-3.8:7.25.1 +- - name: che-quarkus-7.25.1 +- image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- # tag: quay.io/eclipse/che-quarkus:7.25.1 +- - name: che-rust-1.39-7.25.1 +- image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b +- # tag: quay.io/eclipse/che-rust-1.39:7.25.1 ++ - name: che-cpp-rhel7-7.25.2 ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ # tag: quay.io/eclipse/che-cpp-rhel7:7.25.2 ++ - name: che-dotnet-2.2-7.25.2 ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ # tag: quay.io/eclipse/che-dotnet-2.2:7.25.2 ++ - name: che-dotnet-3.1-7.25.2 ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ # tag: quay.io/eclipse/che-dotnet-3.1:7.25.2 ++ - name: che-golang-1.14-7.25.2 ++ image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ # tag: quay.io/eclipse/che-golang-1.14:7.25.2 ++ - name: che-java11-gradle-7.25.2 ++ image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ # tag: quay.io/eclipse/che-java11-gradle:7.25.2 ++ - name: che-java11-maven-7.25.2 ++ image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ # tag: quay.io/eclipse/che-java11-maven:7.25.2 ++ - name: che-java8-maven-7.25.2 ++ image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ # tag: quay.io/eclipse/che-java8-maven:7.25.2 ++ - name: che-nodejs10-community-7.25.2 ++ image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ # tag: quay.io/eclipse/che-nodejs10-community:7.25.2 ++ - name: che-nodejs10-ubi-7.25.2 ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.2 ++ - name: che-nodejs12-community-7.25.2 ++ image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ # tag: quay.io/eclipse/che-nodejs12-community:7.25.2 ++ - name: che-nodejs8-centos-7.25.2 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ # tag: quay.io/eclipse/che-nodejs8-centos:7.25.2 ++ - name: che-php-7-7.25.2 ++ image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ # tag: quay.io/eclipse/che-php-7:7.25.2 ++ - name: che-python-3.7-7.25.2 ++ image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ # tag: quay.io/eclipse/che-python-3.7:7.25.2 ++ - name: che-python-3.8-7.25.2 ++ image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ # tag: quay.io/eclipse/che-python-3.8:7.25.2 ++ - name: che-quarkus-7.25.2 ++ image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ # tag: quay.io/eclipse/che-quarkus:7.25.2 ++ - name: che-rust-1.39-7.25.2 ++ image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 ++ # tag: quay.io/eclipse/che-rust-1.39:7.25.2 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 diff --git a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml index 4e50840cd..49bf9aee3 100644 --- a/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml +++ b/olm/eclipse-che-preview-kubernetes/deploy/olm-catalog/eclipse-che-preview-kubernetes/eclipse-che-preview-kubernetes.package.yaml @@ -1,5 +1,5 @@ channels: -- currentCSV: eclipse-che-preview-kubernetes.v7.25.1 +- currentCSV: eclipse-che-preview-kubernetes.v7.25.2 name: stable defaultChannel: stable packageName: eclipse-che-preview-kubernetes diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml new file mode 100644 index 000000000..3f7ee6316 --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml @@ -0,0 +1,827 @@ +# +# 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 config + maps that will contain the appropriate environment variables the various + components of the Che installation. These generated config maps should + 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). By + default a dedicated Identity Provider server is deployed as part + of the Che installation. But if `externalIdentityProvider` is + `true`, then no dedicated identity provider will be deployed by + the operator and you might need to provide details about the external + identity provider you want to use. See also all the other fields + starting with: `identityProvider`.' + type: boolean + identityProviderAdminUserName: + description: Overrides the name of the Identity Provider admin user. + Defaults to `admin`. + type: string + identityProviderClientId: + description: Name of a Identity provider (Keycloak / RH SSO) `client-id` + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be 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 / RH SSO) deployment. This includes the image + tag. Omit it or leave it empty to use the defaut container image + provided by the operator. + type: string + identityProviderImagePullPolicy: + description: Overrides the image pull policy used in the Identity + Provider (Keycloak / 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 (scope and select) objects. + type: string + type: object + identityProviderPassword: + description: Overrides the password of Keycloak admin user. This + is useful to override it ONLY if you use an external Identity + Provider (see the `externalIdentityProvider` field). If omitted + or left blank, it will be set to an auto-generated password. + type: string + identityProviderPostgresPassword: + description: Password for The Identity Provider (Keycloak / 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). If omitted or left blank, it will be set to an auto-generated + password. + type: string + identityProviderPostgresSecret: + description: 'The secret that contains `password` for The Identity + Provider (Keycloak / RH SSO) to connect to the database. If the + secret is defined then `identityProviderPostgresPassword` will + be ignored. If the value is omitted or left blank then there are + two scenarios: 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 / RH SSO) realm + that should be used for Che. This is useful to override it ONLY + if you use an external Identity Provider (see the `externalIdentityProvider` + field). If omitted or left blank, it will be set to the value + of the `flavour` field. + type: string + identityProviderRoute: + description: Route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + identityProviderSecret: + description: 'The secret that contains `user` and `password` for + Identity Provider. If the secret is defined then `identityProviderAdminUserName` + and `identityProviderPassword` are ignored. If the value is omitted + or left blank then there are two scenarios: 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). You should set it ONLY if you use an external + Identity Provider (see the `externalIdentityProvider` field). + By default this will be automatically calculated and set by the + operator. + type: string + 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. + 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. + type: string + openShiftoAuth: + description: 'Enables the integration of the identity provider (Keycloak + / RHSSO) with OpenShift OAuth. Empty value on the OpenShift platform + by default. If user changes this empty value to true/false, then + che-operator respect this value. Otherwise che-operator tries + to auto detect if Openshift oAuth can be enabled and change empty + value, correspondly to auto-detection result. This property allows + 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: Postgres 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: Postgres database name that the Che server uses to + connect to the DB. Defaults to `dbche`. + type: string + chePostgresHostName: + description: Postgres Database hostname that the Che server uses + to connect to. Defaults to postgres. This value should be overridden + 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: Postgres password that the Che server should use to + connect to the DB. If omitted or left blank, it will be set to + an auto-generated value. + type: string + chePostgresPort: + description: Postgres Database port that the Che server uses to + connect to. Defaults to 5432. This value should be overridden + 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 Postgres `user` and `password` + that the Che server should use to connect to the DB. If the secret + is defined then `chePostgresUser` and `chePostgresPassword` are + ignored. If the value is omitted or left blank then there are + two scenarios: 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: Postgres user that the Che server should use to connect + to the DB. Defaults to `pgche`. + type: string + externalDb: + description: 'Instructs the operator on whether or not to deploy + a dedicated database. By default a dedicated Postgres database + is deployed as part of the Che installation. But if `externalDb` + is `true`, then no dedicated database will be deployed by the + operator and you might need to provide connection details to the + external DB you want to use. See also all the fields starting + with: `chePostgres`.' + type: boolean + postgresImage: + description: Overrides the container image used in the Postgres + database deployment. This includes the image tag. Omit it or leave + it empty to use the defaut container image provided by the operator. + type: string + postgresImagePullPolicy: + description: Overrides the image pull policy used in the Postgres + 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. 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 or not a spec is provided. \n Please note that while\ + \ this operator and its behavior is community-supported, its payload\ + \ may be commercially-supported if you use it 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 controler + will manage ingresses. Defaults to `nginx`. NB: This drives the + `is 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.' + type: string + ingressStrategy: + description: Strategy for ingress creation. This can be `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. If both are + defined, `serverExposureStrategy` takes precedence. + type: string + securityContextFsGroup: + description: FSGroup the Che pod and Workspace pods containers should + run in. Defaults to `1724`. + type: string + securityContextRunAsUser: + description: ID of the user the Che pod and Workspace pods containers + should run as. Default to `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 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 is used to set ingress TLS termination + if TLS is enabled. If the specified secret does not exist, a self-signed + certificate will be created. If the value is empty or omitted, + the default ingress controller certificate will be used. See also + the `tlsSupport` field. Note, when switching to the default ingress + controller certificate, `self-signed-certificate` secret should + be deleted manually. + type: string + type: object + metrics: + description: Configuration settings related to the metrics collection + used by the Che installation. + properties: + enable: + description: Enables `metrics` 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 hostname (or url) to an alternate container + registry to pull images from. This value overrides the container + registry hostname defined in all the default container images + involved in a Che deployment. This is particularly useful to install + Che in an air-gapped 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 + Che in an air-gapped environment. + type: string + allowUserDefinedWorkspaceNamespaces: + description: Defines if a user is able to specify Kubernetes namespace + (or OpenShift project) different from the default. It's NOT RECOMMENDED + to configured true without OAuth configured. This property is + also used by the OpenShift infra. + type: boolean + cheClusterRoles: + description: Comma-separated list of ClusterRoles that will be assigned + to che ServiceAccount. Be aware that che-operator has to already + have all permissions in these ClusterRoles to be able to grant + them. + type: string + cheDebug: + description: Enables the debug mode for Che server. Defaults to + `false`. + type: string + cheFlavor: + description: Flavor of the installation. This is either `che` for + upstream Che installations, or `codeready` for CodeReady Workspaces + installation. In most cases the default value should not be overridden. + type: string + cheHost: + description: Public hostname of the installed Che server. If value + is omitted then 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/route for the custom hostname 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 defaut 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 defaut 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: Che server ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + cheServerRoute: + description: Che server route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + 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. + type: string + customCheProperties: + additionalProperties: + type: string + description: Map of additional environment variables that will be + applied in the generated `che` config map to be used by the Che + server, in addition to the values already generated from other + fields of the `CheCluster` custom resource (CR). If `customCheProperties` + contains a property that would be normally generated in `che` + config map from other CR fields, then the value defined in the + `customCheProperties` will be 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 defaut container image provided by the operator. + type: string + devfileRegistryIngress: + description: Devfile registry ingress custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryMemoryLimit: + description: Overrides the memory limit used in the Devfile registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + devfileRegistryMemoryRequest: + description: Overrides the memory request used in the Devfile registry + deployment In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: Devfile registry route custom settings + properties: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + devfileRegistryUrl: + description: Public URL of the Devfile registry, that serves sample, + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (see the `externalDevfileRegistry` field). By + default this will be automatically calculated by the operator. + type: string + externalDevfileRegistry: + description: Instructs the operator on whether or not to deploy + a dedicated Devfile registry server. By default a dedicated devfile + registry server is started. But if `externalDevfileRegistry` is + `true`, then 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 or not to deploy + a dedicated Plugin registry server. By default a dedicated plugin + registry server is started. But if `externalPluginRegistry` is + `true`, then no such dedicated server will be started by the operator + and you will have to manually set the `pluginRegistryUrl` field. + type: boolean + gitSelfSignedCert: + description: If enabled, then the certificate from `che-git-self-signed-cert` + config map will be propagated to the Che components and provide + particular configuration for Git. + type: boolean + nonProxyHosts: + description: 'List of hosts that should not use the configured proxy. + So specify wild card domain use the following form `.` + and `|` as delimiter, eg: `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 (scope and select) objects. + type: string + type: object + pluginRegistryMemoryLimit: + description: Overrides the memory limit used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 256Mi. + type: string + pluginRegistryMemoryRequest: + description: Overrides the memory request used in the Plugin registry + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 32Mi. + 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: + labels: + description: Comma separated list of labels that can be used + to organize and categorize (scope and select) objects. + type: string + type: object + pluginRegistryUrl: + description: Public URL of the Plugin registry, that serves sample + ready-to-use devfiles. You should set it ONLY if you use an external + devfile registry (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 also 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. If the secret is defined then `proxyUser` and + `proxyPassword` are ignored + type: string + proxyURL: + description: URL (protocol+hostname) 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. Che + operator will automatically detect if router certificate is self-signed. + If so it will be propagated to Che server and some other components. + 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 route on + OpenShift) for every required endpoint. "single-host" makes Che + exposed on a single hostname with workspaces exposed on subpaths. + Please read the docs to learn about the limitations of this approach. + Also consult the `singleHostExposureType` property to further + configure how the operator and Che server make that happen on + Kubernetes. "default-host" exposes che server on the host of the + cluster. Please 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. + In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). Defaults + to 1Gi. + type: string + serverMemoryRequest: + description: Overrides the memory request used in the Che server + deployment. In bytes. (500Gi = 500GiB = 500 * 1024 * 1024 * 1024). + Defaults to 512Mi. + type: string + serverTrustStoreConfigMapName: + description: Name of the config-map with public certificates to + add to Java trust store of the Che server. This is usually required + when adding the OpenShift OAuth provider which has https endpoint + signed with self-signed cert. So, 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 (and are put) on + 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 defaut 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 defaut 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 may 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 if user does not override it. It''s possible + to use , and placeholders (e.g.: + che-workspace-). In that case, new namespace will be + created for each user (or workspace). Is used by OpenShift infra + as well to specify Project' + 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 Postgres database. If omitted or left blank, default storage + class is used. + type: string + preCreateSubPaths: + description: Instructs the Che server to launch a special pod to + pre-create a subpath in the Persistent Volumes. Defaults to `false`, + however it might need to enable it according to the configuration + of your K8S 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 defaut 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. If omitted or left blank, 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 if or not a Postgres instance has been correctly + provisioned + type: boolean + devfileRegistryURL: + description: Public URL to the Devfile registry + type: string + gitHubOAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been configured to integrate with the GitHub OAuth. + type: boolean + helpLink: + description: A URL that can point to some URL where to find help related + to the current Operator status. + type: string + keycloakProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / RH SSO) has been provisioned with realm, client and user + type: boolean + keycloakURL: + description: Public URL to the Identity Provider server (Keycloak / + RH SSO). + type: string + message: + description: A human readable message indicating details about why the + pod is in this condition. + type: string + openShiftoAuthProvisioned: + description: Indicates whether an Identity Provider instance (Keycloak + / 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 diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml.diff b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.crd.yaml.diff new file mode 100644 index 000000000..e69de29bb diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml new file mode 100644 index 000000000..bc8a6a566 --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml @@ -0,0 +1,1057 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "org.eclipse.che/v1", + "kind": "CheCluster", + "metadata": { + "name": "eclipse-che" + }, + "spec": { + "auth": { + "externalIdentityProvider": false, + "identityProviderAdminUserName": "", + "identityProviderClientId": "", + "identityProviderImage": "", + "identityProviderPassword": "", + "identityProviderRealm": "", + "identityProviderURL": "", + "oAuthClientName": "", + "oAuthSecret": "" + }, + "database": { + "chePostgresDb": "", + "chePostgresHostName": "", + "chePostgresPassword": "", + "chePostgresPort": "", + "chePostgresUser": "", + "externalDb": false, + "postgresImage": "" + }, + "metrics": { + "enable": true + }, + "server": { + "allowUserDefinedWorkspaceNamespaces": false, + "cheClusterRoles": "", + "cheFlavor": "", + "cheImage": "", + "cheImageTag": "", + "cheWorkspaceClusterRole": "", + "devfileRegistryImage": "", + "gitSelfSignedCert": false, + "nonProxyHosts": "", + "pluginRegistryImage": "", + "proxyPassword": "", + "proxyPort": "", + "proxyURL": "", + "proxyUser": "", + "serverExposureStrategy": "", + "serverMemoryLimit": "", + "serverMemoryRequest": "", + "serverTrustStoreConfigMapName": "", + "singleHostGatewayConfigMapLabels": {}, + "singleHostGatewayConfigSidecarImage": "", + "singleHostGatewayImage": "", + "tlsSupport": true, + "useInternalClusterSVCNames": true, + "workspaceNamespaceDefault": "" + }, + "storage": { + "postgresPVCStorageClassName": "", + "preCreateSubPaths": true, + "pvcClaimSize": "1Gi", + "pvcJobsImage": "", + "pvcStrategy": "common", + "workspacePVCStorageClassName": "" + } + } + } + ] + capabilities: Seamless Upgrades + categories: Developer Tools, OpenShift Optional + certified: "false" + containerImage: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + createdAt: "2021-02-05T12:55:03Z" + 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.25.2 + namespace: placeholder +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - description: The `CheCluster` custom resource allows defining and managing + a Che server installation + displayName: Eclipse Che Cluster + kind: CheCluster + name: checlusters.org.eclipse.che + specDescriptors: + - description: Deprecated. Instructs the operator to deploy Che in TLS mode. + This is enabled by default. Disabling TLS may cause malfunction of some + Che components. + displayName: Tls support + path: server.tlsSupport + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + statusDescriptors: + - description: Status of a Che installation. Can be `Available`, `Unavailable`, + or `Available, Rolling Update in Progress` + displayName: Status + path: cheClusterRunning + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase + - description: Public URL to the Che server + displayName: Eclipse Che URL + path: cheURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Current installed Che version + displayName: 'displayName: Eclipse Che version' + path: cheVersion + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A URL that can point to some URL where to find help related + to the current Operator status. + displayName: Help link + path: helpLink + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: Public URL to the Identity Provider server (Keycloak / RH + SSO). + displayName: Keycloak Admin Console URL + path: keycloakURL + x-descriptors: + - urn:alm:descriptor:org.w3:link + - description: A human readable message indicating details about why the + pod is in this condition. + displayName: Message + path: message + x-descriptors: + - urn:alm:descriptor:text + - description: A brief CamelCase message indicating details about why the + pod is in this state. + displayName: Reason + path: reason + x-descriptors: + - urn:alm:descriptor:io.kubernetes.phase:reason + - urn:alm:descriptor:text + version: v1 + description: | + A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development. + This operator installs PostgreSQL, Keycloak, and the Eclipse Che server, as well as configures all three services. + + ## How to Install + + Press the **Install** button, choose the upgrade strategy, and wait for the **Installed** Operator status. + + When the operator is installed, create a new CR of Kind CheCluster (click the **Create New** button). + The CR spec contains all defaults (see below). + + You can start using Eclipse Che when the CR status is set to **Available**, and you see a URL to Eclipse Che. + + ## Defaults + + By default, the operator deploys Eclipse Che with: + + * Bundled PostgreSQL and Keycloak + + * Per-Workspace PVC strategy + + * Auto-generated passwords + + * TLS mode (secure routes) + + * Regular login extended with OpenShift OAuth authentication + + ## Installation Options + + Eclipse Che operator installation options include: + + * Connection to external database and Keycloak + + * Configuration of default passwords and object names + + * PVC strategy (once shared PVC for all workspaces, PVC per workspace, or PVC per volume) + + * Authentication options + + ### External Database and Keycloak + + To instruct the operator to skip deploying PostgreSQL and Keycloak and connect to an existing DB and Keycloak instead: + + * set respective fields to `true` in a custom resource spec + + * provide the operator with connection and authentication details: + + + + `externalDb: true` + + + `chePostgresHostname: 'yourPostgresHost'` + + + `chePostgresPort: '5432'` + + + `chePostgresUser: 'myuser'` + + + `chePostgresPassword: 'mypass'` + + + `chePostgresDb: 'mydb'` + + + `externalIdentityProvider: true` + + + `identityProviderURL: 'https://my-keycloak.com'` + + + `identityProviderRealm: 'myrealm'` + + + `identityProviderClientId: 'myClient'` + + + #### Self-signed Certificates + + Eclipse Che uses self-signed certificates by default. + + You can also manually create a secret: + + + + ``` + oc create secret generic self-signed-certificate --from-file=/path/to/certificate/ca.crt -n=$codeReadyNamespace + ``` + displayName: Eclipse Che + icon: + - base64data: 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 + mediatype: image/png + install: + spec: + clusterPermissions: + - rules: + - apiGroups: + - oauth.openshift.io + resources: + - oauthclients + verbs: + - create + - get + - delete + - list + - patch + - update + - watch + - apiGroups: + - config.openshift.io + resources: + - infrastructures + - oauths + - proxies + verbs: + - get + - list + - watch + - apiGroups: + - user.openshift.io + resources: + - users + verbs: + - list + - apiGroups: + - console.openshift.io + resources: + - consolelinks + verbs: + - get + - list + - create + - update + - patch + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterrolebindings + verbs: + - list + - create + - watch + - update + serviceAccountName: che-operator + - rules: + - apiGroups: + - "" + resources: + - namespaces + verbs: + - update + - get + serviceAccountName: che-namespace-editor + deployments: + - name: che-operator + spec: + replicas: 1 + selector: + matchLabels: + app: che-operator + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: che-operator + spec: + containers: + - command: + - /usr/local/bin/che-operator + env: + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: POD_NAME + valueFrom: + fieldRef: + fieldPath: metadata.name + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION + value: 7.25.2 + - name: RELATED_IMAGE_che_server + value: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - name: RELATED_IMAGE_plugin_registry + value: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - name: RELATED_IMAGE_devfile_registry + value: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + - name: RELATED_IMAGE_pvc_jobs + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - 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:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + - 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 + value: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - name: RELATED_IMAGE_che_server_secure_exposer_jwt_proxy_image + value: quay.io/eclipse/che-jwtproxy@sha256:881d1c91e7f5840314f25104ef5c0acee59ed484a5f9ef39daf3008725ea1033 + - name: RELATED_IMAGE_single_host_gateway + value: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: RELATED_IMAGE_single_host_gateway_config_sidecar + value: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: CHE_FLAVOR + value: che + - name: CONSOLE_LINK_NAME + value: che + - name: CONSOLE_LINK_DISPLAY_NAME + value: Eclipse Che + - name: CONSOLE_LINK_SECTION + value: Red Hat Applications + - name: CONSOLE_LINK_IMAGE + value: /dashboard/assets/branding/loader.svg + - name: CHE_IDENTITY_SECRET + value: che-identity-secret + - name: CHE_IDENTITY_POSTGRES_SECRET + value: che-identity-postgres-secret + - name: CHE_POSTGRES_SECRET + value: che-postgres-secret + - name: CHE_SERVER_TRUST_STORE_CONFIGMAP_NAME + value: ca-certs + - name: RELATED_IMAGE_code_server_plugin_registry_image_GMXDMLRS + value: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: RELATED_IMAGE_dirigible_openshift_plugin_registry_image_GMXDILRQ + value: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: RELATED_IMAGE_che_editor_jupyter_plugin_registry_image_GUXDOLRQ + value: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: RELATED_IMAGE_eclipse_broadway_plugin_registry_image_ + value: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: RELATED_IMAGE_che_editor_intellij_community_plugin_registry_image_GIYDEMBOGIWWGZDDGAYDEYY_ + value: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: RELATED_IMAGE_che_buildah_base_plugin_registry_image_GEXDCNBOGAWWEMDDHEYWIMY_ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNQW2ZLMNMWWMMJVMM2WINQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MNWGC3THFU3GEY3GMQ3WE___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRQXE5BNMI3DIMBTHFTA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRSXAZLOMRSW4Y3ZFVQW4YLMPF2GSY3TFVRTSMZZMJQTI___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MRXXI3TFOQWWGOJTHFRGCNA_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MZWHK5DUMVZC2YRWGQYDGOLG + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NN2WEZLSNZSXIZLTFV2G633MNFXGOLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NZXWIZJNMM4TGOLCME2A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_N5YGK3TTNBUWM5BNORXW63DJNZTS2MTGMNTDGNBR + value: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBUHALLDHEZTSYTBGQ______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OBZG65DPMJ2WMLJSMZRWMMZUGE______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONUGK3DMMNUGKY3LFUZGMY3GGM2DC___ + value: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONXW4YLSNRUW45BNGJTGGZRTGQYQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ORSWW5DPNYWWENRUGAZTSZQ_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OZQWYZJNGJRDSOBXGIZA____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGI______ + value: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGI______ + value: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 + httpGet: + path: /healthz + port: 6789 + initialDelaySeconds: 15 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + name: che-operator + ports: + - containerPort: 60000 + name: metrics + readinessProbe: + exec: + command: + - stat + - /tmp/operator-sdk-ready + failureThreshold: 10 + initialDelaySeconds: 5 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + resources: + limits: + cpu: 500m + memory: 256Mi + requests: + cpu: 100m + memory: 64Mi + securityContext: + capabilities: + drop: + - ALL + restartPolicy: Always + serviceAccountName: che-operator + terminationGracePeriodSeconds: 5 + permissions: + - rules: + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - '*' + - apiGroups: + - batch + resources: + - jobs + verbs: + - '*' + - apiGroups: + - route.openshift.io + resources: + - routes + - routes/custom-host + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + - rolebindings + verbs: + - '*' + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + - clusterrolebindings + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + - services + - serviceaccounts + - endpoints + - persistentvolumeclaims + - events + - configmaps + - secrets + - pods/exec + - pods/log + verbs: + - '*' + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - apiGroups: + - apps + resources: + - deployments + verbs: + - '*' + - apiGroups: + - monitoring.coreos.com + resources: + - servicemonitors + verbs: + - get + - create + - apiGroups: + - org.eclipse.che + resources: + - '*' + verbs: + - '*' + - apiGroups: + - metrics.k8s.io + resources: + - pods + - nodes + verbs: + - get + - list + - watch + - apiGroups: + - che.eclipse.org + resources: + - kubernetesimagepullers + verbs: + - '*' + - apiGroups: + - operators.coreos.com + resources: + - subscriptions + - clusterserviceversions + - operatorgroups + verbs: + - '*' + - apiGroups: + - packages.operators.coreos.com + resources: + - packagemanifests + verbs: + - get + - list + serviceAccountName: che-operator + strategy: deployment + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: true + type: MultiNamespace + - supported: false + type: AllNamespaces + keywords: + - workspaces + - devtools + - developer + - ide + - java + links: + - name: Product Page + url: http://www.eclipse.org/che + - name: Documentation + url: https://www.eclipse.org/che/docs + - name: Operator GitHub Repo + url: https://github.com/eclipse/che-operator + maintainers: + - email: dfestal@redhat.com + name: David Festal + maturity: stable + provider: + name: Eclipse Foundation + replaces: eclipse-che-preview-openshift.v7.25.1 + version: 7.25.2 + relatedImages: + - name: che-operator-7.25.2 + image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + # tag: quay.io/eclipse/che-operator:7.25.2 + - name: code-server-@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + - name: dirigible-openshift-@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + - name: che-editor-jupyter-@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + - name: traefik-v2.2.8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik:v2.2.8 + - name: traefik-@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + image: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + # tag: docker.io/traefik@sha256:f5af5a5ce17fc3e353b507e8acce65d7f28126408a8c92dc3cac246d023dc9e8 + - name: eclipse-broadway-@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + - name: che-editor-intellij-community-@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + - name: configbump-0.1.4 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump:0.1.4 + - name: configbump-@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + image: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + # tag: quay.io/che-incubator/configbump@sha256:175ff2ba1bd74429de192c0a9facf39da5699c6da9f151bd461b3dc8624dd532 + - name: che--centos--mongodb-36-centos7-@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - name: che--centos--mysql-57-centos7-@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + image: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + # tag: quay.io/eclipse/che--centos--mysql-57-centos7@sha256:e08ee4d43b7356607685b69bde6335e27cf20c020f345b6c6c59400183882764 + - 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--centos--postgresql-96-centos7-@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + image: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + # tag: quay.io/eclipse/che--centos--postgresql-96-centos7@sha256:b681d78125361519180a6ac05242c296f8906c11eab7e207b5ca9a89b6344392 + - name: che-buildah-base-@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - 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:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + # tag: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + - name: che-devfile-registry-7.25.2 + image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + # tag: quay.io/eclipse/che-devfile-registry:7.25.2 + - name: che-devfile-registry-@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + # tag: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + - name: che-dotnet-2.2-@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + # tag: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + - name: che-dotnet-3.1-@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + # tag: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + - name: che-golang-1.14-@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + # tag: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + - name: che-java11-gradle-@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + # tag: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + - name: che-java11-maven-@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + # tag: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + - name: che-java8-maven-@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + # tag: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + - 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.25.2 + image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + # tag: quay.io/eclipse/che-keycloak:7.25.2 + - name: che-keycloak-@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + # tag: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + - name: che-machine-exec-@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + # tag: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + - name: che-nodejs10-community-@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + # tag: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + - name: che-nodejs10-ubi-@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + - name: che-nodejs12-community-@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + # tag: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + - name: che-nodejs8-centos-@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + # tag: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + - name: che-php-7-@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + # tag: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + - 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-artifacts-broker-@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + image: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + # tag: quay.io/eclipse/che-plugin-artifacts-broker@sha256:4891a6e19be9eae59372f4b31144653f9bd1284e0301ecfe896a099ca6a12b58 + - 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-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.25.2 + image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + # tag: quay.io/eclipse/che-plugin-registry:7.25.2 + - name: che-plugin-registry-@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + # tag: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - 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:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + - 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: 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 + - 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:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + - 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:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + - 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: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 + - name: che-plugin-sidecar-@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + - 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:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: che-plugin-sidecar-@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: che-plugin-sidecar-@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - 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.7-@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + # tag: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + - name: che-python-3.8-@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + # tag: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + - name: che-quarkus-@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + # tag: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + - name: che-rust-1.39-@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + # tag: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + - name: che-server-7.25.2 + image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + # tag: quay.io/eclipse/che-server:7.25.2 + - name: che-server-@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + # tag: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - 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:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + - name: che-theia-@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + # tag: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - 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:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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: ubi-minimal-@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: code-server-3.6.2 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: codercom/code-server:3.6.2 + - name: dirigible-openshift-3.4.0 + image: docker.io/dirigiblelabs/dirigible-openshift@sha256:3365635d1e0403697dea0674bbbdc749c4be2db29818a93b8e1e53c3c5144113 + # tag: docker.io/dirigiblelabs/dirigible-openshift:3.4.0 + - name: che-editor-jupyter-5.7.0 + image: docker.io/ksmster/che-editor-jupyter@sha256:83439ae9edcaa3a97536742315a7912f93e499f49847da094c480031eae4ba47 + # tag: docker.io/ksmster/che-editor-jupyter:5.7.0 + - name: eclipse-broadway- + image: docker.io/wsskeleton/eclipse-broadway@sha256:57c82cd806a56f69aa8663f68405d0778b628a29a64fb16881b11ce9f484dda7 + # tag: docker.io/wsskeleton/eclipse-broadway + - name: che-editor-intellij-community-2020.2-cdc002c + image: quay.io/che-incubator/che-editor-intellij-community@sha256:29025db859268f5dcf21ba6eb4e284744b53c92d6d23514e565a0211606f6863 + # tag: quay.io/che-incubator/che-editor-intellij-community:2020.2-cdc002c + - name: che-buildah-base-1.14.0-b0c91d3 + image: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + # tag: quay.io/eclipse/che-buildah-base:1.14.0-b0c91d3 + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 + - name: che-machine-exec-7.25.2 + image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + # tag: quay.io/eclipse/che-machine-exec:7.25.2 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 + - name: che-plugin-sidecar-bazel-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:7cf6f00d3f2daf04675618c408e08f019f25b91ec08d279094fddb01f559502b + # tag: quay.io/eclipse/che-plugin-sidecar:bazel-f15c5d6 + - name: che-plugin-sidecar-camelk-f15c5d6 + image: quay.io/eclipse/che-plugin-sidecar@sha256:472fb69c2443c095d94e94bae346178a42495218826f6aaea8bf687b2b15a07a + # tag: quay.io/eclipse/che-plugin-sidecar:camelk-f15c5d6 + - name: che-plugin-sidecar-clang-6bcfd7b + image: quay.io/eclipse/che-plugin-sidecar@sha256:ae5124e3198ac6977ca973aaf4885a14e800d647c96a23d15a2b6babbe8fef2a + # tag: quay.io/eclipse/che-plugin-sidecar:clang-6bcfd7b + - name: che-plugin-sidecar-dart-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:6d0c440a7dc648816fcd4885b9cc85f0eb0f391659bb9fc8a9123075bea75165 + # tag: quay.io/eclipse/che-plugin-sidecar:dart-b64039f + - name: che-plugin-sidecar-dependency-analytics-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:095c24055033e219d5a9f6fe9835b79c5d3416f0dfbb228d295713e81d27c661 + # tag: quay.io/eclipse/che-plugin-sidecar:dependency-analytics-c939ba4 + - name: che-plugin-sidecar-dotnet-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f398e3ffd5200c56bf56a6f7f9e8db4aa3f639a6125850f169414528260dce8a + # tag: quay.io/eclipse/che-plugin-sidecar:dotnet-c939ba4 + - name: che-plugin-sidecar-flutter-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + # tag: quay.io/eclipse/che-plugin-sidecar:flutter-b64039f + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 + - name: che-plugin-sidecar-java8-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:14666e1ed3c2cbe4adf2f5632a6aca6e4c4a236b8ba9cc357a5e327c336bfe86 + # tag: quay.io/eclipse/che-plugin-sidecar:java8-b8f0528 + - name: che-plugin-sidecar-kubernetes-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar:kubernetes-tooling-2fcf341 + - name: che-plugin-sidecar-node-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4bce2e39fee6b9e4a8b4e8681380ce2462674597a48b81c131cbbf055dd5d0c3 + # tag: quay.io/eclipse/che-plugin-sidecar:node-c939ba4 + - name: che-plugin-sidecar-openshift-tooling-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar:openshift-tooling-2fcf341 + - name: che-plugin-sidecar-php-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2e49fafb9aa6519fc63019a72a4526222b6905ed01dc484c3e9f5131ae00b546 + # tag: quay.io/eclipse/che-plugin-sidecar:php-c939ba4 + - name: che-plugin-sidecar-protobuf-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + # tag: quay.io/eclipse/che-plugin-sidecar:protobuf-2fcf341 + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a + - name: che-plugin-sidecar-scala-1be6877 + image: quay.io/eclipse/che-plugin-sidecar@sha256:2cb4f70edbcdab3b279dae53b6a753d63fee03bcae3d2a385e24f25e695c03df + # tag: quay.io/eclipse/che-plugin-sidecar:scala-1be6877 + - name: che-plugin-sidecar-shellcheck-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:6b9c739f487738a5bfb20e052a21b4edff4289c738496708abf8adc4d5820d79 + # tag: quay.io/eclipse/che-plugin-sidecar:shellcheck-2fcf341 + - name: che-plugin-sidecar-sonarlint-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:4fdb04026cbeddbfe53184afcd6fc5cb6132a22be5810b13d38a125afd083221 + # tag: quay.io/eclipse/che-plugin-sidecar:sonarlint-2fcf341 + - name: che-plugin-sidecar-tekton-b64039f + image: quay.io/eclipse/che-plugin-sidecar@sha256:1640f9501f9ae1e3c9b276e6200a5c3abc115a36b2c0fdd6c0653e8e19cd58f7 + # tag: quay.io/eclipse/che-plugin-sidecar:tekton-b64039f + - name: che-plugin-sidecar-vale-2b98722 + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar:vale-2b98722 + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 + - name: che-theia-endpoint-runtime-binary-7.25.2 + image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 + # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.2 + - name: che-theia-7.25.2 + image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + # tag: quay.io/eclipse/che-theia:7.25.2 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest + - name: che--centos--mongodb-36-centos7-latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + image: quay.io/eclipse/che--centos--mongodb-36-centos7@sha256:a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + # tag: quay.io/eclipse/che--centos--mongodb-36-centos7:latest-a915db7beca87198fcd7860086989fe8a327a1a4f6508025b64ab28fcc7423b2 + - 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.25.2 + image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc + # tag: quay.io/eclipse/che-cpp-rhel7:7.25.2 + - name: che-dotnet-2.2-7.25.2 + image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d + # tag: quay.io/eclipse/che-dotnet-2.2:7.25.2 + - name: che-dotnet-3.1-7.25.2 + image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c + # tag: quay.io/eclipse/che-dotnet-3.1:7.25.2 + - name: che-golang-1.14-7.25.2 + image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 + # tag: quay.io/eclipse/che-golang-1.14:7.25.2 + - name: che-java11-gradle-7.25.2 + image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f + # tag: quay.io/eclipse/che-java11-gradle:7.25.2 + - name: che-java11-maven-7.25.2 + image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a + # tag: quay.io/eclipse/che-java11-maven:7.25.2 + - name: che-java8-maven-7.25.2 + image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + # tag: quay.io/eclipse/che-java8-maven:7.25.2 + - name: che-nodejs10-community-7.25.2 + image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a + # tag: quay.io/eclipse/che-nodejs10-community:7.25.2 + - name: che-nodejs10-ubi-7.25.2 + image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f + # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.2 + - name: che-nodejs12-community-7.25.2 + image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e + # tag: quay.io/eclipse/che-nodejs12-community:7.25.2 + - name: che-nodejs8-centos-7.25.2 + image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 + # tag: quay.io/eclipse/che-nodejs8-centos:7.25.2 + - name: che-php-7-7.25.2 + image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + # tag: quay.io/eclipse/che-php-7:7.25.2 + - name: che-python-3.7-7.25.2 + image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 + # tag: quay.io/eclipse/che-python-3.7:7.25.2 + - name: che-python-3.8-7.25.2 + image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 + # tag: quay.io/eclipse/che-python-3.8:7.25.2 + - name: che-quarkus-7.25.2 + image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 + # tag: quay.io/eclipse/che-quarkus:7.25.2 + - name: che-rust-1.39-7.25.2 + image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + # tag: quay.io/eclipse/che-rust-1.39:7.25.2 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 + - name: ubi-minimal- + image: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8/ubi-minimal diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml.diff b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml.diff new file mode 100644 index 000000000..4a59d6598 --- /dev/null +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml.diff @@ -0,0 +1,548 @@ +--- /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.1/eclipse-che-preview-openshift.v7.25.1.clusterserviceversion.yaml 2021-02-05 12:12:12.334510145 +0000 ++++ /home/runner/work/che-operator/che-operator/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/7.25.2/eclipse-che-preview-openshift.v7.25.2.clusterserviceversion.yaml 2021-02-05 12:55:52.176100650 +0000 +@@ -74,14 +74,14 @@ + capabilities: Seamless Upgrades + categories: Developer Tools, OpenShift Optional + certified: "false" +- containerImage: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 +- createdAt: "2021-01-29T08:27:32Z" ++ containerImage: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd ++ createdAt: "2021-02-05T12:55:03Z" + 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.25.1 ++ name: eclipse-che-preview-openshift.v7.25.2 + namespace: placeholder + spec: + apiservicedefinitions: {} +@@ -328,19 +328,19 @@ + - name: OPERATOR_NAME + value: che-operator + - name: CHE_VERSION +- value: 7.25.1 ++ value: 7.25.2 + - name: RELATED_IMAGE_che_server +- value: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ value: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - name: RELATED_IMAGE_plugin_registry +- value: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ value: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - name: RELATED_IMAGE_devfile_registry +- value: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 ++ value: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 + - name: RELATED_IMAGE_pvc_jobs + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - 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:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 ++ value: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a + - 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 +@@ -383,8 +383,8 @@ + value: quay.io/eclipse/che-buildah-base@sha256:417203d8629edd92f187afd3ebb3d8dc28338d34809eb75ffc2e08a400f8d56b + - name: RELATED_IMAGE_che_buildkit_base_plugin_registry_image_GAXDOLRRFVRGCY3CGA3DS___ + value: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 +- - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a ++ - name: RELATED_IMAGE_che_machine_exec_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MFZWG2LJMRXWGLJVGMZTOZRYGA______ + value: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_MJQXUZLMFVTDCNLDGVSDM___ +@@ -403,8 +403,6 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:55703ae5faebedee56fdce3879fa2281cc260488d8a488ff77ed3d40f778ddf7 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_M5XS2YZZGM4WEYJU + value: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 +- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NBQXG23FNRWC2YRWGQYDGOLG +- value: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJNMI4GMMBVGI4A____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_NJQXMYJYFVRDQZRQGUZDQ___ +@@ -421,8 +419,6 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:491c62a3ac775d5426d72a59ac18bdd50f5f5d61d07fbfb34e0cd7fed3d4da21 + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OB4XI2DPNYWTEZTDMYZTIMI_ + value: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b +- - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2WE6JNMI3DIMBTHFTA____ +- value: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_OJ2XG5BNGUZGMOLFHFQQ____ + value: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + - name: RELATED_IMAGE_che_plugin_sidecar_plugin_registry_image_ONRWC3DBFUYWEZJWHA3TO___ +@@ -437,53 +433,53 @@ + value: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - name: RELATED_IMAGE_che_sidecar_workspace_data_sync_plugin_registry_image_GAXDALRR + value: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 +- - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ - name: RELATED_IMAGE_che_theia_endpoint_runtime_binary_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ - name: RELATED_IMAGE_che_theia_plugin_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - name: RELATED_IMAGE_mta_vscode_extension_plugin_registry_image_NRQXIZLTOQ______ + value: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + - 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_G4XDENJOGE______ +- value: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGE______ +- value: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b ++ - name: RELATED_IMAGE_che_cpp_rhel7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ - name: RELATED_IMAGE_che_dotnet_2_2_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ - name: RELATED_IMAGE_che_dotnet_3_1_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ - name: RELATED_IMAGE_che_golang_1_14_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ - name: RELATED_IMAGE_che_java11_gradle_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ - name: RELATED_IMAGE_che_java11_maven_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ - name: RELATED_IMAGE_che_java8_maven_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ - name: RELATED_IMAGE_che_nodejs10_community_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ - name: RELATED_IMAGE_che_nodejs10_ubi_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ - name: RELATED_IMAGE_che_nodejs12_community_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ - name: RELATED_IMAGE_che_nodejs8_centos_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ - name: RELATED_IMAGE_che_php_7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ - name: RELATED_IMAGE_che_python_3_7_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ - name: RELATED_IMAGE_che_python_3_8_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ - name: RELATED_IMAGE_che_quarkus_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ - name: RELATED_IMAGE_che_rust_1_39_devfile_registry_image_G4XDENJOGI______ ++ value: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 + - name: RELATED_IMAGE_ubi8_minimal_devfile_registry_image_HAXDG___ + value: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + - name: RELATED_IMAGE_ubi_minimal_devfile_registry_image_ + value: registry.access.redhat.com/ubi8/ubi-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a +- image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 ++ image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd + imagePullPolicy: IfNotPresent + livenessProbe: + failureThreshold: 10 +@@ -657,12 +653,12 @@ + maturity: stable + provider: + name: Eclipse Foundation +- replaces: eclipse-che-preview-openshift.v7.25.0 +- version: 7.25.1 ++ replaces: eclipse-che-preview-openshift.v7.25.1 ++ version: 7.25.2 + relatedImages: +- - name: che-operator-7.25.1 +- image: quay.io/eclipse/che-operator@sha256:dbf5e81187901f9f78a5e55e11439578d6a5ecf3e2b4896741a55a9d2256e0c0 +- # tag: quay.io/eclipse/che-operator:7.25.1 ++ - name: che-operator-7.25.2 ++ image: quay.io/eclipse/che-operator@sha256:eaaf23aef2d721be21f03ee2863e868de51f5c5d9899ca09e34909dcdf0e8bdd ++ # tag: quay.io/eclipse/che-operator:7.25.2 + - name: code-server-@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + image: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 + # tag: docker.io/codercom/code-server@sha256:ef07281004909bb2c228422df2e99a5ba5e450fce7546b8fa186852f23bf6751 +@@ -708,63 +704,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:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- # tag: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- - name: che-devfile-registry-7.25.1 +- image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 +- # tag: quay.io/eclipse/che-devfile-registry:7.25.1 +- - name: che-devfile-registry-@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 +- image: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 +- # tag: quay.io/eclipse/che-devfile-registry@sha256:26e3403cd8a86cefe91870376733062d54ddf0a9640ffefd8004296bfd73e104 +- - name: che-dotnet-2.2-@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- # tag: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- - name: che-dotnet-3.1-@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- # tag: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- - name: che-golang-1.14-@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- # tag: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- - name: che-java11-gradle-@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- # tag: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- - name: che-java11-maven-@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- # tag: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- - name: che-java8-maven-@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- # tag: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 ++ - name: che-cpp-rhel7-@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ # tag: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ - name: che-devfile-registry-7.25.2 ++ image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 ++ # tag: quay.io/eclipse/che-devfile-registry:7.25.2 ++ - name: che-devfile-registry-@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 ++ image: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 ++ # tag: quay.io/eclipse/che-devfile-registry@sha256:d0e873f2ceb1ba2affa10f98b1968862f82ed695045ba01a3f502bd5a8476343 ++ - name: che-dotnet-2.2-@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ # tag: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ - name: che-dotnet-3.1-@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ # tag: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ - name: che-golang-1.14-@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ # tag: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ - name: che-java11-gradle-@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ # tag: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ - name: che-java11-maven-@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ # tag: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ - name: che-java8-maven-@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ # tag: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 + - 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.25.1 +- image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 +- # tag: quay.io/eclipse/che-keycloak:7.25.1 +- - name: che-keycloak-@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 +- image: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 +- # tag: quay.io/eclipse/che-keycloak@sha256:846350743fc027b277aa70624162a4566987c3520c17c6b192d57745002aee82 +- - name: che-machine-exec-@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a +- image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a +- # tag: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a +- - name: che-nodejs10-community-@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- # tag: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- - name: che-nodejs10-ubi-@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- - name: che-nodejs12-community-@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- # tag: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- - name: che-nodejs8-centos-@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- # tag: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- - name: che-php-7-@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- # tag: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 ++ - name: che-keycloak-7.25.2 ++ image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a ++ # tag: quay.io/eclipse/che-keycloak:7.25.2 ++ - name: che-keycloak-@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a ++ image: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a ++ # tag: quay.io/eclipse/che-keycloak@sha256:136d6a88383466465517b24ca7e99213f7481a99054d4a22a0a8894e4e2a808a ++ - name: che-machine-exec-@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 ++ image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 ++ # tag: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 ++ - name: che-nodejs10-community-@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ # tag: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ - name: che-nodejs10-ubi-@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ # tag: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ - name: che-nodejs12-community-@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ # tag: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ - name: che-nodejs8-centos-@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ # tag: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ - name: che-php-7-@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ # tag: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 + - 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 +@@ -777,12 +773,12 @@ + - 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.25.1 +- image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 +- # tag: quay.io/eclipse/che-plugin-registry:7.25.1 +- - name: che-plugin-registry-@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 +- image: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 +- # tag: quay.io/eclipse/che-plugin-registry@sha256:2578d451270f27b34f190aa27a1493f72201dfd7837a77ec93519e68f31321d3 ++ - name: che-plugin-registry-7.25.2 ++ image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad ++ # tag: quay.io/eclipse/che-plugin-registry:7.25.2 ++ - name: che-plugin-registry-@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad ++ image: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad ++ # tag: quay.io/eclipse/che-plugin-registry@sha256:96941f7c013202e078b65af27d54da09227a96d2a03dfc4a8497cc135d9c5bad + - name: che-plugin-sidecar-@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + image: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:08025eadc2594140e77d5dbec5d65af8ec8512e5266936745924d55dd467482a +@@ -840,51 +836,45 @@ + - 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:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 +- image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 +- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 + - name: che-plugin-sidecar-@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + image: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:db86c92418b9f40b2654b8fc473073569e0dc8a01d7adc31c9925e5469d2b114 + - name: che-plugin-sidecar-@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f +- - name: che-plugin-sidecar-@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced +- image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced +- # tag: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced + - name: che-plugin-sidecar-@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + image: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + # tag: quay.io/eclipse/che-plugin-sidecar@sha256:f25f9b8eef7e2a7aea3e842ee13626935b98f96327f5c56b6bbf48b49754c45d + - 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.7-@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- # tag: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- - name: che-python-3.8-@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- # tag: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- - name: che-quarkus-@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- # tag: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- - name: che-rust-1.39-@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b +- image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b +- # tag: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b +- - name: che-server-7.25.1 +- image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce +- # tag: quay.io/eclipse/che-server:7.25.1 +- - name: che-server-@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce +- image: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce +- # tag: quay.io/eclipse/che-server@sha256:3ab3664f942f68ac148df4dfaa4e3817bda6bcddcaa79441c1aadf6c1b1371ce ++ - name: che-python-3.7-@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ # tag: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ - name: che-python-3.8-@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ # tag: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ - name: che-quarkus-@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ # tag: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ - name: che-rust-1.39-@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 ++ image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 ++ # tag: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 ++ - name: che-server-7.25.2 ++ image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 ++ # tag: quay.io/eclipse/che-server:7.25.2 ++ - name: che-server-@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 ++ image: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 ++ # tag: quay.io/eclipse/che-server@sha256:5ad78983b667e2e6752aa29b3a9500eca480723f497e9bb753461c8c6a2fa441 + - 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:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- - name: che-theia-@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f +- image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f +- # tag: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f ++ - name: che-theia-endpoint-runtime-binary-@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ - name: che-theia-@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 ++ image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 ++ # tag: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 + - 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 +@@ -921,9 +911,9 @@ + - name: che-buildkit-base-0.7.1-bacb069 + image: quay.io/eclipse/che-buildkit-base@sha256:effa98dd2ced30b520b25afff1a880d121cf6b3f8ab42a5149eada46ba793ce9 + # tag: quay.io/eclipse/che-buildkit-base:0.7.1-bacb069 +- - name: che-machine-exec-7.25.1 +- image: quay.io/eclipse/che-machine-exec@sha256:ad6ed4044651639ce47350d11c3cefad408944f137c0e9aed79857a1d83c068a +- # tag: quay.io/eclipse/che-machine-exec:7.25.1 ++ - name: che-machine-exec-7.25.2 ++ image: quay.io/eclipse/che-machine-exec@sha256:90a6f2065410b35a7e32dbdca6913406cf38b41c005004c99f3bd7f635116632 ++ # tag: quay.io/eclipse/che-machine-exec:7.25.2 + - name: che-plugin-sidecar-asciidoc-5337f80 + image: quay.io/eclipse/che-plugin-sidecar@sha256:3a5f128b217625c211f69fd2277300ae611fcf7da287c2786e522f13a81ed701 + # tag: quay.io/eclipse/che-plugin-sidecar:asciidoc-5337f80 +@@ -951,9 +941,6 @@ + - name: che-plugin-sidecar-go-c939ba4 + image: quay.io/eclipse/che-plugin-sidecar@sha256:8615a29435b0256bffaf85ab2cf9327b059f14eaa6614346dfd51e3a6dd9f041 + # tag: quay.io/eclipse/che-plugin-sidecar:go-c939ba4 +- - name: che-plugin-sidecar-haskell-b64039f +- image: quay.io/eclipse/che-plugin-sidecar@sha256:d2cb8859dcbc8f6a6732006a36d09061554a6e9baad2ad4b1f480c111853ca10 +- # tag: quay.io/eclipse/che-plugin-sidecar:haskell-b64039f + - name: che-plugin-sidecar-java-b8f0528 + image: quay.io/eclipse/che-plugin-sidecar@sha256:70836fd2fc01198c1a31f44d0af9cdf2d7445035be54f0bc7ae2cbfe262e0231 + # tag: quay.io/eclipse/che-plugin-sidecar:java-b8f0528 +@@ -978,9 +965,6 @@ + - name: che-plugin-sidecar-python-2fcf341 + image: quay.io/eclipse/che-plugin-sidecar@sha256:64311210e710ca1614839f897285fc1d39b2ca17215d56c165d091aafd19a14b + # tag: quay.io/eclipse/che-plugin-sidecar:python-2fcf341 +- - name: che-plugin-sidecar-ruby-b64039f +- image: quay.io/eclipse/che-plugin-sidecar@sha256:f13c14336366d0a497ef440c478bf0763e96c6e39ee4f569f9fc412b0dec3ced +- # tag: quay.io/eclipse/che-plugin-sidecar:ruby-b64039f + - name: che-plugin-sidecar-rust-52f9e9a + image: quay.io/eclipse/che-plugin-sidecar@sha256:e374ec367447afea9b12f5a8f6690a6f993526408a3731f522a53e5d0bfc287f + # tag: quay.io/eclipse/che-plugin-sidecar:rust-52f9e9a +@@ -1002,12 +986,12 @@ + - name: che-sidecar-workspace-data-sync-0.0.1 + image: quay.io/eclipse/che-sidecar-workspace-data-sync@sha256:88d0125837d5a57cb24bb3ed81e6a8f4119a5043b7926bd2bd01710854c44f10 + # tag: quay.io/eclipse/che-sidecar-workspace-data-sync:0.0.1 +- - name: che-theia-endpoint-runtime-binary-7.25.1 +- image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:4a063336fb4bfb323c4533cd71fc2d08be063a089f201e050ad82554d673c914 +- # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.1 +- - name: che-theia-7.25.1 +- image: quay.io/eclipse/che-theia@sha256:116e3b195ef94ef1394a0303d85e8c260040a024fa9ff20bf046a6f30aa2043f +- # tag: quay.io/eclipse/che-theia:7.25.1 ++ - name: che-theia-endpoint-runtime-binary-7.25.2 ++ image: quay.io/eclipse/che-theia-endpoint-runtime-binary@sha256:c3b136d8dda3120b30a80bccedb4d7f5030325e40a946a3da9dba33656bc7650 ++ # tag: quay.io/eclipse/che-theia-endpoint-runtime-binary:7.25.2 ++ - name: che-theia-7.25.2 ++ image: quay.io/eclipse/che-theia@sha256:dd70ca1baa69b2c18520aaf2581b7e83028fb8444f617b3136c9df9a1bb481b0 ++ # tag: quay.io/eclipse/che-theia:7.25.2 + - name: mta-vscode-extension-latest + image: quay.io/windupeng/mta-vscode-extension@sha256:d362a2bded79134506a23f9a77498f5a7297df6cc9a3391447da8e1ba74eb6a5 + # tag: quay.io/windupeng/mta-vscode-extension:latest +@@ -1017,54 +1001,54 @@ + - 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.25.1 +- image: quay.io/eclipse/che-cpp-rhel7@sha256:14ae97821096a4586854df6984269ab20975a4b2e47fb6c8e60325dad403015c +- # tag: quay.io/eclipse/che-cpp-rhel7:7.25.1 +- - name: che-dotnet-2.2-7.25.1 +- image: quay.io/eclipse/che-dotnet-2.2@sha256:fe17864240810045474b181fd793b79e8fb53603b825f7bc635f23962f4318ba +- # tag: quay.io/eclipse/che-dotnet-2.2:7.25.1 +- - name: che-dotnet-3.1-7.25.1 +- image: quay.io/eclipse/che-dotnet-3.1@sha256:7817f03b4c13871ef93e3f44f02c840246682e12a4f31effdf7b9786cfd47699 +- # tag: quay.io/eclipse/che-dotnet-3.1:7.25.1 +- - name: che-golang-1.14-7.25.1 +- image: quay.io/eclipse/che-golang-1.14@sha256:cfd5f667ee273bfddeb3ec3bce5c54022a01cf4cfa8cb4654494cedbb49e86d8 +- # tag: quay.io/eclipse/che-golang-1.14:7.25.1 +- - name: che-java11-gradle-7.25.1 +- image: quay.io/eclipse/che-java11-gradle@sha256:1fcbd983f34fb024ba6da9ac31a65cee1b20472802037c9d518f0f6d31d71085 +- # tag: quay.io/eclipse/che-java11-gradle:7.25.1 +- - name: che-java11-maven-7.25.1 +- image: quay.io/eclipse/che-java11-maven@sha256:dffe6149ac5d3b160e14ce3e7bff915f6069b2803590d3ed075d0b18c84a0941 +- # tag: quay.io/eclipse/che-java11-maven:7.25.1 +- - name: che-java8-maven-7.25.1 +- image: quay.io/eclipse/che-java8-maven@sha256:26c211ed1e6445948449d554a837bf64fde11b4a6cca436aec9bc0b0fb5b7cd8 +- # tag: quay.io/eclipse/che-java8-maven:7.25.1 +- - name: che-nodejs10-community-7.25.1 +- image: quay.io/eclipse/che-nodejs10-community@sha256:0902e7227c0da3cb254aa7c8db37582d93a3680cd16d91aa386181573f0ae1ac +- # tag: quay.io/eclipse/che-nodejs10-community:7.25.1 +- - name: che-nodejs10-ubi-7.25.1 +- image: quay.io/eclipse/che-nodejs10-ubi@sha256:fdb8864bf47ed8cbeb15cfc7f86f9c4f67c8f1cdb64311f0dbae7eff4a25c7ee +- # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.1 +- - name: che-nodejs12-community-7.25.1 +- image: quay.io/eclipse/che-nodejs12-community@sha256:87b708d00ea737c0321ba7966982ce2dc2883704fe92defe96bcf2a65b96c2ea +- # tag: quay.io/eclipse/che-nodejs12-community:7.25.1 +- - name: che-nodejs8-centos-7.25.1 +- image: quay.io/eclipse/che-nodejs8-centos@sha256:74f68461213c708850d3323133ba86da11f02d4bf72f55a669532d4bd5f95f05 +- # tag: quay.io/eclipse/che-nodejs8-centos:7.25.1 +- - name: che-php-7-7.25.1 +- image: quay.io/eclipse/che-php-7@sha256:32735d669e9d3e90192e20ed6a83a6414b8861983857010ed2f7f03ab6eee353 +- # tag: quay.io/eclipse/che-php-7:7.25.1 +- - name: che-python-3.7-7.25.1 +- image: quay.io/eclipse/che-python-3.7@sha256:03a94ad565397b90c6ecb30f4eaa906fb0aea84578c864c36ba13ebdd4531516 +- # tag: quay.io/eclipse/che-python-3.7:7.25.1 +- - name: che-python-3.8-7.25.1 +- image: quay.io/eclipse/che-python-3.8@sha256:88534c569717fe25f4a86d6929003523cb096ca79a718925c61cb84e08d7dace +- # tag: quay.io/eclipse/che-python-3.8:7.25.1 +- - name: che-quarkus-7.25.1 +- image: quay.io/eclipse/che-quarkus@sha256:2a49fa6c706235277730ea8b67b3531c5e1a6a09d9e044cafb8f2c6b7bbbd580 +- # tag: quay.io/eclipse/che-quarkus:7.25.1 +- - name: che-rust-1.39-7.25.1 +- image: quay.io/eclipse/che-rust-1.39@sha256:b19cbb7fe9794a7a705dbc11be89020dc086ee0ab9774b0d7e689b2ae4181a5b +- # tag: quay.io/eclipse/che-rust-1.39:7.25.1 ++ - name: che-cpp-rhel7-7.25.2 ++ image: quay.io/eclipse/che-cpp-rhel7@sha256:a69a78586a52def2f030cf1648d7a77e4dbdd67228ff6a8bcb11ccbdc2180bbc ++ # tag: quay.io/eclipse/che-cpp-rhel7:7.25.2 ++ - name: che-dotnet-2.2-7.25.2 ++ image: quay.io/eclipse/che-dotnet-2.2@sha256:6d28148fbffa76ecbd7085a75d1f1ff4fba1f31df1dfbf2ba8ad0bbb3349520d ++ # tag: quay.io/eclipse/che-dotnet-2.2:7.25.2 ++ - name: che-dotnet-3.1-7.25.2 ++ image: quay.io/eclipse/che-dotnet-3.1@sha256:139588b061d051dad52a71c7f7e779da2d22d1fb6c3332ba30bee4307c4c3e2c ++ # tag: quay.io/eclipse/che-dotnet-3.1:7.25.2 ++ - name: che-golang-1.14-7.25.2 ++ image: quay.io/eclipse/che-golang-1.14@sha256:b41a561cfcd2b5fd62a80d600f7b547c9f155b010627e47eccde962ac4253794 ++ # tag: quay.io/eclipse/che-golang-1.14:7.25.2 ++ - name: che-java11-gradle-7.25.2 ++ image: quay.io/eclipse/che-java11-gradle@sha256:433546307e6b9cc4fa5c0eb54dd04a550e9c22f200503cd0caa0f51cfd28689f ++ # tag: quay.io/eclipse/che-java11-gradle:7.25.2 ++ - name: che-java11-maven-7.25.2 ++ image: quay.io/eclipse/che-java11-maven@sha256:dc3366db4a740606ba6ce5208f642ad0f8993ef38cfcc3c1215d3ea9e279ca2a ++ # tag: quay.io/eclipse/che-java11-maven:7.25.2 ++ - name: che-java8-maven-7.25.2 ++ image: quay.io/eclipse/che-java8-maven@sha256:f5784e53a598bf73f380a9873a571d686c817c57a2b09ad9e1581651a656b0d7 ++ # tag: quay.io/eclipse/che-java8-maven:7.25.2 ++ - name: che-nodejs10-community-7.25.2 ++ image: quay.io/eclipse/che-nodejs10-community@sha256:3ae6654f3855c20c4083e6462527fb7af5bfc50f55d8f95877fe50cd9c35d29a ++ # tag: quay.io/eclipse/che-nodejs10-community:7.25.2 ++ - name: che-nodejs10-ubi-7.25.2 ++ image: quay.io/eclipse/che-nodejs10-ubi@sha256:67ed65f29c6ffc44c7fc401c4d9e7b5266ba9301173923e0083e0b468812b91f ++ # tag: quay.io/eclipse/che-nodejs10-ubi:7.25.2 ++ - name: che-nodejs12-community-7.25.2 ++ image: quay.io/eclipse/che-nodejs12-community@sha256:e0a180f53041b2f2b0e432082351a301dc6eb1c02ff96cc946a342c4e1edf53e ++ # tag: quay.io/eclipse/che-nodejs12-community:7.25.2 ++ - name: che-nodejs8-centos-7.25.2 ++ image: quay.io/eclipse/che-nodejs8-centos@sha256:8d5e3b93bb5fcdb47149038bed53ceee9f3cf9063b8ee6dba76ab8d93d8d95c0 ++ # tag: quay.io/eclipse/che-nodejs8-centos:7.25.2 ++ - name: che-php-7-7.25.2 ++ image: quay.io/eclipse/che-php-7@sha256:1701391313dfbcafca5946586b9a4915faa2bdf6c32b1837a8021524bdfc9029 ++ # tag: quay.io/eclipse/che-php-7:7.25.2 ++ - name: che-python-3.7-7.25.2 ++ image: quay.io/eclipse/che-python-3.7@sha256:d971f85f68b004a3245d3b75361cceddf4dae6055168d3d177b0cd7e04ad04a3 ++ # tag: quay.io/eclipse/che-python-3.7:7.25.2 ++ - name: che-python-3.8-7.25.2 ++ image: quay.io/eclipse/che-python-3.8@sha256:9192bdb4c7e660b71f7ab30d8782b5bc0ef7319bac25d53574be39664c735eb4 ++ # tag: quay.io/eclipse/che-python-3.8:7.25.2 ++ - name: che-quarkus-7.25.2 ++ image: quay.io/eclipse/che-quarkus@sha256:09f6332964ad28d0b70eb1b0126f8b8635a3faa498eb90cd4909f929de5e1e24 ++ # tag: quay.io/eclipse/che-quarkus:7.25.2 ++ - name: che-rust-1.39-7.25.2 ++ image: quay.io/eclipse/che-rust-1.39@sha256:04ae0e0fbf3eab860159d7c601ae2f5f037bc12f6e48e96d97b0d683525aaed6 ++ # tag: quay.io/eclipse/che-rust-1.39:7.25.2 + - name: ubi8-minimal-8.3 + image: registry.access.redhat.com/ubi8-minimal@sha256:4b9899b5c2906aae8e8fcd1012a5949e98bda68192c5e7bf6c1e171686c97d7a + # tag: registry.access.redhat.com/ubi8-minimal:8.3 diff --git a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml index f030af01e..dc3fe43cd 100644 --- a/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml +++ b/olm/eclipse-che-preview-openshift/deploy/olm-catalog/eclipse-che-preview-openshift/eclipse-che-preview-openshift.package.yaml @@ -1,5 +1,5 @@ channels: -- currentCSV: eclipse-che-preview-openshift.v7.25.1 +- currentCSV: eclipse-che-preview-openshift.v7.25.2 name: stable defaultChannel: stable packageName: eclipse-che-preview-openshift From 4ee509e08b1fadcf6550f6b0f6a70360b0bc1d5e Mon Sep 17 00:00:00 2001 From: Oleksandr Andriienko Date: Mon, 8 Feb 2021 09:56:53 +0200 Subject: [PATCH 8/8] CHE-15493: -che as default namespace (#166) * Set -che as default namespace for Che workspaces Signed-off-by: Oleksandr Andriienko Co-authored-by: Michal Vala Co-authored-by: Anatolii Bazko --- README.md | 32 +- cmd/manager/main.go | 7 +- cmd/manager/signal/signal_handler.go | 94 ++++ deploy/cluster_role.yaml | 183 ++++++++ deploy/crds/org_v1_che_cr.yaml | 2 +- deploy/namespaces_cluster_role.yaml | 2 + .../che-operator.clusterserviceversion.yaml | 161 ++++++- .../che-operator.clusterserviceversion.yaml | 199 ++++++++- deploy/operator.yaml | 2 +- deploy/role.yaml | 4 +- go.mod | 1 + go.sum | 1 + mocks/permission_checker_mock.go | 49 ++ pkg/controller/che/che_controller.go | 131 +++--- pkg/controller/che/che_controller_test.go | 417 ++++++++++++++--- .../che/cluster_permissions_finalizer.go | 66 +++ pkg/controller/che/finalizer.go | 5 +- pkg/controller/che/permission_checker.go | 61 +++ pkg/controller/che/update.go | 2 +- .../che/workspace_namespace_permission.go | 378 ++++++++++++++++ pkg/deploy/clusterrole.go | 110 +++++ pkg/deploy/clusterrolebinding.go | 18 +- pkg/deploy/role.go | 29 +- pkg/deploy/rolebinding.go | 15 + pkg/deploy/server/che_configmap.go | 13 +- pkg/util/k8s_helpers.go | 16 + pkg/util/util.go | 23 +- vendor/github.com/golang/mock/AUTHORS | 12 + vendor/github.com/golang/mock/CONTRIBUTORS | 37 ++ vendor/github.com/golang/mock/LICENSE | 202 +++++++++ vendor/github.com/golang/mock/gomock/call.go | 420 ++++++++++++++++++ .../github.com/golang/mock/gomock/callset.go | 108 +++++ .../golang/mock/gomock/controller.go | 264 +++++++++++ .../github.com/golang/mock/gomock/matchers.go | 141 ++++++ vendor/modules.txt | 3 +- .../pkg/manager/signals/doc.go | 20 - .../pkg/manager/signals/signal.go | 43 -- .../pkg/manager/signals/signal_posix.go | 26 -- .../pkg/manager/signals/signal_windows.go | 23 - 39 files changed, 3022 insertions(+), 298 deletions(-) create mode 100644 cmd/manager/signal/signal_handler.go create mode 100644 mocks/permission_checker_mock.go create mode 100644 pkg/controller/che/cluster_permissions_finalizer.go create mode 100644 pkg/controller/che/permission_checker.go create mode 100644 pkg/controller/che/workspace_namespace_permission.go create mode 100644 pkg/deploy/clusterrole.go create mode 100644 vendor/github.com/golang/mock/AUTHORS create mode 100644 vendor/github.com/golang/mock/CONTRIBUTORS create mode 100644 vendor/github.com/golang/mock/LICENSE create mode 100644 vendor/github.com/golang/mock/gomock/call.go create mode 100644 vendor/github.com/golang/mock/gomock/callset.go create mode 100644 vendor/github.com/golang/mock/gomock/controller.go create mode 100644 vendor/github.com/golang/mock/gomock/matchers.go delete mode 100644 vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/doc.go delete mode 100644 vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal.go delete mode 100644 vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_posix.go delete mode 100644 vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_windows.go diff --git a/README.md b/README.md index 5ed362159..a2c690910 100644 --- a/README.md +++ b/README.md @@ -154,10 +154,35 @@ spec: CHE_MULTIUSER: "false" ``` -``` +```bash $ chectl server:update -n --che-operator-cr-patch-yaml ``` +### Workspace namespace strategy + +Workspace namespace strategy defines default namespace in which user's workspaces are created. +It's possible to use , and placeholders (e.g.: che-workspace-). +In that case, new namespace will be created for each user (or workspace). +For OpenShift infrastructure this property used to specify Project (instead of namespace conception). + +To set up namespace workspace strategy use command line: + +```bash +$ kubectl patch checluster/eclipse-che -n --type=merge -p '{"spec":{"server": {"customCheProperties": {"CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT": "che-workspace-"}}}}' +``` + +or create `cr-patch.yaml` and use it with chectl: + +```yaml +spec: + server: + customCheProperties: + CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT: "che-workspace-" +``` + +```bash +$ chectl server:update -n --che-operator-cr-patch-yaml + ### OpenShift OAuth OpenShift clusters include a built-in OAuth server. Che operator supports this authentication method. It's enabled by default. @@ -176,7 +201,7 @@ spec: openShiftoAuth: false ``` -``` +```bash $ chectl server:update -n --che-operator-cr-patch-yaml ``` @@ -196,7 +221,7 @@ spec: tlsSupport: false ``` -``` +```bash $ chectl server:update -n --che-operator-cr-patch-yaml ``` @@ -292,6 +317,7 @@ Run the VSCode task: `Format che-operator code` or use the terminal: ```bash $ go fmt ./... ``` +> Notice: if you don't have redhat subscription, use public image registry.access.redhat.com/devtools/go-toolset-rhel7:latest ### Update golang dependencies diff --git a/cmd/manager/main.go b/cmd/manager/main.go index 496bd0bcc..3ed8c8218 100644 --- a/cmd/manager/main.go +++ b/cmd/manager/main.go @@ -15,10 +15,12 @@ import ( "context" "flag" "fmt" + "os" "runtime" image_puller_api "github.com/che-incubator/kubernetes-image-puller-operator/pkg/apis" + "github.com/eclipse/che-operator/cmd/manager/signal" "github.com/eclipse/che-operator/pkg/util" operatorsv1 "github.com/operator-framework/api/pkg/operators/v1" operatorsv1alpha1 "github.com/operator-framework/api/pkg/operators/v1alpha1" @@ -37,7 +39,6 @@ import ( "sigs.k8s.io/controller-runtime/pkg/client/config" "sigs.k8s.io/controller-runtime/pkg/healthz" "sigs.k8s.io/controller-runtime/pkg/manager" - "sigs.k8s.io/controller-runtime/pkg/manager/signals" ) var ( @@ -170,7 +171,9 @@ func main() { logrus.Info("Starting the Cmd") // Start the Cmd - if err := mgr.Start(signals.SetupSignalHandler()); err != nil { + period := signal.GetTerminationGracePeriodSeconds(mgr.GetAPIReader(), namespace) + logrus.Info("Create manager") + if err := mgr.Start(signal.SetupSignalHandler(period)); err != nil { logrus.Error(err, "Manager exited non-zero") os.Exit(1) } diff --git a/cmd/manager/signal/signal_handler.go b/cmd/manager/signal/signal_handler.go new file mode 100644 index 000000000..7d0e07bee --- /dev/null +++ b/cmd/manager/signal/signal_handler.go @@ -0,0 +1,94 @@ +// +// 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 +// + +package signal + +import ( + "context" + "os" + "os/signal" + "syscall" + "time" + + "github.com/sirupsen/logrus" + appsv1 "k8s.io/api/apps/v1" + "k8s.io/apimachinery/pkg/types" + "sigs.k8s.io/controller-runtime/pkg/client" +) + +// SetupSignalHandler set up custom signal handler for main process. +func SetupSignalHandler(terminationPeriod int64) (stopCh <-chan struct{}) { + logrus.Info("Set up process signal handler") + var shutdownSignals = []os.Signal{os.Interrupt, syscall.SIGTERM, syscall.SIGINT} + + stop := make(chan struct{}) + c := make(chan os.Signal, 1) + signal.Notify(c, shutdownSignals...) + go func() { + sig := <-c + printSignal(sig) + + // We need provide more time for Che controller go routing to complete finalizers logic. + // Otherwise resource won't be clean up gracefully + // and Che custom resource will stay with non empty "finalizers" field. + time.Sleep(time.Duration(terminationPeriod) * time.Second) + logrus.Info("Stop and exit operator.") + // Stop Che controller + close(stop) + // Exit from main process directly. + os.Exit(1) + }() + + return stop +} + +func printSignal(signal os.Signal) { + switch signal { + case syscall.SIGHUP: + logrus.Info("Signal SIGHUP") + + case syscall.SIGINT: + logrus.Println("Signal SIGINT (ctrl+c)") + + case syscall.SIGTERM: + logrus.Println("Signal SIGTERM stop") + + case syscall.SIGQUIT: + logrus.Println("Signal SIGQUIT (top and core dump)") + + default: + logrus.Println("Unknown signal") + } +} + +func GetTerminationGracePeriodSeconds(k8sClient client.Reader, namespace string) int64 { + cheFlavor := os.Getenv("CHE_FLAVOR") + if cheFlavor == "" { + cheFlavor = "che" + } + defaultTerminationGracePeriodSeconds := int64(20) + + deployment := &appsv1.Deployment{} + namespacedName := types.NamespacedName{Namespace: namespace, Name: cheFlavor + "-operator"} + if err := k8sClient.Get(context.TODO(), namespacedName, deployment); err != nil { + logrus.Warnf("Unable to find '%s' deployment in namespace '%s', err: %s", cheFlavor+"-operator", namespace, err.Error()) + } else { + terminationPeriod := deployment.Spec.Template.Spec.TerminationGracePeriodSeconds + if terminationPeriod != nil { + logrus.Infof("Use 'terminationGracePeriodSeconds' %d sec. from operator deployment.", *terminationPeriod) + return *terminationPeriod + } + } + + logrus.Infof("Use default 'terminationGracePeriodSeconds' %d sec.", defaultTerminationGracePeriodSeconds) + return defaultTerminationGracePeriodSeconds +} diff --git a/deploy/cluster_role.yaml b/deploy/cluster_role.yaml index 9680258a0..61c036f26 100644 --- a/deploy/cluster_role.yaml +++ b/deploy/cluster_role.yaml @@ -65,3 +65,186 @@ rules: - create - watch - update + - get + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + verbs: + - list + - create + - watch + - update + - get + - delete + - apiGroups: + - authorization.openshift.io + resources: + - roles + verbs: + - get + - create + - delete + - apiGroups: + - authorization.openshift.io + resources: + - rolebindings + verbs: + - get + - create + - update + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + verbs: + - get + - create + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - rolebindings + verbs: + - get + - create + - update + - delete + - apiGroups: + - org.eclipse.che + resources: + - checlusters + - checlusters/finalizers + verbs: + - '*' + - apiGroups: + - project.openshift.io + resources: + - projectrequests + verbs: + - create + - update + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - create + - update + - apiGroups: + - project.openshift.io + resources: + - projects + verbs: + - get + - apiGroups: + - '' + resources: + - serviceaccounts + verbs: + - get + - create + - watch + - apiGroups: + - '' + resources: + - pods/exec + verbs: + - create + - apiGroups: + - apps + resources: + - secrets + verbs: + - list + - apiGroups: + - '' + resources: + - secrets + verbs: + - list + - create + - delete + - apiGroups: + - '' + resources: + - persistentvolumeclaims + verbs: + - create + - get + - list + - watch + - apiGroups: + - '' + resources: + - pods + verbs: + - get + - list + - create + - watch + - delete + - apiGroups: + - apps + resources: + - deployments + verbs: + - get + - list + - create + - patch + - watch + - delete + - apiGroups: + - '' + resources: + - services + verbs: + - list + - create + - delete + - apiGroups: + - '' + resources: + - configmaps + verbs: + - get + - create + - delete + - list + - apiGroups: + - route.openshift.io + resources: + - routes + verbs: + - list + - create + - delete + - apiGroups: + - '' + resources: + - events + verbs: + - watch + - apiGroups: + - apps + resources: + - replicasets + verbs: + - list + - get + - patch + - delete + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - list + - create + - watch + - get + - delete diff --git a/deploy/crds/org_v1_che_cr.yaml b/deploy/crds/org_v1_che_cr.yaml index 5dbd12365..7250284a6 100644 --- a/deploy/crds/org_v1_che_cr.yaml +++ b/deploy/crds/org_v1_che_cr.yaml @@ -59,7 +59,7 @@ spec: # sets mem limit for server deployment. Defaults to 1Gi serverMemoryLimit: '' # sets default namespace where new workspaces will be created - workspaceNamespaceDefault: '' + workspaceNamespaceDefault: "-che" # defines if user is able to specify namespace different from the default allowUserDefinedWorkspaceNamespaces: false # Sets the server and workspaces exposure type. Possible values are "multi-host", "single-host", "default-host". diff --git a/deploy/namespaces_cluster_role.yaml b/deploy/namespaces_cluster_role.yaml index 984e563d7..389fae43f 100644 --- a/deploy/namespaces_cluster_role.yaml +++ b/deploy/namespaces_cluster_role.yaml @@ -23,4 +23,6 @@ rules: - namespaces verbs: - update + - list + - create - get diff --git a/deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml b/deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml index 60bf5068a..dbf21eee1 100644 --- a/deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml +++ b/deploy/olm-catalog/eclipse-che-preview-kubernetes/manifests/che-operator.clusterserviceversion.yaml @@ -67,7 +67,7 @@ metadata: "singleHostGatewayImage": "", "tlsSupport": true, "useInternalClusterSVCNames": true, - "workspaceNamespaceDefault": "" + "workspaceNamespaceDefault": "-che" }, "storage": { "postgresPVCStorageClassName": "", @@ -84,13 +84,13 @@ metadata: categories: Developer Tools certified: "false" containerImage: quay.io/eclipse/che-operator:nightly - createdAt: "2021-01-28T11:15:38Z" + createdAt: "2021-02-05T00:59:18Z" 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.0-82.nightly + name: eclipse-che-preview-kubernetes.v7.26.0-88.nightly namespace: placeholder spec: apiservicedefinitions: {} @@ -274,6 +274,151 @@ spec: - create - watch - update + - get + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + verbs: + - list + - create + - watch + - update + - get + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + verbs: + - get + - create + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - rolebindings + verbs: + - get + - create + - update + - delete + - apiGroups: + - org.eclipse.che + resources: + - checlusters + - checlusters/finalizers + verbs: + - '*' + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - create + - update + - apiGroups: + - "" + resources: + - serviceaccounts + verbs: + - get + - create + - watch + - apiGroups: + - "" + resources: + - pods/exec + verbs: + - create + - apiGroups: + - apps + resources: + - secrets + verbs: + - list + - apiGroups: + - "" + resources: + - secrets + verbs: + - list + - create + - delete + - apiGroups: + - "" + resources: + - persistentvolumeclaims + verbs: + - create + - get + - list + - watch + - apiGroups: + - "" + resources: + - pods + verbs: + - get + - list + - create + - watch + - delete + - apiGroups: + - apps + resources: + - deployments + verbs: + - get + - list + - create + - patch + - watch + - delete + - apiGroups: + - "" + resources: + - services + verbs: + - list + - create + - delete + - apiGroups: + - "" + resources: + - configmaps + verbs: + - get + - create + - delete + - list + - apiGroups: + - "" + resources: + - events + verbs: + - watch + - apiGroups: + - apps + resources: + - replicasets + verbs: + - list + - get + - patch + - delete + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - list + - create + - watch + - get + - delete serviceAccountName: che-operator - rules: - apiGroups: @@ -282,6 +427,8 @@ spec: - namespaces verbs: - update + - list + - create - get serviceAccountName: che-namespace-editor deployments: @@ -398,7 +545,7 @@ spec: - ALL restartPolicy: Always serviceAccountName: che-operator - terminationGracePeriodSeconds: 5 + terminationGracePeriodSeconds: 20 permissions: - rules: - apiGroups: @@ -464,7 +611,9 @@ spec: - apiGroups: - org.eclipse.che resources: - - '*' + - checlusters + - checlusters/status + - checlusters/finalizers verbs: - '*' - apiGroups: @@ -528,4 +677,4 @@ spec: maturity: stable provider: name: Eclipse Foundation - version: 7.26.0-82.nightly + version: 7.26.0-88.nightly diff --git a/deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml b/deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml index ad6073000..3f47b68fc 100644 --- a/deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml +++ b/deploy/olm-catalog/eclipse-che-preview-openshift/manifests/che-operator.clusterserviceversion.yaml @@ -58,7 +58,7 @@ metadata: "singleHostGatewayImage": "", "tlsSupport": true, "useInternalClusterSVCNames": true, - "workspaceNamespaceDefault": "" + "workspaceNamespaceDefault": "-che" }, "storage": { "postgresPVCStorageClassName": "", @@ -75,13 +75,13 @@ metadata: categories: Developer Tools, OpenShift Optional certified: "false" containerImage: quay.io/eclipse/che-operator:nightly - createdAt: "2021-01-28T11:15:46Z" + createdAt: "2021-02-05T00:59:26Z" 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.0-82.nightly + name: eclipse-che-preview-openshift.v7.26.0-88.nightly namespace: placeholder spec: apiservicedefinitions: {} @@ -289,6 +289,189 @@ spec: - create - watch - update + - get + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - clusterroles + verbs: + - list + - create + - watch + - update + - get + - delete + - apiGroups: + - authorization.openshift.io + resources: + - roles + verbs: + - get + - create + - delete + - apiGroups: + - authorization.openshift.io + resources: + - rolebindings + verbs: + - get + - create + - update + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - roles + verbs: + - get + - create + - delete + - apiGroups: + - rbac.authorization.k8s.io + resources: + - rolebindings + verbs: + - get + - create + - update + - delete + - apiGroups: + - org.eclipse.che + resources: + - checlusters + - checlusters/finalizers + verbs: + - '*' + - apiGroups: + - project.openshift.io + resources: + - projectrequests + verbs: + - create + - update + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - create + - update + - apiGroups: + - project.openshift.io + resources: + - projects + verbs: + - get + - apiGroups: + - "" + resources: + - serviceaccounts + verbs: + - get + - create + - watch + - apiGroups: + - "" + resources: + - pods/exec + verbs: + - create + - apiGroups: + - apps + resources: + - secrets + verbs: + - list + - apiGroups: + - "" + resources: + - secrets + verbs: + - list + - create + - delete + - apiGroups: + - "" + resources: + - persistentvolumeclaims + verbs: + - create + - get + - list + - watch + - apiGroups: + - "" + resources: + - pods + verbs: + - get + - list + - create + - watch + - delete + - apiGroups: + - apps + resources: + - deployments + verbs: + - get + - list + - create + - patch + - watch + - delete + - apiGroups: + - "" + resources: + - services + verbs: + - list + - create + - delete + - apiGroups: + - "" + resources: + - configmaps + verbs: + - get + - create + - delete + - list + - apiGroups: + - route.openshift.io + resources: + - routes + verbs: + - list + - create + - delete + - apiGroups: + - "" + resources: + - events + verbs: + - watch + - apiGroups: + - apps + resources: + - replicasets + verbs: + - list + - get + - patch + - delete + - apiGroups: + - extensions + resources: + - ingresses + verbs: + - list + - create + - watch + - get + - delete serviceAccountName: che-operator - rules: - apiGroups: @@ -297,6 +480,8 @@ spec: - namespaces verbs: - update + - list + - create - get serviceAccountName: che-namespace-editor deployments: @@ -411,7 +596,7 @@ spec: - ALL restartPolicy: Always serviceAccountName: che-operator - terminationGracePeriodSeconds: 5 + terminationGracePeriodSeconds: 20 permissions: - rules: - apiGroups: @@ -484,7 +669,9 @@ spec: - apiGroups: - org.eclipse.che resources: - - '*' + - checlusters + - checlusters/status + - checlusters/finalizers verbs: - '*' - apiGroups: @@ -547,4 +734,4 @@ spec: maturity: stable provider: name: Eclipse Foundation - version: 7.26.0-82.nightly + version: 7.26.0-88.nightly diff --git a/deploy/operator.yaml b/deploy/operator.yaml index 4c8dabe87..0d4592bce 100644 --- a/deploy/operator.yaml +++ b/deploy/operator.yaml @@ -123,4 +123,4 @@ spec: cpu: 500m restartPolicy: Always serviceAccountName: che-operator - terminationGracePeriodSeconds: 5 + terminationGracePeriodSeconds: 20 diff --git a/deploy/role.yaml b/deploy/role.yaml index 3dfa7a39f..83fd400f5 100644 --- a/deploy/role.yaml +++ b/deploy/role.yaml @@ -88,7 +88,9 @@ rules: - apiGroups: - org.eclipse.che resources: - - '*' + - checlusters + - checlusters/status + - checlusters/finalizers verbs: - '*' - apiGroups: diff --git a/go.mod b/go.mod index 92a678288..c47f5db21 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,7 @@ go 1.13 require ( github.com/che-incubator/kubernetes-image-puller-operator v0.0.0-20200901231735-f852a5a3ea5c + github.com/golang/mock v1.3.1 github.com/google/go-cmp v0.4.0 github.com/openshift/api v3.9.1-0.20190924102528-32369d4db2ad+incompatible github.com/operator-framework/api v0.3.20 diff --git a/go.sum b/go.sum index 2ce30314e..df02cbff7 100644 --- a/go.sum +++ b/go.sum @@ -343,6 +343,7 @@ github.com/golang/groupcache v0.0.0-20191027212112-611e8accdfc9/go.mod h1:cIg4er github.com/golang/lint v0.0.0-20180702182130-06c8688daad7/go.mod h1:tluoj9z5200jBnyusfRPU2LqT6J+DAorxEvtC7LHB+E= github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.3.1 h1:qGJ6qTW+x6xX/my+8YUVl4WNpX9B7+/l2tRsHGZ7f2s= github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= github.com/golang/protobuf v0.0.0-20161109072736-4bd1920723d7/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= github.com/golang/protobuf v1.0.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= diff --git a/mocks/permission_checker_mock.go b/mocks/permission_checker_mock.go new file mode 100644 index 000000000..390a11d5e --- /dev/null +++ b/mocks/permission_checker_mock.go @@ -0,0 +1,49 @@ +// Code generated by MockGen. DO NOT EDIT. +// Source: pkg/controller/che/permission_checker.go + +// Package mock_che is a generated GoMock package. +package mock_che + +import ( + gomock "github.com/golang/mock/gomock" + v1 "k8s.io/api/rbac/v1" + reflect "reflect" +) + +// MockPermissionChecker is a mock of PermissionChecker interface +type MockPermissionChecker struct { + ctrl *gomock.Controller + recorder *MockPermissionCheckerMockRecorder +} + +// MockPermissionCheckerMockRecorder is the mock recorder for MockPermissionChecker +type MockPermissionCheckerMockRecorder struct { + mock *MockPermissionChecker +} + +// NewMockPermissionChecker creates a new mock instance +func NewMockPermissionChecker(ctrl *gomock.Controller) *MockPermissionChecker { + mock := &MockPermissionChecker{ctrl: ctrl} + mock.recorder = &MockPermissionCheckerMockRecorder{mock} + return mock +} + +// EXPECT returns an object that allows the caller to indicate expected use +func (m *MockPermissionChecker) EXPECT() *MockPermissionCheckerMockRecorder { + return m.recorder +} + +// GetNotPermittedPolicyRules mocks base method +func (m *MockPermissionChecker) GetNotPermittedPolicyRules(policies []v1.PolicyRule, namespace string) ([]v1.PolicyRule, error) { + m.ctrl.T.Helper() + ret := m.ctrl.Call(m, "GetNotPermittedPolicyRules", policies, namespace) + ret0, _ := ret[0].([]v1.PolicyRule) + ret1, _ := ret[1].(error) + return ret0, ret1 +} + +// GetNotPermittedPolicyRules indicates an expected call of GetNotPermittedPolicyRules +func (mr *MockPermissionCheckerMockRecorder) GetNotPermittedPolicyRules(policies, namespace interface{}) *gomock.Call { + mr.mock.ctrl.T.Helper() + return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNotPermittedPolicyRules", reflect.TypeOf((*MockPermissionChecker)(nil).GetNotPermittedPolicyRules), policies, namespace) +} diff --git a/pkg/controller/che/che_controller.go b/pkg/controller/che/che_controller.go index d2a6ebce9..e65cd56ae 100644 --- a/pkg/controller/che/che_controller.go +++ b/pkg/controller/che/che_controller.go @@ -77,10 +77,11 @@ func newReconciler(mgr manager.Manager) (reconcile.Reconciler, error) { return nil, err } return &ReconcileChe{ - client: mgr.GetClient(), - nonCachedClient: noncachedClient, - scheme: mgr.GetScheme(), - discoveryClient: discoveryClient, + client: mgr.GetClient(), + nonCachedClient: noncachedClient, + scheme: mgr.GetScheme(), + discoveryClient: discoveryClient, + permissionChecker: &K8sApiPermissionChecker{}, }, nil } @@ -259,8 +260,15 @@ func add(mgr manager.Manager, r reconcile.Reconciler) error { return nil } -var _ reconcile.Reconciler = &ReconcileChe{} -var oAuthFinalizerName = "oauthclients.finalizers.che.eclipse.org" +var ( + _ reconcile.Reconciler = &ReconcileChe{} + + oAuthFinalizerName = "oauthclients.finalizers.che.eclipse.org" + cheWorkspacesClusterPermissionsFinalizerName = "cheWorkspaces.clusterpermissions.finalizers.che.eclipse.org" + + // CheServiceAccountName - service account name for che-server. + CheServiceAccountName = "che" +) // ReconcileChe reconciles a CheCluster object type ReconcileChe struct { @@ -274,9 +282,10 @@ type ReconcileChe struct { nonCachedClient client.Client // A discovery client to check for the existence of certain APIs registered // in the API Server - discoveryClient discovery.DiscoveryInterface - scheme *runtime.Scheme - tests bool + discoveryClient discovery.DiscoveryInterface + scheme *runtime.Scheme + permissionChecker PermissionChecker + tests bool } const ( @@ -330,6 +339,9 @@ func (r *ReconcileChe) Reconcile(request reconcile.Request) (reconcile.Result, e return reconcile.Result{}, err } } + if r.reconcileWorkspacePermissionsFinalizer(instance, deployContext); err != nil { + return reconcile.Result{}, err + } // Reconcile the imagePuller section of the CheCluster imagePullerResult, err := deploy.ReconcileImagePuller(deployContext) @@ -535,10 +547,10 @@ func (r *ReconcileChe) Reconcile(request reconcile.Request) (reconcile.Result, e return reconcile.Result{}, err } - // create service accounts: - // che is the one which token is used to create workspace objects - // che-workspace is SA used by plugins like exec and terminal with limited privileges - cheSA, err := deploy.SyncServiceAccountToCluster(deployContext, "che") + // Create service account "che" for che-server component. + // "che" is the one which token is used to create workspace objects. + // Notice: Also we have on more "che-workspace" SA used by plugins like exec, terminal, metrics with limited privileges. + cheSA, err := deploy.SyncServiceAccountToCluster(deployContext, CheServiceAccountName) if cheSA == nil { logrus.Info("Waiting on service account 'che' to be created") if err != nil { @@ -549,49 +561,50 @@ func (r *ReconcileChe) Reconcile(request reconcile.Request) (reconcile.Result, e } } - cheWorkspaceSA, err := deploy.SyncServiceAccountToCluster(deployContext, "che-workspace") - if cheWorkspaceSA == nil { - logrus.Info("Waiting on service account 'che-workspace' to be created") + if !util.IsOAuthEnabled(instance) && !util.IsWorkspaceInSameNamespaceWithChe(instance) { + clusterRole, err := deploy.GetClusterRole(CheWorkspacesClusterRoleNameTemplate, deployContext.ClusterAPI.Client) if err != nil { logrus.Error(err) - } - if !tests { return reconcile.Result{RequeueAfter: time.Second}, err } + if clusterRole == nil { + policies := append(getCheWorkspacesNamespacePolicy(), getCheWorkspacesPolicy()...) + deniedRules, err := r.permissionChecker.GetNotPermittedPolicyRules(policies, "") + if err != nil { + logrus.Error(err) + return reconcile.Result{RequeueAfter: time.Second}, err + } + // fall back to the "narrower" workspace namespace strategy + if len(deniedRules) > 0 { + logrus.Warnf("Not enough permissions to start a workspace in dedicated namespace. Denied policies: %v", deniedRules) + logrus.Warnf("Fall back to '%s' namespace for workspaces.", instance.Namespace) + delete(instance.Spec.Server.CustomCheProperties, "CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT") + instance.Spec.Server.WorkspaceNamespaceDefault = instance.Namespace + r.UpdateCheCRSpec(instance, "Default namespace for workspaces", instance.Namespace); + if err != nil { + logrus.Error(err) + return reconcile.Result{RequeueAfter: time.Second * 1}, err + } + } else { + reconcileResult, err := r.delegateWorkspacePermissionsInTheDifferNamespaceThanChe(instance, deployContext) + if err != nil { + logrus.Error(err) + return reconcile.Result{RequeueAfter: time.Second}, err + } + if reconcileResult.Requeue { + return reconcileResult, err + } + } + } } - // create exec role for CheCluster server and workspaces - execRole, err := deploy.SyncExecRoleToCluster(deployContext) - if execRole == nil { - logrus.Info("Waiting on role 'exec' to be created") + if util.IsOAuthEnabled(instance) || util.IsWorkspaceInSameNamespaceWithChe(instance) { + reconcile, err := r.delegateWorkspacePermissionsInTheSameNamespaceWithChe(deployContext) if err != nil { logrus.Error(err) } - if !tests { - return reconcile.Result{RequeueAfter: time.Second}, err - } - } - - // create view role for CheCluster server and workspaces - viewRole, err := deploy.SyncViewRoleToCluster(deployContext) - if viewRole == nil { - logrus.Info("Waiting on role 'view' to be created") - if err != nil { - logrus.Error(err) - } - if !tests { - return reconcile.Result{RequeueAfter: time.Second}, err - } - } - - cheRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, "che", "che", "edit", "ClusterRole") - if cheRoleBinding == nil { - logrus.Info("Waiting on role binding 'che' to be created") - if err != nil { - logrus.Error(err) - } - if !tests { - return reconcile.Result{RequeueAfter: time.Second}, err + if reconcile.Requeue && !tests { + return reconcile, err } } @@ -613,28 +626,6 @@ func (r *ReconcileChe) Reconcile(request reconcile.Request) (reconcile.Result, e } } - cheWSExecRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, "che-workspace-exec", "che-workspace", "exec", "Role") - if cheWSExecRoleBinding == nil { - logrus.Info("Waiting on role binding 'che-workspace-exec' to be created") - if err != nil { - logrus.Error(err) - } - if !tests { - return reconcile.Result{RequeueAfter: time.Second}, err - } - } - - cheWSViewRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, "che-workspace-view", "che-workspace", "view", "Role") - if cheWSViewRoleBinding == nil { - logrus.Info("Waiting on role binding 'che-workspace-view' to be created") - if err != nil { - logrus.Error(err) - } - if !tests { - return reconcile.Result{RequeueAfter: time.Second}, err - } - } - // If the user specified an additional cluster role to use for the Che workspace, create a role binding for it // Use a role binding instead of a cluster role binding to keep the additional access scoped to the workspace's namespace workspaceClusterRole := instance.Spec.Server.CheWorkspaceClusterRole @@ -950,7 +941,7 @@ func (r *ReconcileChe) Reconcile(request reconcile.Request) (reconcile.Result, e deleted, err := r.ReconcileIdentityProvider(instance, isOpenShift4) if deleted { for { - if err := r.DeleteFinalizer(instance); err != nil && + if err := r.DeleteOAuthFinalizer(instance); err != nil && errors.IsConflict(err) { instance, _ = r.GetCR(request) continue diff --git a/pkg/controller/che/che_controller_test.go b/pkg/controller/che/che_controller_test.go index 605e3dda1..b95ada461 100644 --- a/pkg/controller/che/che_controller_test.go +++ b/pkg/controller/che/che_controller_test.go @@ -14,6 +14,7 @@ package che import ( "context" "fmt" + mocks "github.com/eclipse/che-operator/mocks" "io/ioutil" "os" @@ -22,6 +23,7 @@ import ( chev1alpha1 "github.com/che-incubator/kubernetes-image-puller-operator/pkg/apis/che/v1alpha1" identity_provider "github.com/eclipse/che-operator/pkg/deploy/identity-provider" + "github.com/golang/mock/gomock" "github.com/google/go-cmp/cmp" "github.com/eclipse/che-operator/pkg/deploy" @@ -41,8 +43,8 @@ import ( "github.com/sirupsen/logrus" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" + rbac "k8s.io/api/rbac/v1" - rbacapi "k8s.io/api/rbac/v1" "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" @@ -185,6 +187,7 @@ var ( }, }, } + route = &routev1.Route{} ) func init() { @@ -340,6 +343,7 @@ func TestCaseAutoDetectOAuth(t *testing.T) { scheme.AddKnownTypes(oauth.SchemeGroupVersion, oAuthClient) scheme.AddKnownTypes(userv1.SchemeGroupVersion, &userv1.UserList{}, &userv1.User{}) scheme.AddKnownTypes(oauth_config.SchemeGroupVersion, &oauth_config.OAuth{}) + scheme.AddKnownTypes(routev1.GroupVersion, route) initCR := InitCheWithSimpleCR() initCR.Spec.Auth.OpenShiftoAuth = testCase.initialOAuthValue @@ -360,6 +364,7 @@ func TestCaseAutoDetectOAuth(t *testing.T) { nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -541,6 +546,7 @@ func TestImagePullerConfiguration(t *testing.T) { operatorsv1alpha1.AddToScheme(scheme.Scheme) operatorsv1.AddToScheme(scheme.Scheme) chev1alpha1.AddToScheme(scheme.Scheme) + routev1.AddToScheme(scheme.Scheme) testCase.initObjects = append(testCase.initObjects, testCase.initCR) cli := fake.NewFakeClientWithScheme(scheme.Scheme, testCase.initObjects...) nonCachedClient := fake.NewFakeClientWithScheme(scheme.Scheme, testCase.initObjects...) @@ -580,6 +586,7 @@ func TestImagePullerConfiguration(t *testing.T) { nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme.Scheme, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -746,7 +753,7 @@ func TestCheController(t *testing.T) { } // Get the custom role binding that should have been created for the role we passed in - rb := &rbacapi.RoleBinding{} + rb := &rbac.RoleBinding{} if err := cl.Get(context.TODO(), types.NamespacedName{Name: "che-workspace-custom", Namespace: cheCR.Namespace}, rb); err != nil { t.Errorf("Custom role binding %s not found: %s", rb.Name, err) } @@ -942,8 +949,8 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { os.Setenv("OPENSHIFT_VERSION", "3") type testCase struct { - name string - cheCR *orgv1.CheCluster + name string + cheCR *orgv1.CheCluster expectedIdentityProviderInternalURL string } @@ -959,8 +966,8 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ @@ -968,9 +975,9 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { UseInternalClusterSVCNames: true, }, Auth: orgv1.CheClusterSpecAuth{ - OpenShiftoAuth: util.NewBoolPointer(false), + OpenShiftoAuth: util.NewBoolPointer(false), ExternalIdentityProvider: true, - IdentityProviderURL: "http://external-keycloak", + IdentityProviderURL: "http://external-keycloak", }, }, }, @@ -984,8 +991,8 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ @@ -993,9 +1000,9 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { UseInternalClusterSVCNames: false, }, Auth: orgv1.CheClusterSpecAuth{ - OpenShiftoAuth: util.NewBoolPointer(false), + OpenShiftoAuth: util.NewBoolPointer(false), ExternalIdentityProvider: true, - IdentityProviderURL: "http://external-keycloak", + IdentityProviderURL: "http://external-keycloak", }, }, }, @@ -1009,8 +1016,8 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ @@ -1018,7 +1025,7 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { UseInternalClusterSVCNames: false, }, Auth: orgv1.CheClusterSpecAuth{ - OpenShiftoAuth: util.NewBoolPointer(false), + OpenShiftoAuth: util.NewBoolPointer(false), ExternalIdentityProvider: false, }, }, @@ -1033,8 +1040,8 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ @@ -1042,7 +1049,7 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { UseInternalClusterSVCNames: true, }, Auth: orgv1.CheClusterSpecAuth{ - OpenShiftoAuth: util.NewBoolPointer(false), + OpenShiftoAuth: util.NewBoolPointer(false), ExternalIdentityProvider: false, }, }, @@ -1057,7 +1064,7 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { orgv1.SchemeBuilder.AddToScheme(scheme) scheme.AddKnownTypes(routev1.SchemeGroupVersion, &routev1.Route{}) - cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR, ) + cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) nonCachedClient := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) clientSet := fakeclientset.NewSimpleClientset() fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) @@ -1070,7 +1077,7 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme, - tests: true, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -1122,12 +1129,12 @@ func TestShouldSetUpCorrectlyInternalIdentityProviderServiceURL(t *testing.T) { } } -func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t *testing.T) { +func TestShouldSetUpCorrectlyInternalPluginRegistryServiceURL(t *testing.T) { os.Setenv("OPENSHIFT_VERSION", "3") type testCase struct { - name string - cheCR *orgv1.CheCluster + name string + cheCR *orgv1.CheCluster expectedPluginRegistryInternalURL string } @@ -1143,15 +1150,15 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: true, - ExternalPluginRegistry: true, - PluginRegistryUrl: "http://external-plugin-registry", + ExternalPluginRegistry: true, + PluginRegistryUrl: "http://external-plugin-registry", }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1168,15 +1175,15 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: false, - ExternalPluginRegistry: true, - PluginRegistryUrl: "http://external-plugin-registry", + ExternalPluginRegistry: true, + PluginRegistryUrl: "http://external-plugin-registry", }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1193,14 +1200,14 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: false, - ExternalPluginRegistry: false, + ExternalPluginRegistry: false, }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1217,14 +1224,14 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: true, - ExternalPluginRegistry: false, + ExternalPluginRegistry: false, }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1241,7 +1248,7 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t orgv1.SchemeBuilder.AddToScheme(scheme) scheme.AddKnownTypes(routev1.SchemeGroupVersion, &routev1.Route{}) - cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR, ) + cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) nonCachedClient := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) clientSet := fakeclientset.NewSimpleClientset() fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) @@ -1254,7 +1261,7 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme, - tests: true, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -1274,7 +1281,7 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t // Set up che host for route cheRoute, _ := deploy.GetSpecRoute(deployContext, deploy.DefaultCheFlavor(testCase.cheCR), "che-host", "che-host", 8080, "", "che") - r.client.Create(context.TODO(), cheRoute); + r.client.Create(context.TODO(), cheRoute) // Set up keycloak host for route keycloakRoute, _ := deploy.GetSpecRoute(deployContext, deploy.IdentityProviderName, "keycloak", deploy.IdentityProviderName, 8080, "", deploy.IdentityProviderName) r.client.Create(context.TODO(), keycloakRoute) @@ -1284,7 +1291,6 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t // Set up devfile registry host for route devfileRegistryRoute, _ := deploy.GetSpecRoute(deployContext, deploy.DevfileRegistryName, "devfile-registry", deploy.DevfileRegistryName, 8080, "", deploy.DevfileRegistryName) r.client.Create(context.TODO(), devfileRegistryRoute) - _, err := r.Reconcile(req) if err != nil { @@ -1309,12 +1315,12 @@ func TestShouldUsePublicUrlForExternalPluginRegistryWhenInternalNetworkEnabled(t } } -func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled(t *testing.T) { +func TestShouldSetUpCorrectlyInternalDevfileRegistryServiceURL(t *testing.T) { os.Setenv("OPENSHIFT_VERSION", "3") type testCase struct { - name string - cheCR *orgv1.CheCluster + name string + cheCR *orgv1.CheCluster expectedDevfileRegistryInternalURL string } @@ -1330,15 +1336,15 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: true, - ExternalDevfileRegistry: true, - DevfileRegistryUrl: "http://external-devfile-registry", + ExternalDevfileRegistry: true, + DevfileRegistryUrl: "http://external-devfile-registry", }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1355,15 +1361,15 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: false, - ExternalDevfileRegistry: true, - DevfileRegistryUrl: "http://external-devfile-registry", + ExternalDevfileRegistry: true, + DevfileRegistryUrl: "http://external-devfile-registry", }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1380,14 +1386,14 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: false, - ExternalDevfileRegistry: false, + ExternalDevfileRegistry: false, }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1404,14 +1410,14 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: true, - ExternalDevfileRegistry: false, + ExternalDevfileRegistry: false, }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1428,7 +1434,7 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( orgv1.SchemeBuilder.AddToScheme(scheme) scheme.AddKnownTypes(routev1.SchemeGroupVersion, &routev1.Route{}) - cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR, ) + cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) nonCachedClient := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) clientSet := fakeclientset.NewSimpleClientset() fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) @@ -1441,7 +1447,7 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme, - tests: true, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -1461,7 +1467,7 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( // Set up che host for route cheRoute, _ := deploy.GetSpecRoute(deployContext, deploy.DefaultCheFlavor(testCase.cheCR), "che-host", "che-host", 8080, "", "che") - r.client.Create(context.TODO(), cheRoute); + r.client.Create(context.TODO(), cheRoute) // Set up keycloak host for route keycloakRoute, _ := deploy.GetSpecRoute(deployContext, deploy.IdentityProviderName, "keycloak", deploy.IdentityProviderName, 8080, "", deploy.IdentityProviderName) r.client.Create(context.TODO(), keycloakRoute) @@ -1495,12 +1501,12 @@ func TestShouldUsePublicUrlForExternalDevfileRegistryWhenInternalNetworkEnabled( } } -func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t *testing.T) { +func TestShouldSetUpCorrectlyInternalCheServerURL(t *testing.T) { os.Setenv("OPENSHIFT_VERSION", "3") type testCase struct { - name string - cheCR *orgv1.CheCluster + name string + cheCR *orgv1.CheCluster expectedCheServerInternalURL string } @@ -1516,8 +1522,8 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ @@ -1539,14 +1545,14 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t APIVersion: "org.eclipse.che/v1", }, ObjectMeta: metav1.ObjectMeta{ - Name: name, - Namespace: namespace, + Name: name, + Namespace: namespace, ResourceVersion: "1", }, Spec: orgv1.CheClusterSpec{ Server: orgv1.CheClusterSpecServer{ UseInternalClusterSVCNames: true, - ExternalDevfileRegistry: false, + ExternalDevfileRegistry: false, }, Auth: orgv1.CheClusterSpecAuth{ OpenShiftoAuth: util.NewBoolPointer(false), @@ -1563,7 +1569,7 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t orgv1.SchemeBuilder.AddToScheme(scheme) scheme.AddKnownTypes(routev1.SchemeGroupVersion, &routev1.Route{}) - cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR, ) + cli := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) nonCachedClient := fake.NewFakeClientWithScheme(scheme, testCase.cheCR) clientSet := fakeclientset.NewSimpleClientset() fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) @@ -1576,7 +1582,7 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t nonCachedClient: nonCachedClient, discoveryClient: fakeDiscovery, scheme: scheme, - tests: true, + tests: true, } req := reconcile.Request{ NamespacedName: types.NamespacedName{ @@ -1596,7 +1602,7 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t // Set up che host for route cheRoute, _ := deploy.GetSpecRoute(deployContext, deploy.DefaultCheFlavor(testCase.cheCR), "che-host", "che-host", 8080, "", "che") - r.client.Create(context.TODO(), cheRoute); + r.client.Create(context.TODO(), cheRoute) // Set up keycloak host for route keycloakRoute, _ := deploy.GetSpecRoute(deployContext, deploy.IdentityProviderName, "keycloak", deploy.IdentityProviderName, 8080, "", deploy.IdentityProviderName) r.client.Create(context.TODO(), keycloakRoute) @@ -1606,7 +1612,7 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t // Set up devfile registry host for route devfileRegistryRoute, _ := deploy.GetSpecRoute(deployContext, deploy.DevfileRegistryName, "devfile-registry", deploy.DevfileRegistryName, 8080, "", deploy.DevfileRegistryName) r.client.Create(context.TODO(), devfileRegistryRoute) - + _, err := r.Reconcile(req) if err != nil { t.Fatalf("Error reconciling: %v", err) @@ -1630,6 +1636,266 @@ func TestShouldUseCorrectUrlForInternalCheServerURLWhenInternalNetworkEnabled(t } } +func TestShouldDelegatePermissionsForCheWorkspaces(t *testing.T) { + os.Setenv("OPENSHIFT_VERSION", "3") + type testCase struct { + name string + initObjects []runtime.Object + + clusterRole bool + checluster *orgv1.CheCluster + } + + // the same namespace with Che + crWsInTheSameNs1 := InitCheWithSimpleCR().DeepCopy() + crWsInTheSameNs1.Spec.Server.WorkspaceNamespaceDefault = crWsInTheSameNs1.Namespace + + crWsInTheSameNs2 := InitCheWithSimpleCR().DeepCopy() + crWsInTheSameNs2.Spec.Server.WorkspaceNamespaceDefault = "" + + crWsInTheSameNs3 := InitCheWithSimpleCR().DeepCopy() + crWsInTheSameNs3.Spec.Server.CustomCheProperties = make(map[string]string) + crWsInTheSameNs3.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] = "" + + crWsInTheSameNs4 := InitCheWithSimpleCR().DeepCopy() + crWsInTheSameNs4.Spec.Server.CustomCheProperties = make(map[string]string) + crWsInTheSameNs4.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] = crWsInTheSameNs1.Namespace + + // differ namespace with Che + crWsInAnotherNs1 := InitCheWithSimpleCR().DeepCopy() + crWsInAnotherNs1.Spec.Server.WorkspaceNamespaceDefault = "some-test-namespace" + + crWsInAnotherNs2 := InitCheWithSimpleCR().DeepCopy() + crWsInAnotherNs2.Spec.Server.CustomCheProperties = make(map[string]string) + crWsInAnotherNs2.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] = "some-test-namespace" + + crWsInAnotherNs3 := InitCheWithSimpleCR().DeepCopy() + crWsInAnotherNs3.Spec.Server.CustomCheProperties = make(map[string]string) + crWsInAnotherNs3.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] = crWsInTheSameNs1.Namespace + crWsInAnotherNs3.Spec.Server.WorkspaceNamespaceDefault = "some-test-namespace" + + testCases := []testCase{ + { + name: "che-operator should delegate permission for workspaces in the same namespace with Che. WorkspaceNamespaceDefault=" + crWsInTheSameNs1.Namespace, + initObjects: []runtime.Object{}, + clusterRole: false, + checluster: crWsInTheSameNs1, + }, + { + name: "che-operator should delegate permission for workspaces in the same namespace with Che. WorkspaceNamespaceDefault=''", + initObjects: []runtime.Object{}, + clusterRole: false, + checluster: crWsInTheSameNs2, + }, + { + name: "che-operator should delegate permission for workspaces in the same namespace with Che. Property CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT=''", + initObjects: []runtime.Object{}, + clusterRole: false, + checluster: crWsInTheSameNs3, + }, + { + name: "che-operator should delegate permission for workspaces in the same namespace with Che. Property CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT=" + crWsInTheSameNs1.Namespace, + initObjects: []runtime.Object{}, + clusterRole: false, + checluster: crWsInTheSameNs4, + }, + { + name: "che-operator should delegate permission for workspaces in differ namespace than Che. WorkspaceNamespaceDefault = 'some-test-namespace'", + initObjects: []runtime.Object{}, + clusterRole: true, + checluster: crWsInAnotherNs1, + }, + { + name: "che-operator should delegate permission for workspaces in differ namespace than Che. Property CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT = 'some-test-namespace'", + initObjects: []runtime.Object{}, + clusterRole: true, + checluster: crWsInAnotherNs2, + }, + { + name: "che-operator should delegate permission for workspaces in differ namespace than Che. Property CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT points to Che namespace with higher priority WorkspaceNamespaceDefault = 'some-test-namespace'.", + initObjects: []runtime.Object{}, + clusterRole: false, + checluster: crWsInAnotherNs3, + }, + } + for _, testCase := range testCases { + t.Run(testCase.name, func(t *testing.T) { + logf.SetLogger(zap.LoggerTo(os.Stdout, true)) + + scheme := scheme.Scheme + orgv1.SchemeBuilder.AddToScheme(scheme) + scheme.AddKnownTypes(oauth.SchemeGroupVersion, oAuthClient) + scheme.AddKnownTypes(userv1.SchemeGroupVersion, &userv1.UserList{}, &userv1.User{}) + scheme.AddKnownTypes(oauth_config.SchemeGroupVersion, &oauth_config.OAuth{}) + scheme.AddKnownTypes(routev1.GroupVersion, route) + + initCR := testCase.checluster + initCR.Spec.Auth.OpenShiftoAuth = util.NewBoolPointer(false) + testCase.initObjects = append(testCase.initObjects, initCR) + + cli := fake.NewFakeClientWithScheme(scheme, testCase.initObjects...) + nonCachedClient := fake.NewFakeClientWithScheme(scheme, testCase.initObjects...) + clientSet := fakeclientset.NewSimpleClientset() + // todo do we need fake discovery + fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) + fakeDiscovery.Fake.Resources = []*metav1.APIResourceList{} + + if !ok { + t.Fatal("Error creating fake discovery client") + } + + var m *mocks.MockPermissionChecker + if testCase.clusterRole { + ctrl := gomock.NewController(t) + m = mocks.NewMockPermissionChecker(ctrl) + m.EXPECT().GetNotPermittedPolicyRules(gomock.Any(), "").Return([]rbac.PolicyRule{}, nil).MaxTimes(2) + defer ctrl.Finish() + } + + r := &ReconcileChe{ + client: cli, + nonCachedClient: nonCachedClient, + discoveryClient: fakeDiscovery, + scheme: scheme, + permissionChecker: m, + tests: true, + } + req := reconcile.Request{ + NamespacedName: types.NamespacedName{ + Name: name, + Namespace: namespace, + }, + } + + _, err := r.Reconcile(req) + if err != nil { + t.Fatalf("Error reconciling: %v", err) + } + _, err = r.Reconcile(req) + if err != nil { + t.Fatalf("Error reconciling: %v", err) + } + + if !testCase.clusterRole { + viewRole := &rbac.Role{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: deploy.ViewRoleName, Namespace: namespace}, viewRole); err != nil { + t.Errorf("role '%s' not found", deploy.ViewRoleName) + } + viewRoleBinding := &rbac.RoleBinding{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: ViewRoleBindingName, Namespace: namespace}, viewRoleBinding); err != nil { + t.Errorf("rolebinding '%s' not found", ViewRoleBindingName) + } + + execRole := &rbac.Role{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: deploy.ExecRoleName, Namespace: namespace}, execRole); err != nil { + t.Errorf("role '%s' not found", deploy.ExecRoleName) + } + execRoleBinding := &rbac.RoleBinding{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: ExecRoleBindingName, Namespace: namespace}, execRoleBinding); err != nil { + t.Errorf("rolebinding '%s' not found", ExecRoleBindingName) + } + + editRoleBinding := &rbac.RoleBinding{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: EditRoleBindingName, Namespace: namespace}, editRoleBinding); err != nil { + t.Errorf("rolebinding '%s' not found", EditRoleBindingName) + } + } else { + manageNamespacesClusterRoleName := fmt.Sprintf(CheWorkspacesNamespaceClusterRoleNameTemplate, namespace) + cheManageNamespaceClusterRole := &rbac.ClusterRole{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: manageNamespacesClusterRoleName}, cheManageNamespaceClusterRole); err != nil { + t.Errorf("role '%s' not found", manageNamespacesClusterRoleName) + } + cheManageNamespaceClusterRoleBinding := &rbac.ClusterRoleBinding{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: manageNamespacesClusterRoleName}, cheManageNamespaceClusterRoleBinding); err != nil { + t.Errorf("rolebinding '%s' not found", manageNamespacesClusterRoleName) + } + + cheWorkspacesClusterRoleName := fmt.Sprintf(CheWorkspacesClusterRoleNameTemplate, namespace) + cheWorkspacesClusterRole := &rbac.ClusterRole{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: cheWorkspacesClusterRoleName}, cheWorkspacesClusterRole); err != nil { + t.Errorf("role '%s' not found", cheWorkspacesClusterRole) + } + cheWorkspacesClusterRoleBinding := &rbac.ClusterRoleBinding{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: cheWorkspacesClusterRoleName}, cheWorkspacesClusterRoleBinding); err != nil { + t.Errorf("rolebinding '%s' not found", cheWorkspacesClusterRole) + } + } + }) + } +} + +func TestShouldFallBackWorspaceNamespaceDefaultBecauseNotEnoughtPermissions(t *testing.T) { + // the same namespace with Che + cr := InitCheWithSimpleCR().DeepCopy() + cr.Spec.Server.WorkspaceNamespaceDefault = "che-workspace-" + + logf.SetLogger(zap.LoggerTo(os.Stdout, true)) + + scheme := scheme.Scheme + orgv1.SchemeBuilder.AddToScheme(scheme) + scheme.AddKnownTypes(oauth.SchemeGroupVersion, oAuthClient) + scheme.AddKnownTypes(userv1.SchemeGroupVersion, &userv1.UserList{}, &userv1.User{}) + scheme.AddKnownTypes(oauth_config.SchemeGroupVersion, &oauth_config.OAuth{}) + scheme.AddKnownTypes(routev1.GroupVersion, route) + + cr.Spec.Auth.OpenShiftoAuth = util.NewBoolPointer(false) + + cli := fake.NewFakeClientWithScheme(scheme, cr) + nonCachedClient := fake.NewFakeClientWithScheme(scheme, cr) + clientSet := fakeclientset.NewSimpleClientset() + // todo do we need fake discovery + fakeDiscovery, ok := clientSet.Discovery().(*fakeDiscovery.FakeDiscovery) + fakeDiscovery.Fake.Resources = []*metav1.APIResourceList{} + + if !ok { + t.Fatal("Error creating fake discovery client") + } + + var m *mocks.MockPermissionChecker + ctrl := gomock.NewController(t) + m = mocks.NewMockPermissionChecker(ctrl) + m.EXPECT().GetNotPermittedPolicyRules(gomock.Any(), "").Return([]rbac.PolicyRule{ + { + APIGroups: []string{""}, + Resources: []string{"namespaces"}, + Verbs: []string{"get", "create", "update"}, + }, + }, nil).MaxTimes(2) + defer ctrl.Finish() + + r := &ReconcileChe{ + client: cli, + nonCachedClient: nonCachedClient, + discoveryClient: fakeDiscovery, + scheme: scheme, + permissionChecker: m, + tests: true, + } + req := reconcile.Request{ + NamespacedName: types.NamespacedName{ + Name: name, + Namespace: namespace, + }, + } + + _, err := r.Reconcile(req) + if err != nil { + t.Fatalf("Error reconciling: %v", err) + } + _, err = r.Reconcile(req) + if err != nil { + t.Fatalf("Error reconciling: %v", err) + } + + cheCluster := &orgv1.CheCluster{} + if err := r.client.Get(context.TODO(), types.NamespacedName{Name: name, Namespace: namespace}, cheCluster); err != nil { + t.Errorf("Unable to get checluster") + } + if cheCluster.Spec.Server.WorkspaceNamespaceDefault != namespace { + t.Error("Failed fallback workspaceNamespaceDefault to execute workspaces in the same namespace with Che") + } +} + func Init() (client.Client, discovery.DiscoveryInterface, runtime.Scheme) { objs, ds, scheme := createAPIObjects() @@ -1695,7 +1961,7 @@ func createAPIObjects() ([]runtime.Object, discovery.DiscoveryInterface, runtime cli := fakeclientset.NewSimpleClientset() fakeDiscovery, ok := cli.Discovery().(*fakeDiscovery.FakeDiscovery) if !ok { - fmt.Errorf("Error creating fake discovery client") + logrus.Error("Error creating fake discovery client") os.Exit(1) } @@ -1714,6 +1980,9 @@ func InitCheWithSimpleCR() *orgv1.CheCluster { Server: orgv1.CheClusterSpecServer{ CheWorkspaceClusterRole: "cluster-admin", }, + Auth: orgv1.CheClusterSpecAuth{ + OpenShiftoAuth: util.NewBoolPointer(false), + }, }, } } diff --git a/pkg/controller/che/cluster_permissions_finalizer.go b/pkg/controller/che/cluster_permissions_finalizer.go new file mode 100644 index 000000000..bf91f55c0 --- /dev/null +++ b/pkg/controller/che/cluster_permissions_finalizer.go @@ -0,0 +1,66 @@ +// +// 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 +// + +package che + +import ( + "context" + "fmt" + + orgv1 "github.com/eclipse/che-operator/pkg/apis/org/v1" + "github.com/eclipse/che-operator/pkg/deploy" + "github.com/eclipse/che-operator/pkg/util" + "github.com/sirupsen/logrus" +) + +func (r *ReconcileChe) ReconcileCheWorkspacesClusterPermissionsFinalizer(instance *orgv1.CheCluster) (err error) { + if instance.ObjectMeta.DeletionTimestamp.IsZero() { + if !util.ContainsString(instance.ObjectMeta.Finalizers, cheWorkspacesClusterPermissionsFinalizerName) { + instance.ObjectMeta.Finalizers = append(instance.ObjectMeta.Finalizers, cheWorkspacesClusterPermissionsFinalizerName) + if err := r.client.Update(context.Background(), instance); err != nil { + return err + } + } + } else { + r.RemoveCheWorkspacesClusterPermissions(instance) + } + return nil +} + +func (r *ReconcileChe) RemoveCheWorkspacesClusterPermissions(instance *orgv1.CheCluster) (err error) { + if util.ContainsString(instance.ObjectMeta.Finalizers, cheWorkspacesClusterPermissionsFinalizerName) { + logrus.Infof("Removing '%s'", cheWorkspacesClusterPermissionsFinalizerName) + + cheWorkspacesNamespaceClusterRoleName := fmt.Sprintf(CheWorkspacesNamespaceClusterRoleNameTemplate, instance.Namespace) + cheWorkspacesClusterRoleName := fmt.Sprintf(CheWorkspacesClusterRoleNameTemplate, instance.Namespace) + + if err := deploy.DeleteClusterRole(cheWorkspacesNamespaceClusterRoleName, r.nonCachedClient); err != nil { + return err + } + if err := deploy.DeleteClusterRoleBinding(cheWorkspacesNamespaceClusterRoleName, r.nonCachedClient); err != nil { + return err + } + if err := deploy.DeleteClusterRole(cheWorkspacesClusterRoleName, r.nonCachedClient); err != nil { + return err + } + if err := deploy.DeleteClusterRoleBinding(cheWorkspacesClusterRoleName, r.nonCachedClient); err != nil { + return err + } + + instance.ObjectMeta.Finalizers = util.DoRemoveString(instance.ObjectMeta.Finalizers, cheWorkspacesClusterPermissionsFinalizerName) + if err := r.client.Update(context.Background(), instance); err != nil { + return err + } + } + + return nil +} diff --git a/pkg/controller/che/finalizer.go b/pkg/controller/che/finalizer.go index 9478879e1..00b0bf28a 100644 --- a/pkg/controller/che/finalizer.go +++ b/pkg/controller/che/finalizer.go @@ -35,7 +35,7 @@ func (r *ReconcileChe) ReconcileFinalizer(instance *orgv1.CheCluster) (err error oAuthClient, err := r.GetOAuthClient(oAuthClientName) if err == nil { if err := r.client.Delete(context.TODO(), oAuthClient); err != nil { - logrus.Errorf("Failed to delete %s oAuthClient: %s", oAuthClientName, err) + logrus.Errorf("Failed to delete %s oAuthClient: %s", oAuthClientName, err.Error()) return err } } else if !errors.IsNotFound(err) { @@ -43,7 +43,6 @@ func (r *ReconcileChe) ReconcileFinalizer(instance *orgv1.CheCluster) (err error return err } instance.ObjectMeta.Finalizers = util.DoRemoveString(instance.ObjectMeta.Finalizers, oAuthFinalizerName) - logrus.Infof("Updating %s CR", instance.Name) if err := r.client.Update(context.Background(), instance); err != nil { logrus.Errorf("Failed to update %s CR: %s", instance.Name, err) @@ -55,7 +54,7 @@ func (r *ReconcileChe) ReconcileFinalizer(instance *orgv1.CheCluster) (err error return nil } -func (r *ReconcileChe) DeleteFinalizer(instance *orgv1.CheCluster) (err error) { +func (r *ReconcileChe) DeleteOAuthFinalizer(instance *orgv1.CheCluster) (err error) { instance.ObjectMeta.Finalizers = util.DoRemoveString(instance.ObjectMeta.Finalizers, oAuthFinalizerName) logrus.Infof("Removing OAuth finalizer on %s CR", instance.Name) if err := r.client.Update(context.Background(), instance); err != nil { diff --git a/pkg/controller/che/permission_checker.go b/pkg/controller/che/permission_checker.go new file mode 100644 index 000000000..366c08ccf --- /dev/null +++ b/pkg/controller/che/permission_checker.go @@ -0,0 +1,61 @@ +// +// 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: // Contributors: +// Red Hat, Inc. - initial API and implementation // Red Hat, Inc. - initial API and implementation +// + +package che + +import ( + "fmt" + + "github.com/eclipse/che-operator/pkg/util" + authorizationv1 "k8s.io/api/authorization/v1" + rbac "k8s.io/api/rbac/v1" +) + +type PermissionChecker interface { + GetNotPermittedPolicyRules(policies []rbac.PolicyRule, namespace string) ([]rbac.PolicyRule, error) +} + +type K8sApiPermissionChecker struct { +} + +func (pc *K8sApiPermissionChecker) GetNotPermittedPolicyRules(policies []rbac.PolicyRule, namespace string) ([]rbac.PolicyRule, error) { + var notPermittedPolicyRules []rbac.PolicyRule = []rbac.PolicyRule{} + for _, policy := range policies { + for _, apiGroup := range policy.APIGroups { + for _, verb := range policy.Verbs { + for _, resource := range policy.Resources { + resourceAttribute := &authorizationv1.ResourceAttributes{ + Namespace: namespace, + Verb: verb, + Group: apiGroup, + Resource: resource, + } + ok, err := util.K8sclient.IsResourceOperationPermitted(resourceAttribute) + if err != nil { + return notPermittedPolicyRules, fmt.Errorf("failed to check policy rule: %v", policy) + } + if !ok { + if len(notPermittedPolicyRules) == 0 { + notPermittedPolicyRules = append(notPermittedPolicyRules, policy) + } else { + lastNotPermittedRule := notPermittedPolicyRules[len(notPermittedPolicyRules)-1] + if lastNotPermittedRule.Resources[0] != policy.Resources[0] && lastNotPermittedRule.APIGroups[0] != policy.APIGroups[0] { + notPermittedPolicyRules = append(notPermittedPolicyRules, policy) + } + } + } + } + } + } + } + return notPermittedPolicyRules, nil +} diff --git a/pkg/controller/che/update.go b/pkg/controller/che/update.go index 79dcb6e00..d32019f95 100644 --- a/pkg/controller/che/update.go +++ b/pkg/controller/che/update.go @@ -13,7 +13,7 @@ package che import ( "context" - "github.com/eclipse/che-operator/pkg/deploy" + "github.com/eclipse/che-operator/pkg/deploy" orgv1 "github.com/eclipse/che-operator/pkg/apis/org/v1" identity_provider "github.com/eclipse/che-operator/pkg/deploy/identity-provider" diff --git a/pkg/controller/che/workspace_namespace_permission.go b/pkg/controller/che/workspace_namespace_permission.go new file mode 100644 index 000000000..e0b85809c --- /dev/null +++ b/pkg/controller/che/workspace_namespace_permission.go @@ -0,0 +1,378 @@ +// +// Copyright (c) 2012-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: // Contributors: +// Red Hat, Inc. - initial API and implementation // Red Hat, Inc. - initial API and implementation +// + +package che + +import ( + "fmt" + "time" + + orgv1 "github.com/eclipse/che-operator/pkg/apis/org/v1" + "github.com/eclipse/che-operator/pkg/deploy" + "github.com/eclipse/che-operator/pkg/util" + "github.com/sirupsen/logrus" + rbac "k8s.io/api/rbac/v1" + "sigs.k8s.io/controller-runtime/pkg/client" + "sigs.k8s.io/controller-runtime/pkg/reconcile" +) + +const ( + // EditClusterRoleName - default "edit" cluster role. This role is pre-created on the cluster. + // See more: https://kubernetes.io/blog/2017/10/using-rbac-generally-available-18/#granting-access-to-users + EditClusterRoleName = "edit" + // EditRoleBindingName - "edit" rolebinding for che-server. + EditRoleBindingName = "che" + // CheWorkspacesServiceAccount - service account created for Che workspaces. + CheWorkspacesServiceAccount = "che-workspace" + // ViewRoleBindingName - "view" role for "che-workspace" service account. + ViewRoleBindingName = "che-workspace-view" + // ExecRoleBindingName - "exec" role for "che-workspace" service account. + ExecRoleBindingName = "che-workspace-exec" + // CheWorkspacesNamespaceClusterRoleNameTemplate - manage namespaces "cluster role" and "clusterrolebinding" template name + CheWorkspacesNamespaceClusterRoleNameTemplate = "%s-cheworkspaces-namespaces-clusterrole" + // CheWorkspacesClusterRoleNameTemplate - manage workspaces "cluster role" and "clusterrolebinding" template name + CheWorkspacesClusterRoleNameTemplate = "%s-cheworkspaces-clusterrole" +) + +// delegateWorkspacePermissionsInTheSameNamespaceWithChe - creates "che-workspace" service account(for Che workspaces) and +// delegates "che-operator" SA permissions to the service accounts: "che" and "che-workspace". +// Also this method binds "edit" default k8s clusterrole using rolebinding to "che" SA. +func (r *ReconcileChe) delegateWorkspacePermissionsInTheSameNamespaceWithChe(deployContext *deploy.DeployContext) (reconcile.Result, error) { + tests := r.tests + + // Create "che-workspace" service account. + // Che workspace components use this service account. + cheWorkspaceSA, err := deploy.SyncServiceAccountToCluster(deployContext, CheWorkspacesServiceAccount) + if cheWorkspaceSA == nil { + logrus.Infof("Waiting on service account '%s' to be created", CheWorkspacesServiceAccount) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + + // Create view role for "che-workspace" service account. + // This role used by exec terminals, tasks, metric che-theia plugin and so on. + viewRole, err := deploy.SyncViewRoleToCluster(deployContext) + if viewRole == nil { + logrus.Infof("Waiting on role '%s' to be created", deploy.ViewRoleName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + + cheWSViewRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, ViewRoleBindingName, CheWorkspacesServiceAccount, deploy.ViewRoleName, "Role") + if cheWSViewRoleBinding == nil { + logrus.Infof("Waiting on role binding '%s' to be created", ViewRoleBindingName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + + // Create exec role for "che-workspaces" service account. + // This role used by exec terminals, tasks and so on. + execRole, err := deploy.SyncExecRoleToCluster(deployContext) + if execRole == nil { + logrus.Infof("Waiting on role '%s' to be created", deploy.ExecRoleName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + + cheWSExecRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, ExecRoleBindingName, CheWorkspacesServiceAccount, deploy.ExecRoleName, "Role") + if cheWSExecRoleBinding == nil { + logrus.Infof("Waiting on role binding '%s' to be created", ExecRoleBindingName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + + // Bind "edit" cluster role for "che" service account. + // che-operator doesn't create "edit" role. This role is pre-created on the cluster. + // Warning: operator binds clusterrole using rolebinding(not clusterrolebinding). + // That's why "che" service account has got permissions only in the one namespace! + // So permissions are binding in "non-cluster" scope. + cheRoleBinding, err := deploy.SyncRoleBindingToCluster(deployContext, EditRoleBindingName, CheServiceAccountName, EditClusterRoleName, "ClusterRole") + if cheRoleBinding == nil { + logrus.Infof("Waiting on role binding '%s' to be created", EditRoleBindingName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{}, err + } + } + return reconcile.Result{}, nil +} + +// Create cluster roles and cluster role bindings for "che" service account. +// che-server uses "che" service account for creation new workspaces and workspace components. +// Operator will create two cluster roles: +// - "-cheworkspaces-namespaces-clusterrole" - cluster role to mange namespace(for Kubernetes platform) +// or project(for Openshift platform) for new workspace. +// - "-cheworkspaces-clusterrole" - cluster role to create and manage k8s objects required for +// workspace components. +// Notice: After permission delegation che-server will create service account "che-workspace" ITSELF with +// "exec" and "view" roles for each new workspace. +func (r *ReconcileChe) delegateWorkspacePermissionsInTheDifferNamespaceThanChe(instance *orgv1.CheCluster, deployContext *deploy.DeployContext) (reconcile.Result, error) { + tests := r.tests + + сheWorkspacesNamespaceClusterRoleName := fmt.Sprintf(CheWorkspacesNamespaceClusterRoleNameTemplate, instance.Namespace) + сheWorkspacesNamespaceClusterRoleBindingName := сheWorkspacesNamespaceClusterRoleName + // Create clusterrole "-clusterrole-manage-namespaces" to manage namespace/projects for Che workspaces. + provisioned, err := deploy.SyncClusterRoleToCheCluster(deployContext, сheWorkspacesNamespaceClusterRoleName, getCheWorkspacesNamespacePolicy()) + if !provisioned { + logrus.Infof("Waiting on clusterrole '%s' to be created", сheWorkspacesNamespaceClusterRoleName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{RequeueAfter: time.Second}, err + } + } + сheWorkspacesNamespaceClusterRoleBinding, err := deploy.SyncClusterRoleBindingToCluster(deployContext, сheWorkspacesNamespaceClusterRoleBindingName, CheServiceAccountName, сheWorkspacesNamespaceClusterRoleName) + if сheWorkspacesNamespaceClusterRoleBinding == nil { + logrus.Infof("Waiting on clusterrolebinding '%s' to be created", сheWorkspacesNamespaceClusterRoleBindingName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{RequeueAfter: time.Second}, err + } + } + + сheWorkspacesClusterRoleName := fmt.Sprintf(CheWorkspacesClusterRoleNameTemplate, instance.Namespace) + сheWorkspacesClusterRoleBindingName := сheWorkspacesClusterRoleName + // Create clusterrole "-cheworkspaces-namespaces-clusterrole" to create k8s components for Che workspaces. + provisioned, err = deploy.SyncClusterRoleToCheCluster(deployContext, сheWorkspacesClusterRoleName, getCheWorkspacesPolicy()) + if !provisioned { + logrus.Infof("Waiting on clusterrole '%s' to be created", сheWorkspacesClusterRoleName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{RequeueAfter: time.Second}, err + } + } + cheManageNamespacesRolebinding, err := deploy.SyncClusterRoleBindingToCluster(deployContext, сheWorkspacesClusterRoleBindingName, CheServiceAccountName, сheWorkspacesClusterRoleName) + if cheManageNamespacesRolebinding == nil { + logrus.Infof("Waiting on clusterrolebinding '%s' to be created", сheWorkspacesClusterRoleBindingName) + if err != nil { + logrus.Error(err) + } + if !tests { + return reconcile.Result{RequeueAfter: time.Second}, err + } + } + return reconcile.Result{}, nil +} + +// DeleteWorkspacesInSameNamespaceWithChePermissions - removes workspaces in same namespace with Che role and rolebindings. +func (r *ReconcileChe) DeleteWorkspacesInSameNamespaceWithChePermissions(instance *orgv1.CheCluster, cli client.Client) error { + + if err := deploy.DeleteRole(deploy.ExecRoleName, instance.Namespace, cli); err != nil { + return err + } + if err := deploy.DeleteRoleBinding(ExecRoleBindingName, instance.Namespace, cli); err != nil { + return err + } + + if err := deploy.DeleteRole(deploy.ViewRoleName, instance.Namespace, cli); err != nil { + return err + } + if err := deploy.DeleteRoleBinding(ViewRoleBindingName, instance.Namespace, cli); err != nil { + return err + } + + if err := deploy.DeleteRoleBinding(EditRoleBindingName, instance.Namespace, cli); err != nil { + return err + } + + return nil +} + +func (r *ReconcileChe) reconcileWorkspacePermissionsFinalizer(instance *orgv1.CheCluster, deployContext *deploy.DeployContext) error { + + if !util.IsOAuthEnabled(instance) { + if util.IsWorkspaceInSameNamespaceWithChe(instance) { + // Delete workspaces cluster permission set and finalizer from CR if deletion timestamp is not 0. + if err := r.RemoveCheWorkspacesClusterPermissions(instance); err != nil { + logrus.Errorf("workspace permissions finalizers was not removed from CR, cause %s", err.Error()) + return err + } + } else { + // Delete permission set for configuration "same namespace for Che and workspaces". + if err := r.DeleteWorkspacesInSameNamespaceWithChePermissions(instance, deployContext.ClusterAPI.Client); err != nil { + logrus.Errorf("unable to delete workspaces in same namespace permission set, cause %s", err.Error()) + return err + } + // Add workspaces cluster permission finalizer to the CR if deletion timestamp is 0. + // Or delete workspaces cluster permission set and finalizer from CR if deletion timestamp is not 0. + if err := r.ReconcileCheWorkspacesClusterPermissionsFinalizer(instance); err != nil { + logrus.Errorf("unable to add workspace permissions finalizers to the CR, cause %s", err.Error()) + return err + } + } + } else { + // Delete workspaces cluster permission set and finalizer from CR if deletion timestamp is not 0. + if err := r.RemoveCheWorkspacesClusterPermissions(instance); err != nil { + logrus.Errorf("workspace permissions finalizers was not removed from CR, cause %s", err.Error()) + return err + } + } + + return nil +} + +func getCheWorkspacesNamespacePolicy() []rbac.PolicyRule { + k8sPolicies := []rbac.PolicyRule{ + { + APIGroups: []string{""}, + Resources: []string{"namespaces"}, + Verbs: []string{"get", "create", "update"}, + }, + } + + openshiftPolicies := []rbac.PolicyRule{ + { + APIGroups: []string{"project.openshift.io"}, + Resources: []string{"projectrequests"}, + Verbs: []string{"create", "update"}, + }, + { + APIGroups: []string{"project.openshift.io"}, + Resources: []string{"projects"}, + Verbs: []string{"get"}, + }, + } + + if util.IsOpenShift { + return append(k8sPolicies, openshiftPolicies...) + } + return k8sPolicies +} + +func getCheWorkspacesPolicy() []rbac.PolicyRule { + k8sPolicies := []rbac.PolicyRule{ + { + APIGroups: []string{""}, + Resources: []string{"serviceaccounts"}, + Verbs: []string{"get", "create", "watch"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"pods/exec"}, + Verbs: []string{"create"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"persistentvolumeclaims", "configmaps"}, + Verbs: []string{"list"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"secrets"}, + Verbs: []string{"list", "create", "delete"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"persistentvolumeclaims"}, + Verbs: []string{"get", "create", "watch"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"pods"}, + Verbs: []string{"get", "create", "list", "watch", "delete"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"services"}, + Verbs: []string{"create", "list", "delete"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"configmaps"}, + Verbs: []string{"get", "create", "delete"}, + }, + { + APIGroups: []string{""}, + Resources: []string{"events"}, + Verbs: []string{"watch"}, + }, + { + APIGroups: []string{"apps"}, + Resources: []string{"secrets"}, + Verbs: []string{"list"}, + }, + { + APIGroups: []string{"apps"}, + Resources: []string{"deployments"}, + Verbs: []string{"get", "create", "list", "watch", "patch", "delete"}, + }, + { + APIGroups: []string{"apps"}, + Resources: []string{"replicasets"}, + Verbs: []string{"list", "get", "patch", "delete"}, + }, + { + APIGroups: []string{"extensions"}, + Resources: []string{"ingresses"}, + Verbs: []string{"list", "create", "watch", "get", "delete"}, + }, + { + APIGroups: []string{"rbac.authorization.k8s.io"}, + Resources: []string{"roles"}, + Verbs: []string{"get", "create"}, + }, + { + APIGroups: []string{"rbac.authorization.k8s.io"}, + Resources: []string{"rolebindings"}, + Verbs: []string{"get", "update", "create"}, + }, + } + openshiftPolicies := []rbac.PolicyRule{ + { + APIGroups: []string{"route.openshift.io"}, + Resources: []string{"routes"}, + Verbs: []string{"list", "create", "delete"}, + }, + { + APIGroups: []string{"authorization.openshift.io"}, + Resources: []string{"roles"}, + Verbs: []string{"get", "create"}, + }, + { + APIGroups: []string{"authorization.openshift.io"}, + Resources: []string{"rolebindings"}, + Verbs: []string{"get", "update", "create"}, + }, + } + + if util.IsOpenShift { + return append(k8sPolicies, openshiftPolicies...) + } + return k8sPolicies +} diff --git a/pkg/deploy/clusterrole.go b/pkg/deploy/clusterrole.go new file mode 100644 index 000000000..8d659fc5c --- /dev/null +++ b/pkg/deploy/clusterrole.go @@ -0,0 +1,110 @@ +// +// Copyright (c) 2012-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 +// +package deploy + +import ( + "context" + "fmt" + + "github.com/google/go-cmp/cmp" + "github.com/google/go-cmp/cmp/cmpopts" + "github.com/sirupsen/logrus" + rbac "k8s.io/api/rbac/v1" + "k8s.io/apimachinery/pkg/api/errors" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/types" + runtimeClient "sigs.k8s.io/controller-runtime/pkg/client" +) + +var clusterRoleDiffOpts = cmp.Options{ + cmpopts.IgnoreFields(rbac.ClusterRole{}, "TypeMeta", "ObjectMeta"), + cmpopts.IgnoreFields(rbac.PolicyRule{}, "ResourceNames", "NonResourceURLs"), +} + +func SyncClusterRoleToCheCluster( + deployContext *DeployContext, + name string, + policyRule []rbac.PolicyRule) (bool, error) { + + specClusterRole, err := getSpecClusterRole(deployContext, name, policyRule) + if err != nil { + return false, err + } + + clusterRole, err := GetClusterRole(specClusterRole.Name, deployContext.ClusterAPI.Client) + if err != nil { + return false, err + } + + if clusterRole == nil { + logrus.Infof("Creating a new object: %s, name %s", specClusterRole.Kind, specClusterRole.Name) + err := deployContext.ClusterAPI.Client.Create(context.TODO(), specClusterRole) + return false, err + } + + diff := cmp.Diff(clusterRole, specClusterRole, clusterRoleDiffOpts) + if len(diff) > 0 { + logrus.Infof("Updating existed object: %s, name: %s", clusterRole.Kind, clusterRole.Name) + fmt.Printf("Difference:\n%s", diff) + clusterRole.Rules = specClusterRole.Rules + err := deployContext.ClusterAPI.Client.Update(context.TODO(), clusterRole) + return false, err + } + + return true, nil +} + +func GetClusterRole(name string, client runtimeClient.Client) (*rbac.ClusterRole, error) { + clusterRole := &rbac.ClusterRole{} + namespacedName := types.NamespacedName{ + Name: name, + } + err := client.Get(context.TODO(), namespacedName, clusterRole) + if err != nil { + if errors.IsNotFound(err) { + return nil, nil + } + return nil, err + } + return clusterRole, nil +} + +func getSpecClusterRole(deployContext *DeployContext, name string, policyRule []rbac.PolicyRule) (*rbac.ClusterRole, error) { + labels := GetLabels(deployContext.CheCluster, DefaultCheFlavor(deployContext.CheCluster)) + clusterRole := &rbac.ClusterRole{ + TypeMeta: metav1.TypeMeta{ + Kind: "ClusterRole", + APIVersion: rbac.SchemeGroupVersion.String(), + }, + ObjectMeta: metav1.ObjectMeta{ + Name: name, + Labels: labels, + }, + Rules: policyRule, + } + + return clusterRole, nil +} + +func DeleteClusterRole(clusterRoleName string, client runtimeClient.Client) error { + clusterRole := &rbac.ClusterRole{ + ObjectMeta: metav1.ObjectMeta{ + Name: clusterRoleName, + }, + } + err := client.Delete(context.TODO(), clusterRole) + if err != nil && !errors.IsNotFound(err) { + return err + } + + return nil +} diff --git a/pkg/deploy/clusterrolebinding.go b/pkg/deploy/clusterrolebinding.go index 28984c1ee..b314ea03a 100644 --- a/pkg/deploy/clusterrolebinding.go +++ b/pkg/deploy/clusterrolebinding.go @@ -40,7 +40,7 @@ func SyncClusterRoleBindingToCluster( return nil, err } - clusterRB, err := getClusterRoleBiding(specCRB.Name, deployContext.ClusterAPI.Client) + clusterRB, err := GetClusterRoleBiding(specCRB.Name, deployContext.ClusterAPI.Client) if err != nil { return nil, err } @@ -64,7 +64,7 @@ func SyncClusterRoleBindingToCluster( return clusterRB, nil } -func getClusterRoleBiding(name string, client runtimeClient.Client) (*rbac.ClusterRoleBinding, error) { +func GetClusterRoleBiding(name string, client runtimeClient.Client) (*rbac.ClusterRoleBinding, error) { clusterRoleBinding := &rbac.ClusterRoleBinding{} crbName := types.NamespacedName{Name: name} err := client.Get(context.TODO(), crbName, clusterRoleBinding) @@ -112,3 +112,17 @@ func getSpecClusterRoleBinding( return clusterRoleBinding, nil } + +func DeleteClusterRoleBinding(clusterRoleBindingName string, client runtimeClient.Client) error { + clusterRoleBinding := &rbac.ClusterRoleBinding{ + ObjectMeta: metav1.ObjectMeta{ + Name: clusterRoleBindingName, + }, + } + err := client.Delete(context.TODO(), clusterRoleBinding) + if err != nil && !errors.IsNotFound(err) { + return err + } + + return nil +} diff --git a/pkg/deploy/role.go b/pkg/deploy/role.go index efa6a50b0..07c57d60c 100644 --- a/pkg/deploy/role.go +++ b/pkg/deploy/role.go @@ -26,6 +26,13 @@ import ( "sigs.k8s.io/controller-runtime/pkg/controller/controllerutil" ) +const ( + // ViewRoleName role to get k8s object needed for Workspace components(metrics plugin, Che terminals, tasks etc.) + ViewRoleName = "view" + // ExecRoleName - role name to create Che terminals and tasks in the workspace. + ExecRoleName = "exec" +) + var roleDiffOpts = cmp.Options{ cmpopts.IgnoreFields(rbac.Role{}, "TypeMeta", "ObjectMeta"), cmpopts.IgnoreFields(rbac.PolicyRule{}, "ResourceNames", "NonResourceURLs"), @@ -62,7 +69,7 @@ func SyncExecRoleToCluster(deployContext *DeployContext) (*rbac.Role, error) { }, }, } - return SyncRoleToCluster(deployContext, "exec", execPolicyRule) + return SyncRoleToCluster(deployContext, ExecRoleName, execPolicyRule) } func SyncViewRoleToCluster(deployContext *DeployContext) (*rbac.Role, error) { @@ -90,7 +97,7 @@ func SyncViewRoleToCluster(deployContext *DeployContext) (*rbac.Role, error) { }, }, } - return SyncRoleToCluster(deployContext, "view", viewPolicyRule) + return SyncRoleToCluster(deployContext, ViewRoleName, viewPolicyRule) } func SyncRoleToCluster( @@ -103,7 +110,7 @@ func SyncRoleToCluster( return nil, err } - clusterRole, err := getClusterRole(specRole.Name, specRole.Namespace, deployContext.ClusterAPI.Client) + clusterRole, err := getCheClusterRole(specRole.Name, specRole.Namespace, deployContext.ClusterAPI.Client) if err != nil { return nil, err } @@ -126,7 +133,7 @@ func SyncRoleToCluster( return clusterRole, nil } -func getClusterRole(name string, namespace string, client runtimeClient.Client) (*rbac.Role, error) { +func getCheClusterRole(name string, namespace string, client runtimeClient.Client) (*rbac.Role, error) { role := &rbac.Role{} namespacedName := types.NamespacedName{ Namespace: namespace, @@ -164,3 +171,17 @@ func getSpecRole(deployContext *DeployContext, name string, policyRule []rbac.Po return role, nil } + +func DeleteRole(name string, namespace string, client runtimeClient.Client) error { + role := &rbac.Role{ + ObjectMeta: metav1.ObjectMeta{ + Namespace: namespace, + Name: name, + }, + } + err := client.Delete(context.TODO(), role) + if err != nil && !errors.IsNotFound(err) { + return err + } + return nil +} diff --git a/pkg/deploy/rolebinding.go b/pkg/deploy/rolebinding.go index 5c285c470..dc689b14d 100644 --- a/pkg/deploy/rolebinding.go +++ b/pkg/deploy/rolebinding.go @@ -104,3 +104,18 @@ func getSpecRoleBinding( return roleBinding, nil } + +func DeleteRoleBinding(name string, namespace string, client runtimeClient.Client) error { + roleBinding := &rbac.RoleBinding{ + ObjectMeta: metav1.ObjectMeta{ + Namespace: namespace, + Name: name, + }, + } + err := client.Delete(context.TODO(), roleBinding) + if err != nil && !errors.IsNotFound(err) { + return err + } + + return nil +} diff --git a/pkg/deploy/server/che_configmap.go b/pkg/deploy/server/che_configmap.go index c9af46e38..1abcd923d 100644 --- a/pkg/deploy/server/che_configmap.go +++ b/pkg/deploy/server/che_configmap.go @@ -115,17 +115,12 @@ func GetCheConfigMapData(deployContext *deploy.DeployContext) (cheEnv map[string } tls := "false" openShiftIdentityProviderId := "NULL" - defaultTargetNamespaceDefault := deployContext.CheCluster.Namespace // By default Che SA has right in the namespace where Che in installed ... if isOpenShift && util.IsOAuthEnabled(deployContext.CheCluster) { - // ... But if the workspace is created under the openshift identity of the end-user, - // Then we'll have rights to create any new namespace - defaultTargetNamespaceDefault = "-" + cheFlavor openShiftIdentityProviderId = "openshift-v3" if isOpenshift4 { openShiftIdentityProviderId = "openshift-v4" } } - defaultTargetNamespace := util.GetValue(deployContext.CheCluster.Spec.Server.WorkspaceNamespaceDefault, defaultTargetNamespaceDefault) namespaceAllowUserDefined := strconv.FormatBool(deployContext.CheCluster.Spec.Server.AllowUserDefinedWorkspaceNamespaces) tlsSupport := deployContext.CheCluster.Spec.Server.TlsSupport protocol := "http" @@ -180,6 +175,7 @@ func GetCheConfigMapData(deployContext *deploy.DeployContext) (cheEnv map[string cheMultiUser := deploy.GetCheMultiUser(deployContext.CheCluster) workspaceExposure := deploy.GetSingleHostExposureType(deployContext.CheCluster) singleHostGatewayConfigMapLabels := labels.FormatLabels(util.GetMapValue(deployContext.CheCluster.Spec.Server.SingleHostGatewayConfigMapLabels, deploy.DefaultSingleHostGatewayConfigMapLabels)) + workspaceNamespaceDefault := util.GetWorkspaceNamespaceDefault(deployContext.CheCluster) cheAPI := protocol + "://" + cheHost + "/api" var keycloakInternalURL, pluginRegistryInternalURL, devfileRegistryInternalURL, cheInternalAPI string @@ -219,7 +215,7 @@ func GetCheConfigMapData(deployContext *deploy.DeployContext) (cheEnv map[string CheDebugServer: cheDebug, CheInfrastructureActive: infra, CheInfraKubernetesServiceAccountName: "che-workspace", - DefaultTargetNamespace: defaultTargetNamespace, + DefaultTargetNamespace: workspaceNamespaceDefault, NamespaceAllowUserDefined: namespaceAllowUserDefined, PvcStrategy: pvcStrategy, PvcClaimSize: pvcClaimSize, @@ -284,10 +280,7 @@ func GetCheConfigMapData(deployContext *deploy.DeployContext) (cheEnv map[string // Add TLS key and server certificate to properties when user workspaces should be created in another // than Che server namespace, from where the Che TLS secret is not accessable - k8sDefaultNamespace := deployContext.CheCluster.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] - if (defaultTargetNamespace != "" && defaultTargetNamespace != deployContext.CheCluster.Namespace) || - (k8sDefaultNamespace != "" && k8sDefaultNamespace != deployContext.CheCluster.Namespace) { - + if !util.IsWorkspaceInSameNamespaceWithChe(deployContext.CheCluster) { cheTLSSecret, err := deploy.GetClusterSecret(deployContext.CheCluster.Spec.K8s.TlsSecretName, deployContext.CheCluster.ObjectMeta.Namespace, deployContext.ClusterAPI) if err != nil { return nil, err diff --git a/pkg/util/k8s_helpers.go b/pkg/util/k8s_helpers.go index 7429979ff..71f988aa6 100644 --- a/pkg/util/k8s_helpers.go +++ b/pkg/util/k8s_helpers.go @@ -18,6 +18,7 @@ import ( v1 "github.com/eclipse/che-operator/pkg/apis/org/v1" "github.com/sirupsen/logrus" + authorizationv1 "k8s.io/api/authorization/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/fields" @@ -220,3 +221,18 @@ func (cl *k8s) RunExec(command []string, podName, namespace string) (string, str return stdout.String(), stderr.String(), nil } + +func (cl *k8s) IsResourceOperationPermitted(resourceAttr *authorizationv1.ResourceAttributes) (ok bool, err error) { + lsar := &authorizationv1.SelfSubjectAccessReview{ + Spec: authorizationv1.SelfSubjectAccessReviewSpec{ + ResourceAttributes: resourceAttr, + }, + } + + ssar, err := cl.clientset.AuthorizationV1().SelfSubjectAccessReviews().Create(lsar) + if err != nil { + return false, err + } + + return ssar.Status.Allowed, nil +} diff --git a/pkg/util/util.go b/pkg/util/util.go index 5ad55a2d4..83bd6f288 100644 --- a/pkg/util/util.go +++ b/pkg/util/util.go @@ -347,7 +347,7 @@ func NewBoolPointer(value bool) *bool { return &variable } -// IsOAuthEnabled return true when oAuth is enable for CheCluster resource, otherwise false. +// IsOAuthEnabled returns true when oAuth is enable for CheCluster resource, otherwise false. func IsOAuthEnabled(c *orgv1.CheCluster) bool { if c.Spec.Auth.OpenShiftoAuth != nil && *c.Spec.Auth.OpenShiftoAuth { return true @@ -355,6 +355,27 @@ func IsOAuthEnabled(c *orgv1.CheCluster) bool { return false } +// IsWorkspaceInSameNamespaceWithChe return true when Che workspaces will be executed in the same namespace with Che, otherwise returns false. +func IsWorkspaceInSameNamespaceWithChe(cr *orgv1.CheCluster) bool { + return GetWorkspaceNamespaceDefault(cr) == cr.Namespace +} + +// GetWorkspaceNamespaceDefault - returns workspace namespace default strategy, which points on the namespaces used for workspaces execution. +func GetWorkspaceNamespaceDefault(cr *orgv1.CheCluster) string { + if cr.Spec.Server.CustomCheProperties != nil { + k8sNamespaceDefault := cr.Spec.Server.CustomCheProperties["CHE_INFRA_KUBERNETES_NAMESPACE_DEFAULT"] + if k8sNamespaceDefault != "" { + return k8sNamespaceDefault + } + } + + workspaceNamespaceDefault := cr.Namespace + if IsOpenShift && IsOAuthEnabled(cr) { + workspaceNamespaceDefault = "-" + cr.Spec.Server.CheFlavor + } + return GetValue(cr.Spec.Server.WorkspaceNamespaceDefault, workspaceNamespaceDefault) +} + func GetResourceQuantity(value string, defaultValue string) resource.Quantity { if value != "" { return resource.MustParse(value) diff --git a/vendor/github.com/golang/mock/AUTHORS b/vendor/github.com/golang/mock/AUTHORS new file mode 100644 index 000000000..660b8ccc8 --- /dev/null +++ b/vendor/github.com/golang/mock/AUTHORS @@ -0,0 +1,12 @@ +# This is the official list of GoMock authors for copyright purposes. +# This file is distinct from the CONTRIBUTORS files. +# See the latter for an explanation. + +# Names should be added to this file as +# Name or Organization +# The email address is not required for organizations. + +# Please keep the list sorted. + +Alex Reece +Google Inc. diff --git a/vendor/github.com/golang/mock/CONTRIBUTORS b/vendor/github.com/golang/mock/CONTRIBUTORS new file mode 100644 index 000000000..def849cab --- /dev/null +++ b/vendor/github.com/golang/mock/CONTRIBUTORS @@ -0,0 +1,37 @@ +# This is the official list of people who can contribute (and typically +# have contributed) code to the gomock repository. +# The AUTHORS file lists the copyright holders; this file +# lists people. For example, Google employees are listed here +# but not in AUTHORS, because Google holds the copyright. +# +# The submission process automatically checks to make sure +# that people submitting code are listed in this file (by email address). +# +# Names should be added to this file only after verifying that +# the individual or the individual's organization has agreed to +# the appropriate Contributor License Agreement, found here: +# +# http://code.google.com/legal/individual-cla-v1.0.html +# http://code.google.com/legal/corporate-cla-v1.0.html +# +# The agreement for individuals can be filled out on the web. +# +# When adding J Random Contributor's name to this file, +# either J's name or J's organization's name should be +# added to the AUTHORS file, depending on whether the +# individual or corporate CLA was used. + +# Names should be added to this file like so: +# Name +# +# An entry with two email addresses specifies that the +# first address should be used in the submit logs and +# that the second address should be recognized as the +# same person when interacting with Rietveld. + +# Please keep the list sorted. + +Aaron Jacobs +Alex Reece +David Symonds +Ryan Barrett diff --git a/vendor/github.com/golang/mock/LICENSE b/vendor/github.com/golang/mock/LICENSE new file mode 100644 index 000000000..d64569567 --- /dev/null +++ b/vendor/github.com/golang/mock/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/vendor/github.com/golang/mock/gomock/call.go b/vendor/github.com/golang/mock/gomock/call.go new file mode 100644 index 000000000..3d54d9f5d --- /dev/null +++ b/vendor/github.com/golang/mock/gomock/call.go @@ -0,0 +1,420 @@ +// Copyright 2010 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package gomock + +import ( + "fmt" + "reflect" + "strconv" + "strings" +) + +// Call represents an expected call to a mock. +type Call struct { + t TestHelper // for triggering test failures on invalid call setup + + receiver interface{} // the receiver of the method call + method string // the name of the method + methodType reflect.Type // the type of the method + args []Matcher // the args + origin string // file and line number of call setup + + preReqs []*Call // prerequisite calls + + // Expectations + minCalls, maxCalls int + + numCalls int // actual number made + + // actions are called when this Call is called. Each action gets the args and + // can set the return values by returning a non-nil slice. Actions run in the + // order they are created. + actions []func([]interface{}) []interface{} +} + +// newCall creates a *Call. It requires the method type in order to support +// unexported methods. +func newCall(t TestHelper, receiver interface{}, method string, methodType reflect.Type, args ...interface{}) *Call { + t.Helper() + + // TODO: check arity, types. + margs := make([]Matcher, len(args)) + for i, arg := range args { + if m, ok := arg.(Matcher); ok { + margs[i] = m + } else if arg == nil { + // Handle nil specially so that passing a nil interface value + // will match the typed nils of concrete args. + margs[i] = Nil() + } else { + margs[i] = Eq(arg) + } + } + + origin := callerInfo(3) + actions := []func([]interface{}) []interface{}{func([]interface{}) []interface{} { + // Synthesize the zero value for each of the return args' types. + rets := make([]interface{}, methodType.NumOut()) + for i := 0; i < methodType.NumOut(); i++ { + rets[i] = reflect.Zero(methodType.Out(i)).Interface() + } + return rets + }} + return &Call{t: t, receiver: receiver, method: method, methodType: methodType, + args: margs, origin: origin, minCalls: 1, maxCalls: 1, actions: actions} +} + +// AnyTimes allows the expectation to be called 0 or more times +func (c *Call) AnyTimes() *Call { + c.minCalls, c.maxCalls = 0, 1e8 // close enough to infinity + return c +} + +// MinTimes requires the call to occur at least n times. If AnyTimes or MaxTimes have not been called, MinTimes also +// sets the maximum number of calls to infinity. +func (c *Call) MinTimes(n int) *Call { + c.minCalls = n + if c.maxCalls == 1 { + c.maxCalls = 1e8 + } + return c +} + +// MaxTimes limits the number of calls to n times. If AnyTimes or MinTimes have not been called, MaxTimes also +// sets the minimum number of calls to 0. +func (c *Call) MaxTimes(n int) *Call { + c.maxCalls = n + if c.minCalls == 1 { + c.minCalls = 0 + } + return c +} + +// DoAndReturn declares the action to run when the call is matched. +// The return values from this function are returned by the mocked function. +// It takes an interface{} argument to support n-arity functions. +func (c *Call) DoAndReturn(f interface{}) *Call { + // TODO: Check arity and types here, rather than dying badly elsewhere. + v := reflect.ValueOf(f) + + c.addAction(func(args []interface{}) []interface{} { + vargs := make([]reflect.Value, len(args)) + ft := v.Type() + for i := 0; i < len(args); i++ { + if args[i] != nil { + vargs[i] = reflect.ValueOf(args[i]) + } else { + // Use the zero value for the arg. + vargs[i] = reflect.Zero(ft.In(i)) + } + } + vrets := v.Call(vargs) + rets := make([]interface{}, len(vrets)) + for i, ret := range vrets { + rets[i] = ret.Interface() + } + return rets + }) + return c +} + +// Do declares the action to run when the call is matched. The function's +// return values are ignored to retain backward compatibility. To use the +// return values call DoAndReturn. +// It takes an interface{} argument to support n-arity functions. +func (c *Call) Do(f interface{}) *Call { + // TODO: Check arity and types here, rather than dying badly elsewhere. + v := reflect.ValueOf(f) + + c.addAction(func(args []interface{}) []interface{} { + vargs := make([]reflect.Value, len(args)) + ft := v.Type() + for i := 0; i < len(args); i++ { + if args[i] != nil { + vargs[i] = reflect.ValueOf(args[i]) + } else { + // Use the zero value for the arg. + vargs[i] = reflect.Zero(ft.In(i)) + } + } + v.Call(vargs) + return nil + }) + return c +} + +// Return declares the values to be returned by the mocked function call. +func (c *Call) Return(rets ...interface{}) *Call { + c.t.Helper() + + mt := c.methodType + if len(rets) != mt.NumOut() { + c.t.Fatalf("wrong number of arguments to Return for %T.%v: got %d, want %d [%s]", + c.receiver, c.method, len(rets), mt.NumOut(), c.origin) + } + for i, ret := range rets { + if got, want := reflect.TypeOf(ret), mt.Out(i); got == want { + // Identical types; nothing to do. + } else if got == nil { + // Nil needs special handling. + switch want.Kind() { + case reflect.Chan, reflect.Func, reflect.Interface, reflect.Map, reflect.Ptr, reflect.Slice: + // ok + default: + c.t.Fatalf("argument %d to Return for %T.%v is nil, but %v is not nillable [%s]", + i, c.receiver, c.method, want, c.origin) + } + } else if got.AssignableTo(want) { + // Assignable type relation. Make the assignment now so that the generated code + // can return the values with a type assertion. + v := reflect.New(want).Elem() + v.Set(reflect.ValueOf(ret)) + rets[i] = v.Interface() + } else { + c.t.Fatalf("wrong type of argument %d to Return for %T.%v: %v is not assignable to %v [%s]", + i, c.receiver, c.method, got, want, c.origin) + } + } + + c.addAction(func([]interface{}) []interface{} { + return rets + }) + + return c +} + +// Times declares the exact number of times a function call is expected to be executed. +func (c *Call) Times(n int) *Call { + c.minCalls, c.maxCalls = n, n + return c +} + +// SetArg declares an action that will set the nth argument's value, +// indirected through a pointer. Or, in the case of a slice, SetArg +// will copy value's elements into the nth argument. +func (c *Call) SetArg(n int, value interface{}) *Call { + c.t.Helper() + + mt := c.methodType + // TODO: This will break on variadic methods. + // We will need to check those at invocation time. + if n < 0 || n >= mt.NumIn() { + c.t.Fatalf("SetArg(%d, ...) called for a method with %d args [%s]", + n, mt.NumIn(), c.origin) + } + // Permit setting argument through an interface. + // In the interface case, we don't (nay, can't) check the type here. + at := mt.In(n) + switch at.Kind() { + case reflect.Ptr: + dt := at.Elem() + if vt := reflect.TypeOf(value); !vt.AssignableTo(dt) { + c.t.Fatalf("SetArg(%d, ...) argument is a %v, not assignable to %v [%s]", + n, vt, dt, c.origin) + } + case reflect.Interface: + // nothing to do + case reflect.Slice: + // nothing to do + default: + c.t.Fatalf("SetArg(%d, ...) referring to argument of non-pointer non-interface non-slice type %v [%s]", + n, at, c.origin) + } + + c.addAction(func(args []interface{}) []interface{} { + v := reflect.ValueOf(value) + switch reflect.TypeOf(args[n]).Kind() { + case reflect.Slice: + setSlice(args[n], v) + default: + reflect.ValueOf(args[n]).Elem().Set(v) + } + return nil + }) + return c +} + +// isPreReq returns true if other is a direct or indirect prerequisite to c. +func (c *Call) isPreReq(other *Call) bool { + for _, preReq := range c.preReqs { + if other == preReq || preReq.isPreReq(other) { + return true + } + } + return false +} + +// After declares that the call may only match after preReq has been exhausted. +func (c *Call) After(preReq *Call) *Call { + c.t.Helper() + + if c == preReq { + c.t.Fatalf("A call isn't allowed to be its own prerequisite") + } + if preReq.isPreReq(c) { + c.t.Fatalf("Loop in call order: %v is a prerequisite to %v (possibly indirectly).", c, preReq) + } + + c.preReqs = append(c.preReqs, preReq) + return c +} + +// Returns true if the minimum number of calls have been made. +func (c *Call) satisfied() bool { + return c.numCalls >= c.minCalls +} + +// Returns true iff the maximum number of calls have been made. +func (c *Call) exhausted() bool { + return c.numCalls >= c.maxCalls +} + +func (c *Call) String() string { + args := make([]string, len(c.args)) + for i, arg := range c.args { + args[i] = arg.String() + } + arguments := strings.Join(args, ", ") + return fmt.Sprintf("%T.%v(%s) %s", c.receiver, c.method, arguments, c.origin) +} + +// Tests if the given call matches the expected call. +// If yes, returns nil. If no, returns error with message explaining why it does not match. +func (c *Call) matches(args []interface{}) error { + if !c.methodType.IsVariadic() { + if len(args) != len(c.args) { + return fmt.Errorf("Expected call at %s has the wrong number of arguments. Got: %d, want: %d", + c.origin, len(args), len(c.args)) + } + + for i, m := range c.args { + if !m.Matches(args[i]) { + return fmt.Errorf("Expected call at %s doesn't match the argument at index %s.\nGot: %v\nWant: %v", + c.origin, strconv.Itoa(i), args[i], m) + } + } + } else { + if len(c.args) < c.methodType.NumIn()-1 { + return fmt.Errorf("Expected call at %s has the wrong number of matchers. Got: %d, want: %d", + c.origin, len(c.args), c.methodType.NumIn()-1) + } + if len(c.args) != c.methodType.NumIn() && len(args) != len(c.args) { + return fmt.Errorf("Expected call at %s has the wrong number of arguments. Got: %d, want: %d", + c.origin, len(args), len(c.args)) + } + if len(args) < len(c.args)-1 { + return fmt.Errorf("Expected call at %s has the wrong number of arguments. Got: %d, want: greater than or equal to %d", + c.origin, len(args), len(c.args)-1) + } + + for i, m := range c.args { + if i < c.methodType.NumIn()-1 { + // Non-variadic args + if !m.Matches(args[i]) { + return fmt.Errorf("Expected call at %s doesn't match the argument at index %s.\nGot: %v\nWant: %v", + c.origin, strconv.Itoa(i), args[i], m) + } + continue + } + // The last arg has a possibility of a variadic argument, so let it branch + + // sample: Foo(a int, b int, c ...int) + if i < len(c.args) && i < len(args) { + if m.Matches(args[i]) { + // Got Foo(a, b, c) want Foo(matcherA, matcherB, gomock.Any()) + // Got Foo(a, b, c) want Foo(matcherA, matcherB, someSliceMatcher) + // Got Foo(a, b, c) want Foo(matcherA, matcherB, matcherC) + // Got Foo(a, b) want Foo(matcherA, matcherB) + // Got Foo(a, b, c, d) want Foo(matcherA, matcherB, matcherC, matcherD) + continue + } + } + + // The number of actual args don't match the number of matchers, + // or the last matcher is a slice and the last arg is not. + // If this function still matches it is because the last matcher + // matches all the remaining arguments or the lack of any. + // Convert the remaining arguments, if any, into a slice of the + // expected type. + vargsType := c.methodType.In(c.methodType.NumIn() - 1) + vargs := reflect.MakeSlice(vargsType, 0, len(args)-i) + for _, arg := range args[i:] { + vargs = reflect.Append(vargs, reflect.ValueOf(arg)) + } + if m.Matches(vargs.Interface()) { + // Got Foo(a, b, c, d, e) want Foo(matcherA, matcherB, gomock.Any()) + // Got Foo(a, b, c, d, e) want Foo(matcherA, matcherB, someSliceMatcher) + // Got Foo(a, b) want Foo(matcherA, matcherB, gomock.Any()) + // Got Foo(a, b) want Foo(matcherA, matcherB, someEmptySliceMatcher) + break + } + // Wrong number of matchers or not match. Fail. + // Got Foo(a, b) want Foo(matcherA, matcherB, matcherC, matcherD) + // Got Foo(a, b, c) want Foo(matcherA, matcherB, matcherC, matcherD) + // Got Foo(a, b, c, d) want Foo(matcherA, matcherB, matcherC, matcherD, matcherE) + // Got Foo(a, b, c, d, e) want Foo(matcherA, matcherB, matcherC, matcherD) + // Got Foo(a, b, c) want Foo(matcherA, matcherB) + return fmt.Errorf("Expected call at %s doesn't match the argument at index %s.\nGot: %v\nWant: %v", + c.origin, strconv.Itoa(i), args[i:], c.args[i]) + + } + } + + // Check that all prerequisite calls have been satisfied. + for _, preReqCall := range c.preReqs { + if !preReqCall.satisfied() { + return fmt.Errorf("Expected call at %s doesn't have a prerequisite call satisfied:\n%v\nshould be called before:\n%v", + c.origin, preReqCall, c) + } + } + + // Check that the call is not exhausted. + if c.exhausted() { + return fmt.Errorf("Expected call at %s has already been called the max number of times.", c.origin) + } + + return nil +} + +// dropPrereqs tells the expected Call to not re-check prerequisite calls any +// longer, and to return its current set. +func (c *Call) dropPrereqs() (preReqs []*Call) { + preReqs = c.preReqs + c.preReqs = nil + return +} + +func (c *Call) call(args []interface{}) []func([]interface{}) []interface{} { + c.numCalls++ + return c.actions +} + +// InOrder declares that the given calls should occur in order. +func InOrder(calls ...*Call) { + for i := 1; i < len(calls); i++ { + calls[i].After(calls[i-1]) + } +} + +func setSlice(arg interface{}, v reflect.Value) { + va := reflect.ValueOf(arg) + for i := 0; i < v.Len(); i++ { + va.Index(i).Set(v.Index(i)) + } +} + +func (c *Call) addAction(action func([]interface{}) []interface{}) { + c.actions = append(c.actions, action) +} diff --git a/vendor/github.com/golang/mock/gomock/callset.go b/vendor/github.com/golang/mock/gomock/callset.go new file mode 100644 index 000000000..c44a8a585 --- /dev/null +++ b/vendor/github.com/golang/mock/gomock/callset.go @@ -0,0 +1,108 @@ +// Copyright 2011 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package gomock + +import ( + "bytes" + "fmt" +) + +// callSet represents a set of expected calls, indexed by receiver and method +// name. +type callSet struct { + // Calls that are still expected. + expected map[callSetKey][]*Call + // Calls that have been exhausted. + exhausted map[callSetKey][]*Call +} + +// callSetKey is the key in the maps in callSet +type callSetKey struct { + receiver interface{} + fname string +} + +func newCallSet() *callSet { + return &callSet{make(map[callSetKey][]*Call), make(map[callSetKey][]*Call)} +} + +// Add adds a new expected call. +func (cs callSet) Add(call *Call) { + key := callSetKey{call.receiver, call.method} + m := cs.expected + if call.exhausted() { + m = cs.exhausted + } + m[key] = append(m[key], call) +} + +// Remove removes an expected call. +func (cs callSet) Remove(call *Call) { + key := callSetKey{call.receiver, call.method} + calls := cs.expected[key] + for i, c := range calls { + if c == call { + // maintain order for remaining calls + cs.expected[key] = append(calls[:i], calls[i+1:]...) + cs.exhausted[key] = append(cs.exhausted[key], call) + break + } + } +} + +// FindMatch searches for a matching call. Returns error with explanation message if no call matched. +func (cs callSet) FindMatch(receiver interface{}, method string, args []interface{}) (*Call, error) { + key := callSetKey{receiver, method} + + // Search through the expected calls. + expected := cs.expected[key] + var callsErrors bytes.Buffer + for _, call := range expected { + err := call.matches(args) + if err != nil { + fmt.Fprintf(&callsErrors, "\n%v", err) + } else { + return call, nil + } + } + + // If we haven't found a match then search through the exhausted calls so we + // get useful error messages. + exhausted := cs.exhausted[key] + for _, call := range exhausted { + if err := call.matches(args); err != nil { + fmt.Fprintf(&callsErrors, "\n%v", err) + } + } + + if len(expected)+len(exhausted) == 0 { + fmt.Fprintf(&callsErrors, "there are no expected calls of the method %q for that receiver", method) + } + + return nil, fmt.Errorf(callsErrors.String()) +} + +// Failures returns the calls that are not satisfied. +func (cs callSet) Failures() []*Call { + failures := make([]*Call, 0, len(cs.expected)) + for _, calls := range cs.expected { + for _, call := range calls { + if !call.satisfied() { + failures = append(failures, call) + } + } + } + return failures +} diff --git a/vendor/github.com/golang/mock/gomock/controller.go b/vendor/github.com/golang/mock/gomock/controller.go new file mode 100644 index 000000000..0651c91e4 --- /dev/null +++ b/vendor/github.com/golang/mock/gomock/controller.go @@ -0,0 +1,264 @@ +// Copyright 2010 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +// Package gomock is a mock framework for Go. +// +// Standard usage: +// (1) Define an interface that you wish to mock. +// type MyInterface interface { +// SomeMethod(x int64, y string) +// } +// (2) Use mockgen to generate a mock from the interface. +// (3) Use the mock in a test: +// func TestMyThing(t *testing.T) { +// mockCtrl := gomock.NewController(t) +// defer mockCtrl.Finish() +// +// mockObj := something.NewMockMyInterface(mockCtrl) +// mockObj.EXPECT().SomeMethod(4, "blah") +// // pass mockObj to a real object and play with it. +// } +// +// By default, expected calls are not enforced to run in any particular order. +// Call order dependency can be enforced by use of InOrder and/or Call.After. +// Call.After can create more varied call order dependencies, but InOrder is +// often more convenient. +// +// The following examples create equivalent call order dependencies. +// +// Example of using Call.After to chain expected call order: +// +// firstCall := mockObj.EXPECT().SomeMethod(1, "first") +// secondCall := mockObj.EXPECT().SomeMethod(2, "second").After(firstCall) +// mockObj.EXPECT().SomeMethod(3, "third").After(secondCall) +// +// Example of using InOrder to declare expected call order: +// +// gomock.InOrder( +// mockObj.EXPECT().SomeMethod(1, "first"), +// mockObj.EXPECT().SomeMethod(2, "second"), +// mockObj.EXPECT().SomeMethod(3, "third"), +// ) +// +// TODO: +// - Handle different argument/return types (e.g. ..., chan, map, interface). +package gomock + +import ( + "context" + "fmt" + "reflect" + "runtime" + "sync" +) + +// A TestReporter is something that can be used to report test failures. It +// is satisfied by the standard library's *testing.T. +type TestReporter interface { + Errorf(format string, args ...interface{}) + Fatalf(format string, args ...interface{}) +} + +// TestHelper is a TestReporter that has the Helper method. It is satisfied +// by the standard library's *testing.T. +type TestHelper interface { + TestReporter + Helper() +} + +// A Controller represents the top-level control of a mock ecosystem. It +// defines the scope and lifetime of mock objects, as well as their +// expectations. It is safe to call Controller's methods from multiple +// goroutines. Each test should create a new Controller and invoke Finish via +// defer. +// +// func TestFoo(t *testing.T) { +// ctrl := gomock.NewController(st) +// defer ctrl.Finish() +// // .. +// } +// +// func TestBar(t *testing.T) { +// t.Run("Sub-Test-1", st) { +// ctrl := gomock.NewController(st) +// defer ctrl.Finish() +// // .. +// }) +// t.Run("Sub-Test-2", st) { +// ctrl := gomock.NewController(st) +// defer ctrl.Finish() +// // .. +// }) +// }) +type Controller struct { + // T should only be called within a generated mock. It is not intended to + // be used in user code and may be changed in future versions. T is the + // TestReporter passed in when creating the Controller via NewController. + // If the TestReporter does not implement a TestHelper it will be wrapped + // with a nopTestHelper. + T TestHelper + mu sync.Mutex + expectedCalls *callSet + finished bool +} + +// NewController returns a new Controller. It is the preferred way to create a +// Controller. +func NewController(t TestReporter) *Controller { + h, ok := t.(TestHelper) + if !ok { + h = nopTestHelper{t} + } + + return &Controller{ + T: h, + expectedCalls: newCallSet(), + } +} + +type cancelReporter struct { + TestHelper + cancel func() +} + +func (r *cancelReporter) Errorf(format string, args ...interface{}) { + r.TestHelper.Errorf(format, args...) +} +func (r *cancelReporter) Fatalf(format string, args ...interface{}) { + defer r.cancel() + r.TestHelper.Fatalf(format, args...) +} + +// WithContext returns a new Controller and a Context, which is cancelled on any +// fatal failure. +func WithContext(ctx context.Context, t TestReporter) (*Controller, context.Context) { + h, ok := t.(TestHelper) + if !ok { + h = nopTestHelper{t} + } + + ctx, cancel := context.WithCancel(ctx) + return NewController(&cancelReporter{h, cancel}), ctx +} + +type nopTestHelper struct { + TestReporter +} + +func (h nopTestHelper) Helper() {} + +// RecordCall is called by a mock. It should not be called by user code. +func (ctrl *Controller) RecordCall(receiver interface{}, method string, args ...interface{}) *Call { + ctrl.T.Helper() + + recv := reflect.ValueOf(receiver) + for i := 0; i < recv.Type().NumMethod(); i++ { + if recv.Type().Method(i).Name == method { + return ctrl.RecordCallWithMethodType(receiver, method, recv.Method(i).Type(), args...) + } + } + ctrl.T.Fatalf("gomock: failed finding method %s on %T", method, receiver) + panic("unreachable") +} + +// RecordCallWithMethodType is called by a mock. It should not be called by user code. +func (ctrl *Controller) RecordCallWithMethodType(receiver interface{}, method string, methodType reflect.Type, args ...interface{}) *Call { + ctrl.T.Helper() + + call := newCall(ctrl.T, receiver, method, methodType, args...) + + ctrl.mu.Lock() + defer ctrl.mu.Unlock() + ctrl.expectedCalls.Add(call) + + return call +} + +// Call is called by a mock. It should not be called by user code. +func (ctrl *Controller) Call(receiver interface{}, method string, args ...interface{}) []interface{} { + ctrl.T.Helper() + + // Nest this code so we can use defer to make sure the lock is released. + actions := func() []func([]interface{}) []interface{} { + ctrl.T.Helper() + ctrl.mu.Lock() + defer ctrl.mu.Unlock() + + expected, err := ctrl.expectedCalls.FindMatch(receiver, method, args) + if err != nil { + origin := callerInfo(2) + ctrl.T.Fatalf("Unexpected call to %T.%v(%v) at %s because: %s", receiver, method, args, origin, err) + } + + // Two things happen here: + // * the matching call no longer needs to check prerequite calls, + // * and the prerequite calls are no longer expected, so remove them. + preReqCalls := expected.dropPrereqs() + for _, preReqCall := range preReqCalls { + ctrl.expectedCalls.Remove(preReqCall) + } + + actions := expected.call(args) + if expected.exhausted() { + ctrl.expectedCalls.Remove(expected) + } + return actions + }() + + var rets []interface{} + for _, action := range actions { + if r := action(args); r != nil { + rets = r + } + } + + return rets +} + +// Finish checks to see if all the methods that were expected to be called +// were called. It should be invoked for each Controller. It is not idempotent +// and therefore can only be invoked once. +func (ctrl *Controller) Finish() { + ctrl.T.Helper() + + ctrl.mu.Lock() + defer ctrl.mu.Unlock() + + if ctrl.finished { + ctrl.T.Fatalf("Controller.Finish was called more than once. It has to be called exactly once.") + } + ctrl.finished = true + + // If we're currently panicking, probably because this is a deferred call, + // pass through the panic. + if err := recover(); err != nil { + panic(err) + } + + // Check that all remaining expected calls are satisfied. + failures := ctrl.expectedCalls.Failures() + for _, call := range failures { + ctrl.T.Errorf("missing call(s) to %v", call) + } + if len(failures) != 0 { + ctrl.T.Fatalf("aborting test due to missing call(s)") + } +} + +func callerInfo(skip int) string { + if _, file, line, ok := runtime.Caller(skip + 1); ok { + return fmt.Sprintf("%s:%d", file, line) + } + return "unknown file" +} diff --git a/vendor/github.com/golang/mock/gomock/matchers.go b/vendor/github.com/golang/mock/gomock/matchers.go new file mode 100644 index 000000000..fbff06062 --- /dev/null +++ b/vendor/github.com/golang/mock/gomock/matchers.go @@ -0,0 +1,141 @@ +// Copyright 2010 Google Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package gomock + +import ( + "fmt" + "reflect" +) + +// A Matcher is a representation of a class of values. +// It is used to represent the valid or expected arguments to a mocked method. +type Matcher interface { + // Matches returns whether x is a match. + Matches(x interface{}) bool + + // String describes what the matcher matches. + String() string +} + +type anyMatcher struct{} + +func (anyMatcher) Matches(x interface{}) bool { + return true +} + +func (anyMatcher) String() string { + return "is anything" +} + +type eqMatcher struct { + x interface{} +} + +func (e eqMatcher) Matches(x interface{}) bool { + return reflect.DeepEqual(e.x, x) +} + +func (e eqMatcher) String() string { + return fmt.Sprintf("is equal to %v", e.x) +} + +type nilMatcher struct{} + +func (nilMatcher) Matches(x interface{}) bool { + if x == nil { + return true + } + + v := reflect.ValueOf(x) + switch v.Kind() { + case reflect.Chan, reflect.Func, reflect.Interface, reflect.Map, + reflect.Ptr, reflect.Slice: + return v.IsNil() + } + + return false +} + +func (nilMatcher) String() string { + return "is nil" +} + +type notMatcher struct { + m Matcher +} + +func (n notMatcher) Matches(x interface{}) bool { + return !n.m.Matches(x) +} + +func (n notMatcher) String() string { + // TODO: Improve this if we add a NotString method to the Matcher interface. + return "not(" + n.m.String() + ")" +} + +type assignableToTypeOfMatcher struct { + targetType reflect.Type +} + +func (m assignableToTypeOfMatcher) Matches(x interface{}) bool { + return reflect.TypeOf(x).AssignableTo(m.targetType) +} + +func (m assignableToTypeOfMatcher) String() string { + return "is assignable to " + m.targetType.Name() +} + +// Constructors +// Any returns a matcher that always matches. +func Any() Matcher { return anyMatcher{} } + +// Eq returns a matcher that matches on equality. +// +// Example usage: +// Eq(5).Matches(5) // returns true +// Eq(5).Matches(4) // returns false +func Eq(x interface{}) Matcher { return eqMatcher{x} } + +// Nil returns a matcher that matches if the received value is nil. +// +// Example usage: +// var x *bytes.Buffer +// Nil().Matches(x) // returns true +// x = &bytes.Buffer{} +// Nil().Matches(x) // returns false +func Nil() Matcher { return nilMatcher{} } + +// Not reverses the results of its given child matcher. +// +// Example usage: +// Not(Eq(5)).Matches(4) // returns true +// Not(Eq(5)).Matches(5) // returns false +func Not(x interface{}) Matcher { + if m, ok := x.(Matcher); ok { + return notMatcher{m} + } + return notMatcher{Eq(x)} +} + +// AssignableToTypeOf is a Matcher that matches if the parameter to the mock +// function is assignable to the type of the parameter to this function. +// +// Example usage: +// var s fmt.Stringer = &bytes.Buffer{} +// AssignableToTypeOf(s).Matches(time.Second) // returns true +// AssignableToTypeOf(s).Matches(99) // returns false +func AssignableToTypeOf(x interface{}) Matcher { + return assignableToTypeOfMatcher{reflect.TypeOf(x)} +} diff --git a/vendor/modules.txt b/vendor/modules.txt index 59b32ee95..1b4bd6e57 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -30,6 +30,8 @@ github.com/gogo/protobuf/proto github.com/gogo/protobuf/sortkeys # github.com/golang/groupcache v0.0.0-20191027212112-611e8accdfc9 github.com/golang/groupcache/lru +# github.com/golang/mock v1.3.1 +github.com/golang/mock/gomock # github.com/golang/protobuf v1.3.2 github.com/golang/protobuf/proto github.com/golang/protobuf/ptypes @@ -408,7 +410,6 @@ sigs.k8s.io/controller-runtime/pkg/leaderelection sigs.k8s.io/controller-runtime/pkg/log sigs.k8s.io/controller-runtime/pkg/log/zap sigs.k8s.io/controller-runtime/pkg/manager -sigs.k8s.io/controller-runtime/pkg/manager/signals sigs.k8s.io/controller-runtime/pkg/metrics sigs.k8s.io/controller-runtime/pkg/predicate sigs.k8s.io/controller-runtime/pkg/reconcile diff --git a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/doc.go b/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/doc.go deleted file mode 100644 index 737cc7eff..000000000 --- a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/doc.go +++ /dev/null @@ -1,20 +0,0 @@ -/* -Copyright 2017 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -// Package signals contains libraries for handling signals to gracefully -// shutdown the manager in combination with Kubernetes pod graceful termination -// policy. -package signals diff --git a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal.go b/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal.go deleted file mode 100644 index 08eaef7b4..000000000 --- a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal.go +++ /dev/null @@ -1,43 +0,0 @@ -/* -Copyright 2017 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package signals - -import ( - "os" - "os/signal" -) - -var onlyOneSignalHandler = make(chan struct{}) - -// SetupSignalHandler registers for SIGTERM and SIGINT. A stop channel is returned -// which is closed on one of these signals. If a second signal is caught, the program -// is terminated with exit code 1. -func SetupSignalHandler() (stopCh <-chan struct{}) { - close(onlyOneSignalHandler) // panics when called twice - - stop := make(chan struct{}) - c := make(chan os.Signal, 2) - signal.Notify(c, shutdownSignals...) - go func() { - <-c - close(stop) - <-c - os.Exit(1) // second signal. Exit directly. - }() - - return stop -} diff --git a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_posix.go b/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_posix.go deleted file mode 100644 index 9bdb4e741..000000000 --- a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_posix.go +++ /dev/null @@ -1,26 +0,0 @@ -// +build !windows - -/* -Copyright 2017 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package signals - -import ( - "os" - "syscall" -) - -var shutdownSignals = []os.Signal{os.Interrupt, syscall.SIGTERM} diff --git a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_windows.go b/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_windows.go deleted file mode 100644 index 4907d573f..000000000 --- a/vendor/sigs.k8s.io/controller-runtime/pkg/manager/signals/signal_windows.go +++ /dev/null @@ -1,23 +0,0 @@ -/* -Copyright 2017 The Kubernetes Authors. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -*/ - -package signals - -import ( - "os" -) - -var shutdownSignals = []os.Signal{os.Interrupt}