Do not delete internal backup server on backup CR deletion (#888)
Signed-off-by: Mykola Morhun <mmorhun@redhat.com>pull/892/head
parent
b6c2c3c2ff
commit
fc2b559447
|
|
@ -86,13 +86,13 @@ metadata:
|
|||
categories: Developer Tools
|
||||
certified: "false"
|
||||
containerImage: quay.io/eclipse/che-operator:next
|
||||
createdAt: "2021-07-02T08:14:01Z"
|
||||
createdAt: "2021-07-07T09:30:36Z"
|
||||
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/che-operator
|
||||
support: Eclipse Foundation
|
||||
name: eclipse-che-preview-kubernetes.v7.33.0-248.nightly
|
||||
name: eclipse-che-preview-kubernetes.v7.33.0-250.nightly
|
||||
namespace: placeholder
|
||||
spec:
|
||||
apiservicedefinitions: {}
|
||||
|
|
@ -1241,4 +1241,4 @@ spec:
|
|||
maturity: stable
|
||||
provider:
|
||||
name: Eclipse Foundation
|
||||
version: 7.33.0-248.nightly
|
||||
version: 7.33.0-250.nightly
|
||||
|
|
|
|||
|
|
@ -77,13 +77,13 @@ metadata:
|
|||
categories: Developer Tools, OpenShift Optional
|
||||
certified: "false"
|
||||
containerImage: quay.io/eclipse/che-operator:next
|
||||
createdAt: "2021-07-02T08:14:06Z"
|
||||
createdAt: "2021-07-07T09:30:48Z"
|
||||
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/che-operator
|
||||
support: Eclipse Foundation
|
||||
name: eclipse-che-preview-openshift.v7.33.0-248.nightly
|
||||
name: eclipse-che-preview-openshift.v7.33.0-250.nightly
|
||||
namespace: placeholder
|
||||
spec:
|
||||
apiservicedefinitions: {}
|
||||
|
|
@ -1318,4 +1318,4 @@ spec:
|
|||
maturity: stable
|
||||
provider:
|
||||
name: Eclipse Foundation
|
||||
version: 7.33.0-248.nightly
|
||||
version: 7.33.0-250.nightly
|
||||
|
|
|
|||
|
|
@ -26,7 +26,6 @@ import (
|
|||
"k8s.io/apimachinery/pkg/api/errors"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/types"
|
||||
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
|
||||
)
|
||||
|
||||
const (
|
||||
|
|
@ -77,10 +76,7 @@ func ensureInternalBackupServerDeploymentExist(bctx *BackupContext) (bool, error
|
|||
}
|
||||
|
||||
// Get default configuration of the backup server deployment
|
||||
backupServerDeployment, err = getBackupServerDeploymentSpec(bctx)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
backupServerDeployment = getBackupServerDeploymentSpec(bctx)
|
||||
// Create backup server deployment
|
||||
err = bctx.r.client.Create(context.TODO(), backupServerDeployment)
|
||||
if err != nil {
|
||||
|
|
@ -90,7 +86,7 @@ func ensureInternalBackupServerDeploymentExist(bctx *BackupContext) (bool, error
|
|||
return false, nil
|
||||
}
|
||||
|
||||
func getBackupServerDeploymentSpec(bctx *BackupContext) (*appsv1.Deployment, error) {
|
||||
func getBackupServerDeploymentSpec(bctx *BackupContext) *appsv1.Deployment {
|
||||
labels, labelSelector := deploy.GetLabelsAndSelector(bctx.cheCR, InternalBackupServerComponent)
|
||||
// TODO should we use component label to select backup related resources instead of part-of label ?
|
||||
labels[deploy.KubernetesPartOfLabelKey] = BackupCheEclipseOrg
|
||||
|
|
@ -142,12 +138,7 @@ func getBackupServerDeploymentSpec(bctx *BackupContext) (*appsv1.Deployment, err
|
|||
},
|
||||
}
|
||||
|
||||
// Set CheClusterBackup instance as the owner and controller
|
||||
if err := controllerutil.SetControllerReference(bctx.backupCR, deployment, bctx.r.scheme); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return deployment, nil
|
||||
return deployment
|
||||
}
|
||||
|
||||
func ensureInternalBackupServerPodReady(bctx *BackupContext) (bool, error) {
|
||||
|
|
@ -183,10 +174,7 @@ func ensureInternalBackupServerServiceExists(bctx *BackupContext) (bool, error)
|
|||
}
|
||||
|
||||
// Backup server service doesn't exists, create it
|
||||
backupServerService, err = getBackupServerServiceSpec(bctx)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
backupServerService = getBackupServerServiceSpec(bctx)
|
||||
// Create backup server service
|
||||
err = bctx.r.client.Create(context.TODO(), backupServerService)
|
||||
if err != nil {
|
||||
|
|
@ -196,7 +184,7 @@ func ensureInternalBackupServerServiceExists(bctx *BackupContext) (bool, error)
|
|||
return false, nil
|
||||
}
|
||||
|
||||
func getBackupServerServiceSpec(bctx *BackupContext) (*corev1.Service, error) {
|
||||
func getBackupServerServiceSpec(bctx *BackupContext) *corev1.Service {
|
||||
labels := deploy.GetLabels(bctx.cheCR, InternalBackupServerComponent)
|
||||
labels[deploy.KubernetesPartOfLabelKey] = BackupCheEclipseOrg
|
||||
|
||||
|
|
@ -224,12 +212,7 @@ func getBackupServerServiceSpec(bctx *BackupContext) (*corev1.Service, error) {
|
|||
},
|
||||
}
|
||||
|
||||
// Set CheClusterBackup instance as the owner and controller
|
||||
if err := controllerutil.SetControllerReference(bctx.backupCR, service, bctx.r.scheme); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return service, nil
|
||||
return service
|
||||
}
|
||||
|
||||
// ensureInternalBackupServerConfigurationExistAndCorrect makes sure that there is CR with correct internal backup server configuration
|
||||
|
|
@ -327,10 +310,7 @@ func ensureInternalBackupServerSecretExists(bctx *BackupContext) (bool, error) {
|
|||
}
|
||||
|
||||
repoPassword := util.GeneratePasswd(12)
|
||||
repoPasswordSecret, err = getRepoPasswordSecretSpec(bctx, repoPassword)
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
repoPasswordSecret = getRepoPasswordSecretSpec(bctx, repoPassword)
|
||||
err = bctx.r.client.Create(context.TODO(), repoPasswordSecret)
|
||||
if err != nil {
|
||||
return false, err
|
||||
|
|
@ -339,7 +319,7 @@ func ensureInternalBackupServerSecretExists(bctx *BackupContext) (bool, error) {
|
|||
return false, nil
|
||||
}
|
||||
|
||||
func getRepoPasswordSecretSpec(bctx *BackupContext, password string) (*corev1.Secret, error) {
|
||||
func getRepoPasswordSecretSpec(bctx *BackupContext, password string) *corev1.Secret {
|
||||
labels := deploy.GetLabels(bctx.cheCR, InternalBackupServerComponent)
|
||||
labels[deploy.KubernetesPartOfLabelKey] = BackupCheEclipseOrg
|
||||
|
||||
|
|
@ -358,9 +338,5 @@ func getRepoPasswordSecretSpec(bctx *BackupContext, password string) (*corev1.Se
|
|||
Data: data,
|
||||
}
|
||||
|
||||
if err := controllerutil.SetControllerReference(bctx.backupCR, secret, bctx.r.scheme); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return secret, nil
|
||||
return secret
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue