Skip to content

Commit c6f0e86

Browse files
authored
Script updates for BR of no olm install (#2394)
* add common-web-ui-config cm to labeling script Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * update for helm chart BR Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add nss Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add restore objects Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add labels to schedule resource Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add log line Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add nss restore yaml Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * name nss file Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * ensure nss labeling runs Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * ensure nss is covered properly Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * include csv created role and rolebinding for nss Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * correct label for cs operator cluster rbac Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * remove excessive labeling Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * label operandrequest crd Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add in image list configmap from edb Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * include extra configmap Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * split ns chart restore files Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * change name of im restore file Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * add odlm file Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * update script to use correct edb deployment name Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * label fifth and final odlm crd Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * update for zen chart inclusion Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * update zen br script for changes to minio Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * correct labeling oversight Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * change zenservice check condition to be more robust Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * increase sleep time for checking dpeloyments are scaled down Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * test using pgrestore instead Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * rerun iam config job Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> * use yq to re run iam config job the way cs db reruns oidc job Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com> --------- Signed-off-by: Ben Luzarraga <luzarragaben@gmail.com>
1 parent b7ddb27 commit c6f0e86

File tree

9 files changed

+228
-31
lines changed

9 files changed

+228
-31
lines changed

velero/backup/common-service/label-common-service.sh

Lines changed: 31 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -313,9 +313,9 @@ function label_ns_and_related() {
313313

314314
# Label the Zen Service
315315
if [[ $NO_OLM == "false" ]]; then
316-
${OC} label customresourcedefinition zenservices.zen.cpd.ibm.com foundationservices.cloudpak.ibm.com=zen --overwrite=true 2>/dev/null
316+
${OC} label customresourcedefinition zenservices.zen.cpd.ibm.com zenextensions.zen.cpd.ibm.com foundationservices.cloudpak.ibm.com=zen --overwrite=true 2>/dev/null
317317
else
318-
${OC} label customresourcedefinition zenservices.zen.cpd.ibm.com foundationservices.cloudpak.ibm.com=zen-chart --overwrite=true 2>/dev/null
318+
${OC} label customresourcedefinition zenservices.zen.cpd.ibm.com zenextensions.zen.cpd.ibm.com foundationservices.cloudpak.ibm.com=zen-cluster --overwrite=true 2>/dev/null
319319
fi
320320
zen_services=$(${OC} get zenservice -n "$namespace" -o custom-columns=NAME:.metadata.name --no-headers)
321321
while IFS= read -r zen_service; do
@@ -414,14 +414,22 @@ function label_nss(){
414414
${OC} label subscriptions.operators.coreos.com $nss_pm foundationservices.cloudpak.ibm.com=subscription -n $OPERATOR_NS --overwrite=true 2>/dev/null
415415
${OC} label customresourcedefinition namespacescopes.operator.ibm.com foundationservices.cloudpak.ibm.com=crd --overwrite=true 2>/dev/null
416416
else
417-
#TODO label the cluster scoped resources, label them denoting cluster scoped somehow
418-
#clusterrolebinding
419-
#clusterrole
420-
#crd
417+
#cluster scoped resources
418+
${OC} label clusterrole ibm-namespace-scope-operator foundationservices.cloudpak.ibm.com=nss-cluster --overwrite=true 2>/dev/null
419+
${OC} label clusterrolebinding ibm-namespace-scope-operator foundationservices.cloudpak.ibm.com=nss-cluster --overwrite=true 2>/dev/null
421420
${OC} label customresourcedefinition namespacescopes.operator.ibm.com foundationservices.cloudpak.ibm.com=nss-cluster --overwrite=true 2>/dev/null
422-
#TODO get and label helm secret
423-
#Label deployment
421+
nss_cluster_release_name=$(${OC} get crd namespacescopes.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
422+
nss_cluster_release_namespace=$(${OC} get crd namespacescopes.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
423+
${OC} label secret sh.helm.release.v1.$nss_cluster_release_name.v1 -n $nss_cluster_release_namespace foundationservices.cloudpak.ibm.com=nss-cluster --overwrite=true 2>/dev/null
424+
#namespace scoped resources
425+
${OC} label deployment ibm-namespace-scope-operator foundationservices.cloudpak.ibm.com=nss -n $OPERATOR_NS --overwrite=true 2>/dev/null
426+
nss_release_name=$(${OC} get deploy ibm-namespace-scope-operator -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
427+
nss_release_namespace=$(${OC} get deploy ibm-namespace-scope-operator -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
428+
${OC} label secret sh.helm.release.v1.$nss_release_name.v1 -n $nss_release_namespace foundationservices.cloudpak.ibm.com=nss --overwrite=true 2>/dev/null
429+
${OC} label role ibm-namespace-scope-operator -n $OPERATOR_NS foundationservices.cloudpak.ibm.com=nss --overwrite=true 2>/dev/null
430+
${OC} label rolebinding ibm-namespace-scope-operator -n $OPERATOR_NS foundationservices.cloudpak.ibm.com=nss --overwrite=true 2>/dev/null
424431
fi
432+
425433
# The following resources are labeled with 'nss' are bundled together for backup
426434
${OC} label namespacescopes.operator.ibm.com common-service foundationservices.cloudpak.ibm.com=nss -n $OPERATOR_NS --overwrite=true 2>/dev/null
427435
${OC} label serviceaccount ibm-namespace-scope-operator foundationservices.cloudpak.ibm.com=nss -n $OPERATOR_NS --overwrite=true 2>/dev/null
@@ -450,16 +458,15 @@ function label_helm_cluster_scope(){
450458
title "Begin labeling cluster scoped resources installed via helm..."
451459
#TODO get name of helm secret for each chart
452460
#odlm cluster resources (crds)
453-
${OC} label crd operandbindinfos.operator.ibm.com operandconfigs.operator.ibm.com operandregistries.operator.ibm.com foundationservices.cloudpak.ibm.com=odlm-cluster --overwrite=true 2>/dev/null
461+
${OC} label crd operandbindinfos.operator.ibm.com operandconfigs.operator.ibm.com operandregistries.operator.ibm.com operandrequests.operator.ibm.com operatorconfigs.operator.ibm.com foundationservices.cloudpak.ibm.com=odlm-cluster --overwrite=true 2>/dev/null
454462
#helm secret
455463
odlm_release_name=$(${OC} get crd operandbindinfos.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
456464
odlm_release_namespace=$(${OC} get crd operandbindinfos.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
457465
${OC} label secret sh.helm.release.v1.$odlm_release_name.v1 -n $odlm_release_namespace foundationservices.cloudpak.ibm.com=odlm-cluster --overwrite=true 2>/dev/null
458466

459-
#cs operator cluster resources (crds, clusterrole, clusterrolebinding)
460-
${OC} label crd commonservices.operator.ibm.com foundationservices.cloudpak.ibm.com=cs-op-cluster --overwrite=true 2>/dev/null
461-
${OC} label clusterrole ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-op-cluster --overwrite=true 2>/dev/null
462-
${OC} label clusterrolebinding ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-op-cluster --overwrite=true 2>/dev/null
467+
#cs operator cluster resources (crds, clusterrole, clusterrolebinding), crd covered elsewhere in script
468+
${OC} label clusterrole ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-cluster --overwrite=true 2>/dev/null
469+
${OC} label clusterrolebinding ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-cluster --overwrite=true 2>/dev/null
463470
cs_release_name=$(${OC} get crd commonservices.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
464471
cs_release_namespace=$(${OC} get crd commonservices.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
465472
${OC} label secret sh.helm.release.v1.$cs_release_name.v1 -n $cs_release_namespace foundationservices.cloudpak.ibm.com=cs-cluster --overwrite=true 2>/dev/null
@@ -504,9 +511,7 @@ function label_helm_cluster_scope(){
504511

505512
function label_helm_namespace_scope(){
506513
title "Begin labeling namespace scoped resources installed via helm..."
507-
#probably best to label going through the namespaces from the start
508514
#label rbac and resources in operator and services namespace first
509-
#TODO get name of helm secret for each chart
510515
#odlm
511516
${OC} label deploy operand-deployment-lifecycle-manager foundationservices.cloudpak.ibm.com=odlm-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
512517
${OC} label serviceaccount operand-deployment-lifecycle-manager foundationservices.cloudpak.ibm.com=odlm-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
@@ -555,23 +560,25 @@ function label_helm_namespace_scope(){
555560
#edb
556561
deploy=$(${OC} get deploy -n $OPERATOR_NS | grep postgresql-operator-controller-manager | awk '{print $1}')
557562
${OC} label deployment $deploy foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
563+
${OC} label configmap cloud-native-postgresql-image-list postgresql-operator-default-monitoring foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
564+
${OC} label service postgresql-operator-webhook-service foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
558565
${OC} label serviceaccount postgresql-operator-manager foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
559566
${OC} label role postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
560567
${OC} label rolebinding postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
561568
${OC} label role postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
562569
${OC} label rolebinding postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
563-
edb_release_name=$(${OC} get deploy postgresql-operator-controller-manager -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
564-
edb_release_namespace=$(${OC} get deploy postgresql-operator-controller-manager -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
570+
edb_release_name=$(${OC} get deploy $deploy -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
571+
edb_release_namespace=$(${OC} get deploy $deploy -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
565572
${OC} label secret sh.helm.release.v1.$edb_release_name.v1 -n $edb_release_namespace foundationservices.cloudpak.ibm.com=edb-chart --overwrite=true 2>/dev/null
566573

567574
#zen
568575
${OC} label deploy ibm-zen-operator foundationservices.cloudpak.ibm.com=zen-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
569576
#zenservice covered in label_ns_and_related function
570577
${OC} label role ibm-zen-operator-role foundationservices.cloudpak.ibm.com=zen-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
571-
${OC} label role ibm-zen-operator-rolebinding foundationservices.cloudpak.ibm.com=zen-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
578+
${OC} label rolebinding ibm-zen-operator-rolebinding foundationservices.cloudpak.ibm.com=zen-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
572579
${OC} label serviceaccount ibm-zen-operator-serviceaccount foundationservices.cloudpak.ibm.com=zen-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
573580
${OC} label role ibm-zen-operator-role foundationservices.cloudpak.ibm.com=zen-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
574-
${OC} label role ibm-zen-operator-rolebinding foundationservices.cloudpak.ibm.com=zen-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
581+
${OC} label rolebinding ibm-zen-operator-rolebinding foundationservices.cloudpak.ibm.com=zen-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
575582
zen_release_name=$(${OC} get deploy ibm-zen-operator -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
576583
zen_release_namespace=$(${OC} get deploy ibm-zen-operator -n $OPERATOR_NS -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-namespace}' --ignore-not-found)
577584
${OC} label secret sh.helm.release.v1.$zen_release_name.v1 -n $zen_release_namespace foundationservices.cloudpak.ibm.com=zen-chart --overwrite=true 2>/dev/null
@@ -595,14 +602,18 @@ function label_helm_namespace_scope(){
595602
#ui
596603
${OC} label role ibm-commonui-operator foundationservices.cloudpak.ibm.com=ui-chart -n $namespace --overwrite=true 2>/dev/null
597604
${OC} label rolebinding ibm-commonui-operator foundationservices.cloudpak.ibm.com=ui-chart -n $namespace --overwrite=true 2>/dev/null
598-
599605

606+
#edb
607+
${OC} label role postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $namespace --overwrite=true 2>/dev/null
608+
${OC} label rolebinding postgresql-operator-controller-manager foundationservices.cloudpak.ibm.com=edb-chart -n $namespace --overwrite=true 2>/dev/null
609+
600610
#zen
601611
${OC} label role ibm-zen-operator-role foundationservices.cloudpak.ibm.com=zen-chart -n $namespace --overwrite=true 2>/dev/null
602612
${OC} label rolebinding ibm-zen-operator-rolebinding foundationservices.cloudpak.ibm.com=zen-chart -n $namespace --overwrite=true 2>/dev/null
603613
done
604614
fi
605615

616+
success "Namespace scoped charts labeled."
606617
}
607618

608619
# ---------- Info functions ----------#
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
apiVersion: velero.io/v1
2+
kind: Restore
3+
metadata:
4+
name: restore-cluster-charts
5+
namespace: velero
6+
spec:
7+
backupName: __BACKUP_NAME__
8+
excludedResources:
9+
- nodes
10+
- events
11+
- events.events.k8s.io
12+
- backups.velero.io
13+
- restores.velero.io
14+
- resticrepositories.velero.io
15+
hooks: {}
16+
includedNamespaces:
17+
- '*'
18+
includedResources:
19+
- '*'
20+
orLabelSelectors:
21+
- matchExpressions:
22+
- key: foundationservices.cloudpak.ibm.com
23+
operator: In
24+
values:
25+
- cs-cluster
26+
- odlm-cluster
27+
- ui-cluster
28+
- zen-cluster
29+
- edb-cluster
30+
- iam-cluster
31+
- nss-cluster
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
apiVersion: velero.io/v1
2+
kind: Restore
3+
metadata:
4+
name: restore-im-charts
5+
namespace: velero
6+
spec:
7+
backupName: __BACKUP_NAME__
8+
excludedResources:
9+
- nodes
10+
- events
11+
- events.events.k8s.io
12+
- backups.velero.io
13+
- restores.velero.io
14+
- resticrepositories.velero.io
15+
hooks: {}
16+
includedNamespaces:
17+
- '*'
18+
includedResources:
19+
- '*'
20+
orLabelSelectors:
21+
- matchExpressions:
22+
- key: foundationservices.cloudpak.ibm.com
23+
operator: In
24+
values:
25+
- ui-chart
26+
- edb-chart
27+
- iam-chart
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
apiVersion: velero.io/v1
2+
kind: Restore
3+
metadata:
4+
name: restore-installer-charts
5+
namespace: velero
6+
spec:
7+
backupName: __BACKUP_NAME__
8+
excludedResources:
9+
- nodes
10+
- events
11+
- events.events.k8s.io
12+
- backups.velero.io
13+
- restores.velero.io
14+
- resticrepositories.velero.io
15+
hooks: {}
16+
includedNamespaces:
17+
- '*'
18+
includedResources:
19+
- '*'
20+
orLabelSelectors:
21+
- matchExpressions:
22+
- key: foundationservices.cloudpak.ibm.com
23+
operator: In
24+
values:
25+
- cs-chart
26+
- odlm-chart
27+
- nss
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
apiVersion: velero.io/v1
2+
kind: Restore
3+
metadata:
4+
name: restore-namespace-charts
5+
namespace: velero
6+
spec:
7+
backupName: __BACKUP_NAME__
8+
excludedResources:
9+
- nodes
10+
- events
11+
- events.events.k8s.io
12+
- backups.velero.io
13+
- restores.velero.io
14+
- resticrepositories.velero.io
15+
hooks: {}
16+
includedNamespaces:
17+
- '*'
18+
includedResources:
19+
- '*'
20+
orLabelSelectors:
21+
- matchExpressions:
22+
- key: foundationservices.cloudpak.ibm.com
23+
operator: In
24+
values:
25+
- cs-chart
26+
- odlm-chart
27+
- ui-chart
28+
- zen-chart
29+
- edb-chart
30+
- iam-chart
31+
- nss
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
apiVersion: velero.io/v1
2+
kind: Restore
3+
metadata:
4+
name: restore-zen-chart
5+
namespace: velero
6+
spec:
7+
backupName: __BACKUP_NAME__
8+
excludedResources:
9+
- nodes
10+
- events
11+
- events.events.k8s.io
12+
- backups.velero.io
13+
- restores.velero.io
14+
- resticrepositories.velero.io
15+
hooks: {}
16+
includedNamespaces:
17+
- '*'
18+
labelSelector:
19+
matchLabels:
20+
foundationservices.cloudpak.ibm.com: zen-chart

velero/schedule/schedule-common-services.yaml

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,3 +45,16 @@ spec:
4545
- keycloak #velero plugin approach to BR keycloak data
4646
- user-mgmt #non-data user-management operator resources
4747
- nss
48+
- cs-chart
49+
- cs-cluster
50+
- odlm-chart
51+
- odlm-cluster
52+
- ui-chart
53+
- ui-cluster
54+
- zen-chart
55+
- zen-cluster
56+
- edb-chart
57+
- edb-cluster
58+
- iam-chart
59+
- iam-cluster
60+
- nss-cluster

0 commit comments

Comments
 (0)