fix: correct CSVs and metadata (#999)

* chore: Update CSVs
* Disable some score card tests which we can't satisfy. 
* Fix alm-examples usage in the scripts.

Signed-off-by: Anatolii Bazko <abazko@redhat.com>

Co-authored-by: Oleksandr Andriienko <oandriie@redhat.com>
pull/1098/head
Anatolii Bazko 2021-09-29 14:42:45 +03:00 committed by GitHub
parent a7ee1e6d7e
commit c43e9d61f2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
28 changed files with 887 additions and 120 deletions

View File

@ -436,7 +436,7 @@ patchEclipseCheOperatorImage() {
applyOlmCR() {
echo "Creating Custom Resource"
CR=$(yq -r '.metadata.annotations["alm-examples"]' "${OPENSHIFT_NEXT_CSV_FILE}" | yq -r ".[0]")
CR=$(yq -r ".metadata.annotations[\"alm-examples\"] | fromjson | .[] | select(.kind == \"CheCluster\")" "${OPENSHIFT_NEXT_CSV_FILE}")
CR=$(echo "$CR" | yq -r ".spec.server.serverExposureStrategy = \"${CHE_EXPOSURE_STRATEGY}\"")
CR=$(echo "$CR" | yq -r ".spec.devWorkspace.enable = ${DEV_WORKSPACE_ENABLE:-false}")
CR=$(echo "$CR" | yq -r ".spec.imagePuller.enable = ${IMAGE_PULLER_ENABLE:-false}")

View File

@ -615,24 +615,21 @@ bundle: generate manifests kustomize ## Generate bundle manifests and metadata,
fi
# Fix CSV
echo "[INFO] Fix $${platform} CSV"
if [ "$${platform}" = "openshift" ]; then
echo "[INFO] Fix openshift sample"
sample=$$(yq -r ".metadata.annotations.\"alm-examples\"" "$${NEW_CSV}")
fixedSample=$$(echo "$${sample}" | yq -r ".[0] | del(.spec.k8s) | [.]" | sed -r 's/"/\\"/g')
# Update sample in the CSV
yq -rY " (.metadata.annotations.\"alm-examples\") = \"$${fixedSample}\"" "$${NEW_CSV}" > "$${NEW_CSV}.old"
mv "$${NEW_CSV}.old" "$${NEW_CSV}"
fixedSample=$$(yq -r ".metadata.annotations[\"alm-examples\"] | \
fromjson | \
del( .[] | select(.kind == \"CheCluster\") | .spec.k8s)" $${NEW_CSV} | sed -r 's/"/\\"/g')
yq -riY ".metadata.annotations[\"alm-examples\"] = \"$${fixedSample}\"" $${NEW_CSV}
fi
if [ "$${platform}" = "kubernetes" ]; then
echo "[INFO] Fix kubernetes sample"
sample=$$(yq -r ".metadata.annotations.\"alm-examples\"" "$${NEW_CSV}")
fixedSample=$$(echo "$${sample}" | yq -r ".[0] | (.spec.k8s.ingressDomain) = \"\" | del(.spec.auth.openShiftoAuth) | [.]" | sed -r 's/"/\\"/g')
# Update sample in the CSV
yq -rY " (.metadata.annotations.\"alm-examples\") = \"$${fixedSample}\"" "$${NEW_CSV}" > "$${NEW_CSV}.old"
mv "$${NEW_CSV}.old" "$${NEW_CSV}"
fixedSample=$$(yq -r ".metadata.annotations[\"alm-examples\"] | \
fromjson | \
del( .[] | select(.kind == \"CheCluster\") | .spec.auth.openShiftoAuth) | \
( .[] | select(.kind == \"CheCluster\") | .spec.k8s.ingressDomain) |= \"\" " $${NEW_CSV} | sed -r 's/"/\\"/g')
# Update annotations
echo "[INFO] Update kubernetes annotations"
yq -riY ".metadata.annotations[\"alm-examples\"] = \"$${fixedSample}\"" $${NEW_CSV}
yq -rYi "del(.metadata.annotations.\"operators.openshift.io/infrastructure-features\")" "$${NEW_CSV}"
fi

View File

@ -30,12 +30,15 @@ const (
type CheBackupServerConfigurationSpec struct {
// Rest backup server configuration.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Rest server"
Rest *RestServerConfig `json:"rest,omitempty"`
// Amazon S3 or compatible alternatives.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="AwsS3 server"
AwsS3 *AwsS3ServerConfig `json:"awss3,omitempty"`
// Sftp backup server configuration.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Sftp server"
Sftp *SftpServerConfing `json:"sftp,omitempty"`
}
@ -117,6 +120,7 @@ type CheBackupServerConfigurationStatus struct {
// +k8s:openapi-gen=true
// +operator-sdk:csv:customresourcedefinitions:displayName="Eclipse Che Backup Server"
// +operator-sdk:csv:customresourcedefinitions:order=1
// +operator-sdk:csv:customresourcedefinitions:resources={}
type CheBackupServerConfiguration struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`

View File

@ -35,38 +35,43 @@ import (
// the various components of the Che installation.
// These generated ConfigMaps must NOT be updated manually.
type CheClusterSpec struct {
// General configuration settings related to the Che server
// and the plugin and devfile registries
// General configuration settings related to the Che server, the plugin and devfile registries
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Che server"
Server CheClusterSpecServer `json:"server"`
// Configuration settings related to the database used by the Che installation.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Database"
Database CheClusterSpecDB `json:"database"`
// Configuration settings related to the Authentication used by the Che installation.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Authentication"
Auth CheClusterSpecAuth `json:"auth"`
// Configuration settings related to the persistent storage used by the Che installation.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Persistent storage"
Storage CheClusterSpecStorage `json:"storage"`
// Configuration settings related to the metrics collection used by the Che installation.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Metrics"
Metrics CheClusterSpecMetrics `json:"metrics"`
// Configuration settings specific to Che installations made on upstream Kubernetes.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Kubernetes"
K8s CheClusterSpecK8SOnly `json:"k8s"`
// Kubernetes Image Puller configuration
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Kubernetes Image Puller"
ImagePuller CheClusterSpecImagePuller `json:"imagePuller"`
// DevWorkspace operator configuration
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Dev Workspace operator"
DevWorkspace CheClusterSpecDevWorkspace `json:"devWorkspace"`
}
// +k8s:openapi-gen=true
// General configuration settings related to the Che server
// and the plugin and devfile registries.
// General configuration settings related to the Che server, the plugin and devfile registries.
type CheClusterSpecServer struct {
// Optional host name, or URL, to an alternate container registry to pull images from.
// This value overrides the container registry host name defined in all the default container images involved in a Che deployment.
@ -125,10 +130,12 @@ type CheClusterSpecServer struct {
// Defines that a user is allowed to specify a Kubernetes namespace, or an OpenShift project, which differs from the default.
// It's NOT RECOMMENDED to set to `true` without OpenShift OAuth configured. The OpenShift infrastructure also uses this property.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
AllowUserDefinedWorkspaceNamespaces bool `json:"allowUserDefinedWorkspaceNamespaces"`
// Deprecated. The value of this flag is ignored.
// The Che Operator will automatically detect whether the router certificate is self-signed and propagate it to other components, such as the Che server.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
SelfSignedCert bool `json:"selfSignedCert"`
// Name of the ConfigMap with public certificates to add to Java trust store of the Che server.
// This is often required when adding the OpenShift OAuth provider, which has HTTPS endpoint signed with self-signed cert.
@ -140,9 +147,11 @@ type CheClusterSpecServer struct {
GitSelfSignedCert bool `json:"gitSelfSignedCert"`
// Deprecated. Instructs the Operator to deploy Che in TLS mode. This is enabled by default. Disabling TLS sometimes cause malfunction of some Che components.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
TlsSupport bool `json:"tlsSupport"`
// Deprecated in favor of `disableInternalClusterSVCNames`.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
UseInternalClusterSVCNames bool `json:"useInternalClusterSVCNames"`
// Disable internal cluster SVC names usage to communicate between components to speed up the traffic and avoid proxy issues.
// +optional
@ -177,6 +186,7 @@ type CheClusterSpecServer struct {
DashboardRoute RouteCustomSettings `json:"dashboardRoute,omitempty"`
// Deprecated in favor of `externalDevfileRegistries` fields.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
DevfileRegistryUrl string `json:"devfileRegistryUrl,omitempty"`
// Overrides the container image used in the devfile registry deployment.
// This includes the image tag. Omit it or leave it empty to use the default container image provided by the Operator.
@ -480,6 +490,8 @@ type CheClusterSpecAuth struct {
// +optional
GatewayAuthorizationSidecarImage string `json:"gatewayAuthorizationSidecarImage,omitempty"`
// Deprecated. The value of this flag is ignored. Sidecar functionality is now implemented in Traefik plugin.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:hidden"
GatewayHeaderRewriteSidecarImage string `json:"gatewayHeaderRewriteSidecarImage,omitempty"`
// Debug internal identity provider.
@ -724,6 +736,7 @@ type CheClusterStatus struct {
// +k8s:openapi-gen=true
// +operator-sdk:csv:customresourcedefinitions:displayName="Eclipse Che instance Specification"
// +operator-sdk:csv:customresourcedefinitions:order=0
// +operator-sdk:csv:customresourcedefinitions:resources={{Ingress,v1},{Route,v1},{ConfigMap,v1},{Service,v1},{Secret,v1},{Deployment,apps/v1},{Role,v1},{RoleBinding,v1},{ClusterRole,v1},{ClusterRoleBinding,v1}}
// +kubebuilder:storageversion
type CheCluster struct {
metav1.TypeMeta `json:",inline"`

View File

@ -21,10 +21,14 @@ type CheClusterBackupSpec struct {
// Automatically setup pod with REST backup server and use the server in this configuration.
// Note, this flag takes precedence and will overwrite existing backup server configuration.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Use internal backup server"
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:booleanSwitch"
UseInternalBackupServer bool `json:"useInternalBackupServer,omitempty"`
// Name of custom resource with a backup server configuration to use for this backup.
// Note, UseInternalBackupServer field can configure internal backup server automatically.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Backup server configuration"
// +operator-sdk:csv:customresourcedefinitions:type=spec,xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
BackupServerConfigRef string `json:"backupServerConfigRef,omitempty"`
}
@ -32,15 +36,27 @@ type CheClusterBackupSpec struct {
type CheClusterBackupStatus struct {
// Message explaining the state of the backup or an error message
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Message"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:io.kubernetes.phase:reason"
Message string `json:"message,omitempty"`
// Backup progress state: InProgress, Failed, Succeeded
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Backup state"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:io.kubernetes.phase"
State string `json:"state,omitempty"`
// Describes backup progress
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Backup progress"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:text"
Phase string `json:"stage,omitempty"`
// Last backup snapshot ID
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Backup snapshot Id"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:text"
SnapshotId string `json:"snapshotId,omitempty"`
// Version that was backed up
// +optional
@ -54,6 +70,7 @@ type CheClusterBackupStatus struct {
// +k8s:openapi-gen=true
// +operator-sdk:csv:customresourcedefinitions:displayName="Eclipse Che instance Backup Specification"
// +operator-sdk:csv:customresourcedefinitions:order=2
// +operator-sdk:csv:customresourcedefinitions:resources={{Service,v1,backup-rest-server-service},{Deployment,apps/v1,backup-rest-server-deployment}}
type CheClusterBackup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`

View File

@ -20,10 +20,16 @@ import (
type CheClusterRestoreSpec struct { // Snapshot ID to restore from.
// If omitted, latest snapshot will be used.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +operator-sdk:csv:customresourcedefinitions:displayName="Backup snapshot id"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
SnapshotId string `json:"snapshotId,omitempty"`
// Name of custom resource with a backup server configuration to use for this restore.
// Can be omitted if only one server configuration object exists within the namespace.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +operator-sdk:csv:customresourcedefinitions:displayName="Backup server configuration"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:com.tectonic.ui:text"
BackupServerConfigRef string `json:"backupServerConfigRef,omitempty"`
}
@ -31,12 +37,21 @@ type CheClusterRestoreSpec struct { // Snapshot ID to restore from.
type CheClusterRestoreStatus struct {
// Restore result or error message
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Message"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:io.kubernetes.phase:reason"
Message string `json:"message,omitempty"`
// Describes phase of restore progress
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Restore progress"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:text"
Phase string `json:"stage,omitempty"`
// Restore progress state: InProgress, Failed, Succeeded
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=status
// +operator-sdk:csv:customresourcedefinitions:displayName="Restore state"
// +operator-sdk:csv:customresourcedefinitions:xDescriptors="urn:alm:descriptor:io.kubernetes.phase"
State string `json:"state,omitempty"`
}
@ -47,6 +62,7 @@ type CheClusterRestoreStatus struct {
// +k8s:openapi-gen=true
// +operator-sdk:csv:customresourcedefinitions:displayName="Eclipse Che instance Restore Specification"
// +operator-sdk:csv:customresourcedefinitions:order=3
// +operator-sdk:csv:customresourcedefinitions:resources={}
type CheClusterRestore struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`

View File

@ -168,6 +168,7 @@ type CheClusterStatusV2Alpha1 struct {
// +kubebuilder:subresource:status
// +kubebuilder:resource:path=checlusters,scope=Namespaced
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// +operator-sdk:csv:customresourcedefinitions:displayName="Eclipse Che Cluster"
type CheCluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`

View File

@ -4,6 +4,23 @@ metadata:
annotations:
alm-examples: |-
[
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheBackupServerConfiguration",
"metadata": {
"name": "eclipse-che-backup-server-configuration"
},
"spec": {
"awss3": {
"awsAccessKeySecretRef": "minio-credentials-secret",
"hostname": "minio.mydomain.net",
"port": 9000,
"protocol": "http",
"repositoryPasswordSecretRef": "secret-name",
"repositoryPath": "che-backups-bucket"
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheCluster",
@ -60,6 +77,27 @@ metadata:
"workspacePVCStorageClassName": ""
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterBackup",
"metadata": {
"name": "eclipse-che-backup"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration",
"useInternalBackupServer": false
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterRestore",
"metadata": {
"name": "eclipse-che-restore"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration"
}
}
]
capabilities: Seamless Upgrades
@ -76,7 +114,7 @@ metadata:
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/eclipse-che/che-operator
support: Eclipse Foundation
name: eclipse-che-preview-openshift.v7.37.0-353.next
name: eclipse-che-preview-openshift.v7.37.0-356.next
namespace: placeholder
spec:
apiservicedefinitions: {}
@ -87,7 +125,55 @@ spec:
displayName: Eclipse Che instance Specification
kind: CheCluster
name: checlusters.org.eclipse.che
resources:
- kind: ClusterRole
name: ''
version: v1
- kind: ClusterRoleBinding
name: ''
version: v1
- kind: ConfigMap
name: ''
version: v1
- kind: Deployment
name: ''
version: apps/v1
- kind: Ingress
name: ''
version: v1
- kind: Role
name: ''
version: v1
- kind: RoleBinding
name: ''
version: v1
- kind: Route
name: ''
version: v1
- kind: Secret
name: ''
version: v1
- kind: Service
name: ''
version: v1
specDescriptors:
- description: Configuration settings related to the Authentication used
by the Che installation.
displayName: Authentication
path: auth
- description: Deprecated. The value of this flag is ignored. Sidecar functionality
is now implemented in Traefik plugin.
displayName: Gateway Header Rewrite Sidecar Image
path: auth.gatewayHeaderRewriteSidecarImage
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the database used by the
Che installation.
displayName: Database
path: database
- description: DevWorkspace operator configuration
displayName: Dev Workspace operator
path: devWorkspace
- description: Deploys the DevWorkspace Operator in the cluster. Does nothing
when a matching version of the Operator is already installed. Fails
when a non-matching version of the Operator is already installed.
@ -95,6 +181,58 @@ spec:
path: devWorkspace.enable
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
- description: Kubernetes Image Puller configuration
displayName: Kubernetes Image Puller
path: imagePuller
- description: Configuration settings specific to Che installations made
on upstream Kubernetes.
displayName: Kubernetes
path: k8s
- description: Configuration settings related to the metrics collection
used by the Che installation.
displayName: Metrics
path: metrics
- description: General configuration settings related to the Che server,
the plugin and devfile registries
displayName: Che server
path: server
- description: Deprecated. The value of this flag is ignored. Defines that
a user is allowed to specify a Kubernetes namespace, or an OpenShift
project, which differs from the default. It's NOT RECOMMENDED to set
to `true` without OpenShift OAuth configured. The OpenShift infrastructure
also uses this property.
displayName: Allow User Defined Workspace Namespaces
path: server.allowUserDefinedWorkspaceNamespaces
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `externalDevfileRegistries` fields.
displayName: Devfile Registry Url
path: server.devfileRegistryUrl
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. The value of this flag is ignored. The Che Operator
will automatically detect whether the router certificate is self-signed
and propagate it to other components, such as the Che server.
displayName: Self Signed Cert
path: server.selfSignedCert
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. Instructs the Operator to deploy Che in TLS mode.
This is enabled by default. Disabling TLS sometimes cause malfunction
of some Che components.
displayName: Tls Support
path: server.tlsSupport
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `disableInternalClusterSVCNames`.
displayName: Use Internal Cluster SVCNames
path: server.useInternalClusterSVCNames
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the persistent storage
used by the Che installation.
displayName: Persistent storage
path: storage
statusDescriptors:
- description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
@ -158,18 +296,82 @@ spec:
displayName: Eclipse Che Backup Server
kind: CheBackupServerConfiguration
name: chebackupserverconfigurations.org.eclipse.che
specDescriptors:
- description: Amazon S3 or compatible alternatives.
displayName: AwsS3 server
path: awss3
- description: Rest backup server configuration.
displayName: Rest server
path: rest
- description: Sftp backup server configuration.
displayName: Sftp server
path: sftp
version: v1
- description: The `CheClusterBackup` custom resource allows defining and managing
Eclipse Che backup
displayName: Eclipse Che instance Backup Specification
kind: CheClusterBackup
name: checlusterbackups.org.eclipse.che
resources:
- kind: Deployment
name: backup-rest-server-deployment
version: apps/v1
- kind: Service
name: backup-rest-server-service
version: v1
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this backup. Note, UseInternalBackupServer field can configure
internal backup server automatically.
displayName: Backup server configuration
path: backupServerConfigRef
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: Automatically setup pod with REST backup server and use the
server in this configuration. Note, this flag takes precedence and will
overwrite existing backup server configuration.
displayName: Use internal backup server
path: useInternalBackupServer
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
statusDescriptors:
- description: Message explaining the state of the backup or an error message
displayName: Message
path: message
- description: Last backup snapshot ID
displayName: Snapshot Id
path: snapshotId
- description: Describes backup progress
displayName: Phase
path: stage
- description: 'Backup progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
- description: The `CheClusterRestore` custom resource allows defining and managing
Eclipse Che restore
displayName: Eclipse Che instance Restore Specification
kind: CheClusterRestore
name: checlusterrestores.org.eclipse.che
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this restore. Can be omitted if only one server configuration
object exists within the namespace.
displayName: Backup Server Config Ref
path: backupServerConfigRef
- description: If omitted, latest snapshot will be used.
displayName: Snapshot Id
path: snapshotId
statusDescriptors:
- description: Restore result or error message
displayName: Message
path: message
- description: Describes phase of restore progress
displayName: Phase
path: stage
- description: 'Restore progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
description: |
A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
@ -1202,4 +1404,4 @@ spec:
maturity: stable
provider:
name: Eclipse Foundation
version: 7.37.0-353.next
version: 7.37.0-356.next

View File

@ -481,8 +481,8 @@ spec:
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
description: General configuration settings related to the Che server,
the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container

View File

@ -13,4 +13,5 @@ annotations:
# Annotations for testing.
operators.operatorframework.io.test.mediatype.v1: scorecard+v1
operators.operatorframework.io.test.config.v1: tests/scorecard/
com.redhat.openshift.versions: "v4.8"

View File

@ -26,13 +26,6 @@ stages:
labels:
suite: olm
test: olm-crds-have-validation-test
- entrypoint:
- scorecard-test
- olm-crds-have-resources
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-crds-have-resources-test
- entrypoint:
- scorecard-test
- olm-spec-descriptors
@ -40,10 +33,3 @@ stages:
labels:
suite: olm
test: olm-spec-descriptors-test
- entrypoint:
- scorecard-test
- olm-status-descriptors
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-status-descriptors-test

View File

@ -4,6 +4,23 @@ metadata:
annotations:
alm-examples: |-
[
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheBackupServerConfiguration",
"metadata": {
"name": "eclipse-che-backup-server-configuration"
},
"spec": {
"awss3": {
"awsAccessKeySecretRef": "minio-credentials-secret",
"hostname": "minio.mydomain.net",
"port": 9000,
"protocol": "http",
"repositoryPasswordSecretRef": "secret-name",
"repositoryPath": "che-backups-bucket"
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheCluster",
@ -69,6 +86,27 @@ metadata:
"workspacePVCStorageClassName": ""
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterBackup",
"metadata": {
"name": "eclipse-che-backup"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration",
"useInternalBackupServer": false
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterRestore",
"metadata": {
"name": "eclipse-che-restore"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration"
}
}
]
capabilities: Seamless Upgrades
@ -83,7 +121,7 @@ metadata:
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/eclipse-che/che-operator
support: Eclipse Foundation
name: eclipse-che-preview-kubernetes.v7.37.0-314.next
name: eclipse-che-preview-kubernetes.v7.37.0-317.next
namespace: placeholder
spec:
apiservicedefinitions: {}
@ -94,7 +132,55 @@ spec:
displayName: Eclipse Che instance Specification
kind: CheCluster
name: checlusters.org.eclipse.che
resources:
- kind: ClusterRole
name: ''
version: v1
- kind: ClusterRoleBinding
name: ''
version: v1
- kind: ConfigMap
name: ''
version: v1
- kind: Deployment
name: ''
version: apps/v1
- kind: Ingress
name: ''
version: v1
- kind: Role
name: ''
version: v1
- kind: RoleBinding
name: ''
version: v1
- kind: Route
name: ''
version: v1
- kind: Secret
name: ''
version: v1
- kind: Service
name: ''
version: v1
specDescriptors:
- description: Configuration settings related to the Authentication used
by the Che installation.
displayName: Authentication
path: auth
- description: Deprecated. The value of this flag is ignored. Sidecar functionality
is now implemented in Traefik plugin.
displayName: Gateway Header Rewrite Sidecar Image
path: auth.gatewayHeaderRewriteSidecarImage
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the database used by the
Che installation.
displayName: Database
path: database
- description: DevWorkspace operator configuration
displayName: Dev Workspace operator
path: devWorkspace
- description: Deploys the DevWorkspace Operator in the cluster. Does nothing
when a matching version of the Operator is already installed. Fails
when a non-matching version of the Operator is already installed.
@ -102,6 +188,58 @@ spec:
path: devWorkspace.enable
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
- description: Kubernetes Image Puller configuration
displayName: Kubernetes Image Puller
path: imagePuller
- description: Configuration settings specific to Che installations made
on upstream Kubernetes.
displayName: Kubernetes
path: k8s
- description: Configuration settings related to the metrics collection
used by the Che installation.
displayName: Metrics
path: metrics
- description: General configuration settings related to the Che server,
the plugin and devfile registries
displayName: Che server
path: server
- description: Deprecated. The value of this flag is ignored. Defines that
a user is allowed to specify a Kubernetes namespace, or an OpenShift
project, which differs from the default. It's NOT RECOMMENDED to set
to `true` without OpenShift OAuth configured. The OpenShift infrastructure
also uses this property.
displayName: Allow User Defined Workspace Namespaces
path: server.allowUserDefinedWorkspaceNamespaces
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `externalDevfileRegistries` fields.
displayName: Devfile Registry Url
path: server.devfileRegistryUrl
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. The value of this flag is ignored. The Che Operator
will automatically detect whether the router certificate is self-signed
and propagate it to other components, such as the Che server.
displayName: Self Signed Cert
path: server.selfSignedCert
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. Instructs the Operator to deploy Che in TLS mode.
This is enabled by default. Disabling TLS sometimes cause malfunction
of some Che components.
displayName: Tls Support
path: server.tlsSupport
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `disableInternalClusterSVCNames`.
displayName: Use Internal Cluster SVCNames
path: server.useInternalClusterSVCNames
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the persistent storage
used by the Che installation.
displayName: Persistent storage
path: storage
statusDescriptors:
- description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
@ -165,18 +303,82 @@ spec:
displayName: Eclipse Che Backup Server
kind: CheBackupServerConfiguration
name: chebackupserverconfigurations.org.eclipse.che
specDescriptors:
- description: Amazon S3 or compatible alternatives.
displayName: AwsS3 server
path: awss3
- description: Rest backup server configuration.
displayName: Rest server
path: rest
- description: Sftp backup server configuration.
displayName: Sftp server
path: sftp
version: v1
- description: The `CheClusterBackup` custom resource allows defining and managing
Eclipse Che backup
displayName: Eclipse Che instance Backup Specification
kind: CheClusterBackup
name: checlusterbackups.org.eclipse.che
resources:
- kind: Deployment
name: backup-rest-server-deployment
version: apps/v1
- kind: Service
name: backup-rest-server-service
version: v1
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this backup. Note, UseInternalBackupServer field can configure
internal backup server automatically.
displayName: Backup server configuration
path: backupServerConfigRef
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: Automatically setup pod with REST backup server and use the
server in this configuration. Note, this flag takes precedence and will
overwrite existing backup server configuration.
displayName: Use internal backup server
path: useInternalBackupServer
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
statusDescriptors:
- description: Message explaining the state of the backup or an error message
displayName: Message
path: message
- description: Last backup snapshot ID
displayName: Snapshot Id
path: snapshotId
- description: Describes backup progress
displayName: Phase
path: stage
- description: 'Backup progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
- description: The `CheClusterRestore` custom resource allows defining and managing
Eclipse Che restore
displayName: Eclipse Che instance Restore Specification
kind: CheClusterRestore
name: checlusterrestores.org.eclipse.che
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this restore. Can be omitted if only one server configuration
object exists within the namespace.
displayName: Backup Server Config Ref
path: backupServerConfigRef
- description: If omitted, latest snapshot will be used.
displayName: Snapshot Id
path: snapshotId
statusDescriptors:
- description: Restore result or error message
displayName: Message
path: message
- description: Describes phase of restore progress
displayName: Phase
path: stage
- description: 'Restore progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
description: |
A collaborative Kubernetes-native development solution that delivers Kubernetes workspaces and in-browser IDE for rapid cloud application development.
@ -1177,4 +1379,4 @@ spec:
maturity: stable
provider:
name: Eclipse Foundation
version: 7.37.0-314.next
version: 7.37.0-317.next

View File

@ -296,7 +296,7 @@ spec:
type: boolean
type: object
server:
description: General configuration settings related to the Che server and the plugin and devfile registries
description: General configuration settings related to the Che server, the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container registry to pull images from. This value overrides the container registry host name defined in all the default container images involved in a Che deployment. This is particularly useful to install Che in a restricted environment.

View File

@ -26,13 +26,6 @@ stages:
labels:
suite: olm
test: olm-crds-have-validation-test
- entrypoint:
- scorecard-test
- olm-crds-have-resources
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-crds-have-resources-test
- entrypoint:
- scorecard-test
- olm-spec-descriptors
@ -40,10 +33,3 @@ stages:
labels:
suite: olm
test: olm-spec-descriptors-test
- entrypoint:
- scorecard-test
- olm-status-descriptors
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-status-descriptors-test

View File

@ -4,6 +4,23 @@ metadata:
annotations:
alm-examples: |-
[
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheBackupServerConfiguration",
"metadata": {
"name": "eclipse-che-backup-server-configuration"
},
"spec": {
"awss3": {
"awsAccessKeySecretRef": "minio-credentials-secret",
"hostname": "minio.mydomain.net",
"port": 9000,
"protocol": "http",
"repositoryPasswordSecretRef": "secret-name",
"repositoryPath": "che-backups-bucket"
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheCluster",
@ -60,6 +77,27 @@ metadata:
"workspacePVCStorageClassName": ""
}
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterBackup",
"metadata": {
"name": "eclipse-che-backup"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration",
"useInternalBackupServer": false
}
},
{
"apiVersion": "org.eclipse.che/v1",
"kind": "CheClusterRestore",
"metadata": {
"name": "eclipse-che-restore"
},
"spec": {
"backupServerConfigRef": "eclipse-che-backup-server-configuration"
}
}
]
capabilities: Seamless Upgrades
@ -76,7 +114,7 @@ metadata:
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
repository: https://github.com/eclipse-che/che-operator
support: Eclipse Foundation
name: eclipse-che-preview-openshift.v7.37.0-321.next
name: eclipse-che-preview-openshift.v7.37.0-324.next
namespace: placeholder
spec:
apiservicedefinitions: {}
@ -87,7 +125,55 @@ spec:
displayName: Eclipse Che instance Specification
kind: CheCluster
name: checlusters.org.eclipse.che
resources:
- kind: ClusterRole
name: ''
version: v1
- kind: ClusterRoleBinding
name: ''
version: v1
- kind: ConfigMap
name: ''
version: v1
- kind: Deployment
name: ''
version: apps/v1
- kind: Ingress
name: ''
version: v1
- kind: Role
name: ''
version: v1
- kind: RoleBinding
name: ''
version: v1
- kind: Route
name: ''
version: v1
- kind: Secret
name: ''
version: v1
- kind: Service
name: ''
version: v1
specDescriptors:
- description: Configuration settings related to the Authentication used
by the Che installation.
displayName: Authentication
path: auth
- description: Deprecated. The value of this flag is ignored. Sidecar functionality
is now implemented in Traefik plugin.
displayName: Gateway Header Rewrite Sidecar Image
path: auth.gatewayHeaderRewriteSidecarImage
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the database used by the
Che installation.
displayName: Database
path: database
- description: DevWorkspace operator configuration
displayName: Dev Workspace operator
path: devWorkspace
- description: Deploys the DevWorkspace Operator in the cluster. Does nothing
when a matching version of the Operator is already installed. Fails
when a non-matching version of the Operator is already installed.
@ -95,6 +181,58 @@ spec:
path: devWorkspace.enable
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
- description: Kubernetes Image Puller configuration
displayName: Kubernetes Image Puller
path: imagePuller
- description: Configuration settings specific to Che installations made
on upstream Kubernetes.
displayName: Kubernetes
path: k8s
- description: Configuration settings related to the metrics collection
used by the Che installation.
displayName: Metrics
path: metrics
- description: General configuration settings related to the Che server,
the plugin and devfile registries
displayName: Che server
path: server
- description: Deprecated. The value of this flag is ignored. Defines that
a user is allowed to specify a Kubernetes namespace, or an OpenShift
project, which differs from the default. It's NOT RECOMMENDED to set
to `true` without OpenShift OAuth configured. The OpenShift infrastructure
also uses this property.
displayName: Allow User Defined Workspace Namespaces
path: server.allowUserDefinedWorkspaceNamespaces
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `externalDevfileRegistries` fields.
displayName: Devfile Registry Url
path: server.devfileRegistryUrl
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. The value of this flag is ignored. The Che Operator
will automatically detect whether the router certificate is self-signed
and propagate it to other components, such as the Che server.
displayName: Self Signed Cert
path: server.selfSignedCert
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. Instructs the Operator to deploy Che in TLS mode.
This is enabled by default. Disabling TLS sometimes cause malfunction
of some Che components.
displayName: Tls Support
path: server.tlsSupport
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `disableInternalClusterSVCNames`.
displayName: Use Internal Cluster SVCNames
path: server.useInternalClusterSVCNames
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the persistent storage
used by the Che installation.
displayName: Persistent storage
path: storage
statusDescriptors:
- description: Status of a Che installation. Can be `Available`, `Unavailable`,
or `Available, Rolling Update in Progress`.
@ -158,18 +296,82 @@ spec:
displayName: Eclipse Che Backup Server
kind: CheBackupServerConfiguration
name: chebackupserverconfigurations.org.eclipse.che
specDescriptors:
- description: Amazon S3 or compatible alternatives.
displayName: AwsS3 server
path: awss3
- description: Rest backup server configuration.
displayName: Rest server
path: rest
- description: Sftp backup server configuration.
displayName: Sftp server
path: sftp
version: v1
- description: The `CheClusterBackup` custom resource allows defining and managing
Eclipse Che backup
displayName: Eclipse Che instance Backup Specification
kind: CheClusterBackup
name: checlusterbackups.org.eclipse.che
resources:
- kind: Deployment
name: backup-rest-server-deployment
version: apps/v1
- kind: Service
name: backup-rest-server-service
version: v1
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this backup. Note, UseInternalBackupServer field can configure
internal backup server automatically.
displayName: Backup server configuration
path: backupServerConfigRef
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: Automatically setup pod with REST backup server and use the
server in this configuration. Note, this flag takes precedence and will
overwrite existing backup server configuration.
displayName: Use internal backup server
path: useInternalBackupServer
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
statusDescriptors:
- description: Message explaining the state of the backup or an error message
displayName: Message
path: message
- description: Last backup snapshot ID
displayName: Snapshot Id
path: snapshotId
- description: Describes backup progress
displayName: Phase
path: stage
- description: 'Backup progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
- description: The `CheClusterRestore` custom resource allows defining and managing
Eclipse Che restore
displayName: Eclipse Che instance Restore Specification
kind: CheClusterRestore
name: checlusterrestores.org.eclipse.che
specDescriptors:
- description: Name of custom resource with a backup server configuration
to use for this restore. Can be omitted if only one server configuration
object exists within the namespace.
displayName: Backup Server Config Ref
path: backupServerConfigRef
- description: If omitted, latest snapshot will be used.
displayName: Snapshot Id
path: snapshotId
statusDescriptors:
- description: Restore result or error message
displayName: Message
path: message
- description: Describes phase of restore progress
displayName: Phase
path: stage
- description: 'Restore progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
description: |
A collaborative Kubernetes-native development solution that delivers OpenShift workspaces and in-browser IDE for rapid cloud application development.
@ -1202,4 +1404,4 @@ spec:
maturity: stable
provider:
name: Eclipse Foundation
version: 7.37.0-321.next
version: 7.37.0-324.next

View File

@ -481,8 +481,8 @@ spec:
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
description: General configuration settings related to the Che server,
the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container

View File

@ -26,13 +26,6 @@ stages:
labels:
suite: olm
test: olm-crds-have-validation-test
- entrypoint:
- scorecard-test
- olm-crds-have-resources
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-crds-have-resources-test
- entrypoint:
- scorecard-test
- olm-spec-descriptors
@ -40,10 +33,3 @@ stages:
labels:
suite: olm
test: olm-spec-descriptors-test
- entrypoint:
- scorecard-test
- olm-status-descriptors
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-status-descriptors-test

View File

@ -464,8 +464,8 @@ spec:
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
description: General configuration settings related to the Che server,
the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container

View File

@ -481,8 +481,8 @@ spec:
type: boolean
type: object
server:
description: General configuration settings related to the Che server
and the plugin and devfile registries
description: General configuration settings related to the Che server,
the plugin and devfile registries
properties:
airGapContainerRegistryHostname:
description: Optional host name, or URL, to an alternate container

View File

@ -23,12 +23,97 @@ spec:
displayName: Eclipse Che instance Specification
kind: CheCluster
name: checlusters.org.eclipse.che
resources:
- kind: ClusterRole
name: ""
version: v1
- kind: ClusterRoleBinding
name: ""
version: v1
- kind: ConfigMap
name: ""
version: v1
- kind: Deployment
name: ""
version: apps/v1
- kind: Ingress
name: ""
version: v1
- kind: Role
name: ""
version: v1
- kind: RoleBinding
name: ""
version: v1
- kind: Route
name: ""
version: v1
- kind: Secret
name: ""
version: v1
- kind: Service
name: ""
version: v1
specDescriptors:
- description: Configuration settings related to the Authentication used by the Che installation.
displayName: Authentication
path: auth
- description: Deprecated. The value of this flag is ignored. Sidecar functionality is now implemented in Traefik plugin.
displayName: Gateway Header Rewrite Sidecar Image
path: auth.gatewayHeaderRewriteSidecarImage
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the database used by the Che installation.
displayName: Database
path: database
- description: DevWorkspace operator configuration
displayName: Dev Workspace operator
path: devWorkspace
- description: Deploys the DevWorkspace Operator in the cluster. Does nothing when a matching version of the Operator is already installed. Fails when a non-matching version of the Operator is already installed.
displayName: Enable DevWorkspace operator (Technology Preview)
path: devWorkspace.enable
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
- description: Kubernetes Image Puller configuration
displayName: Kubernetes Image Puller
path: imagePuller
- description: Configuration settings specific to Che installations made on upstream Kubernetes.
displayName: Kubernetes
path: k8s
- description: Configuration settings related to the metrics collection used by the Che installation.
displayName: Metrics
path: metrics
- description: General configuration settings related to the Che server, the plugin and devfile registries
displayName: Che server
path: server
- description: Deprecated. The value of this flag is ignored. Defines that a user is allowed to specify a Kubernetes namespace, or an OpenShift project, which differs from the default. It's NOT RECOMMENDED to set to `true` without OpenShift OAuth configured. The OpenShift infrastructure also uses this property.
displayName: Allow User Defined Workspace Namespaces
path: server.allowUserDefinedWorkspaceNamespaces
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `externalDevfileRegistries` fields.
displayName: Devfile Registry Url
path: server.devfileRegistryUrl
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. The value of this flag is ignored. The Che Operator will automatically detect whether the router certificate is self-signed and propagate it to other components, such as the Che server.
displayName: Self Signed Cert
path: server.selfSignedCert
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated. Instructs the Operator to deploy Che in TLS mode. This is enabled by default. Disabling TLS sometimes cause malfunction of some Che components.
displayName: Tls Support
path: server.tlsSupport
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Deprecated in favor of `disableInternalClusterSVCNames`.
displayName: Use Internal Cluster SVCNames
path: server.useInternalClusterSVCNames
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:hidden
- description: Configuration settings related to the persistent storage used by the Che installation.
displayName: Persistent storage
path: storage
statusDescriptors:
- description: Status of a Che installation. Can be `Available`, `Unavailable`, or `Available, Rolling Update in Progress`.
displayName: Status
@ -85,19 +170,77 @@ spec:
displayName: Eclipse Che Backup Server
kind: CheBackupServerConfiguration
name: chebackupserverconfigurations.org.eclipse.che
specDescriptors:
- description: Amazon S3 or compatible alternatives.
displayName: AwsS3 server
path: awss3
- description: Rest backup server configuration.
displayName: Rest server
path: rest
- description: Sftp backup server configuration.
displayName: Sftp server
path: sftp
version: v1
- description: The `CheClusterBackup` custom resource allows defining and managing Eclipse Che backup
displayName: Eclipse Che instance Backup Specification
kind: CheClusterBackup
name: checlusterbackups.org.eclipse.che
resources:
- kind: Deployment
name: backup-rest-server-deployment
version: apps/v1
- kind: Service
name: backup-rest-server-service
version: v1
specDescriptors:
- description: Name of custom resource with a backup server configuration to use for this backup. Note, UseInternalBackupServer field can configure internal backup server automatically.
displayName: Backup server configuration
path: backupServerConfigRef
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:text
- description: Automatically setup pod with REST backup server and use the server in this configuration. Note, this flag takes precedence and will overwrite existing backup server configuration.
displayName: Use internal backup server
path: useInternalBackupServer
x-descriptors:
- urn:alm:descriptor:com.tectonic.ui:booleanSwitch
statusDescriptors:
- description: Message explaining the state of the backup or an error message
displayName: Message
path: message
- description: Last backup snapshot ID
displayName: Snapshot Id
path: snapshotId
- description: Describes backup progress
displayName: Phase
path: stage
- description: 'Backup progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
- description: The `CheClusterRestore` custom resource allows defining and managing Eclipse Che restore
displayName: Eclipse Che instance Restore Specification
kind: CheClusterRestore
name: checlusterrestores.org.eclipse.che
specDescriptors:
- description: Name of custom resource with a backup server configuration to use for this restore. Can be omitted if only one server configuration object exists within the namespace.
displayName: Backup Server Config Ref
path: backupServerConfigRef
- description: If omitted, latest snapshot will be used.
displayName: Snapshot Id
path: snapshotId
statusDescriptors:
- description: Restore result or error message
displayName: Message
path: message
- description: Describes phase of restore progress
displayName: Phase
path: stage
- description: 'Restore progress state: InProgress, Failed, Succeeded'
displayName: State
path: state
version: v1
- description: CheCluster is the configuration of the CheCluster layer of Devworkspace.
displayName: Che Cluster
displayName: Eclipse Che Cluster
kind: CheCluster
name: checlusters.org.eclipse.che
version: v2alpha1

View File

@ -1,11 +1,11 @@
## Append samples you want in your CSV to this file as resources ##
resources:
- org.eclipse.che_v1_checluster.yaml
- org_v1_chebackupserverconfiguration.yaml
- org_v1_checlusterbackup.yaml
- org_v1_checlusterrestore.yaml
# Uncomment it to enable sample for CheCluster with version v2alphav1
# - org_v2alpha1_checluster.yaml
# - org_v1_chebackupserverconfiguration.yaml
# - org_v1_checlusterbackup.yaml
# - org_v1_checlusterrestore.yaml
# Uncomment to enable a devworkspace sample
# - devworkspace_flattened_theia-nodejs.yaml
#+kubebuilder:scaffold:manifestskustomizesamples

View File

@ -11,22 +11,22 @@
apiVersion: org.eclipse.che/v1
kind: CheBackupServerConfiguration
metadata:
name: example-chebackupserverconfiguration
name: eclipse-che-backup-server-configuration
spec:
# Contains backup server configuration.
# Only one configuration is allowed.
# Here different kinds are given as examples, but configuring several subsection will cause an error.
rest:
hostname: rest-host.net
repositoryPath: che
repositoryPasswordSecretRef: secret-name
sftp:
hostname: sftp-host.net
username: user
port: 2222
sshKeySecretRef: backup-server-ssh-key-secret
repositoryPath: che-backups
repositoryPasswordSecretRef: secret-name
# rest:
# hostname: rest-host.net
# repositoryPath: che
# repositoryPasswordSecretRef: secret-name
# sftp:
# hostname: sftp-host.net
# username: user
# port: 2222
# sshKeySecretRef: backup-server-ssh-key-secret
# repositoryPath: che-backups
# repositoryPasswordSecretRef: secret-name
awss3:
awsAccessKeySecretRef: minio-credentials-secret
hostname: minio.mydomain.net

View File

@ -17,4 +17,4 @@ spec:
# Note, it will overwrite backupServerConfigRef section.
useInternalBackupServer: false
# Reference to an object of backup server configuration.
backupServerConfigRef: example-chebackupserverconfiguration
backupServerConfigRef: eclipse-che-backup-server-configuration

View File

@ -11,7 +11,7 @@
apiVersion: org.eclipse.che/v1
kind: CheClusterRestore
metadata:
name: example-checlusterrestore
name: eclipse-che-restore
spec:
# Reference to an object of backup server configuration.
backupServerConfigRef: example-chebackupserverconfiguration
backupServerConfigRef: eclipse-che-backup-server-configuration

View File

@ -11,6 +11,6 @@
apiVersion: org.eclipse.che/v2alpha1
kind: CheCluster
metadata:
name: checluster-sample
name: eclipse-che
spec:
# Add fields here

View File

@ -18,16 +18,17 @@
labels:
suite: olm
test: olm-crds-have-validation-test
- op: add
path: /stages/0/tests/-
value:
entrypoint:
- scorecard-test
- olm-crds-have-resources
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-crds-have-resources-test
## Test was disabled. Related issue is: https://github.com/operator-framework/operator-sdk/issues/5254
# - op: add
# path: /stages/0/tests/-
# value:
# entrypoint:
# - scorecard-test
# - olm-crds-have-resources
# image: quay.io/operator-framework/scorecard-test:v1.7.1
# labels:
# suite: olm
# test: olm-crds-have-resources-test
- op: add
path: /stages/0/tests/-
value:
@ -38,13 +39,14 @@
labels:
suite: olm
test: olm-spec-descriptors-test
- op: add
path: /stages/0/tests/-
value:
entrypoint:
- scorecard-test
- olm-status-descriptors
image: quay.io/operator-framework/scorecard-test:v1.7.1
labels:
suite: olm
test: olm-status-descriptors-test
## Test was disabled. Related issue is: https://github.com/operator-framework/operator-sdk/issues/5253
# - op: add
# path: /stages/0/tests/-
# value:
# entrypoint:
# - scorecard-test
# - olm-status-descriptors
# image: quay.io/operator-framework/scorecard-test:v1.7.1
# labels:
# suite: olm
# test: olm-status-descriptors-test

View File

@ -420,8 +420,8 @@ applyCRCheCluster() {
fi
echo "[INFO] Creating Custom Resource"
CRs=$(yq -r '.metadata.annotations["alm-examples"]' "${CSV_FILE}")
CR=$(echo "$CRs" | yq -r ".[0]")
CR=$(yq -r ".metadata.annotations[\"alm-examples\"] | fromjson | .[] | select(.kind == \"CheCluster\")" "${CSV_FILE}")
CR=$(echo "$CR" | yq -r ".spec.devWorkspace.enable = ${DEV_WORKSPACE_ENABLE:-false}")
CR=$(echo "$CR" | yq -r ".spec.server.serverExposureStrategy = \"${CHE_EXPOSURE_STRATEGY:-multi-host}\"")
CR=$(echo "$CR" | yq -r ".spec.server.imagePuller.enable = ${IMAGE_PULLER_ENABLE:-false}")

View File

@ -134,6 +134,15 @@ do
-e "s/createdAt:.*$/createdAt: \"$(date -u +%FT%TZ)\"/" "${LAST_NEXT_CSV}" > "${RELEASE_CSV}"
if [[ ${CHANNEL} == "tech-preview-stable-all-namespaces" ]];then
# Set by default devworkspace enabled
fixedSample=$(yq -r ".metadata.annotations[\"alm-examples\"] | \
fromjson | \
( .[] | select(.kind == \"CheCluster\") | .spec.devWorkspace.enable) |= true" ${NEW_CSV} | sed -r 's/"/\\"/g')
yq -riY ".metadata.annotations[\"alm-examples\"] = \"${fixedSample}\"" ${RELEASE_CSV}
# Move the suggested namespace to openshift-operators.
sed -ri 's|operatorframework.io/suggested-namespace: eclipse-che|operatorframework.io/suggested-namespace: openshift-operators|' "${RELEASE_CSV}"
# Set tech-preview-stable-all-namespaces versions
yq -Yi '.spec.replaces |= "'${packageName}'.v'$LAST_RELEASE_VERSION'-all-namespaces"' ${RELEASE_CSV}
yq -Yi '.spec.version |= "'${RELEASE}'-all-namespaces"' ${RELEASE_CSV}
@ -142,7 +151,7 @@ do
# Remove from devWorkspace in stable channel and hide the value from UI
if [[ ${CHANNEL} == "stable" ]];then
CR_SAMPLE=$(yq -r ".metadata.annotations.\"alm-examples\"" "${RELEASE_CSV}" | yq -r ".[0] | del(.spec.devWorkspace) | [.]" | sed -r 's/"/\\"/g')
CR_SAMPLE=$(yq ".metadata.annotations.\"alm-examples\" | fromjson | del( .[] | select(.kind == \"CheCluster\") | .spec.devWorkspace)" "${RELEASE_CSV}" | sed -r 's/"/\\"/g')
yq -rY " (.metadata.annotations.\"alm-examples\") = \"${CR_SAMPLE}\"" "${RELEASE_CSV}" > "${RELEASE_CSV}.old"
yq -Yi '.spec.customresourcedefinitions.owned[] |= (select(.name == "checlusters.org.eclipse.che").specDescriptors += [{"path":"devWorkspace", "x-descriptors": ["urn:alm:descriptor:com.tectonic.ui:hidden"]}])' "${RELEASE_CSV}.old"
mv "${RELEASE_CSV}.old" "${RELEASE_CSV}"