Skip to content

Commit abc33c8

Browse files
authored
No olm core recipe (#2619)
* core recipe init Signed-off-by: Allen Li <liyuchen223@gmail.com> * recipe update Signed-off-by: Allen Li <liyuchen223@gmail.com> * cpfs core recipe Signed-off-by: Allen Li <liyuchen223@gmail.com> * add resterOverwriteResource Signed-off-by: Allen Li <liyuchen223@gmail.com> * remove clusterrole and clusterrolebinding from cpfs recipe Signed-off-by: Allen Li <liyuchen223@gmail.com> * update cluster rbac Signed-off-by: Allen Li <liyuchen223@gmail.com> * namespace update Signed-off-by: Allen Li <liyuchen223@gmail.com> * remove cert-manager webhook check Signed-off-by: Allen Li <liyuchen223@gmail.com> * update cluster role Signed-off-by: Allen Li <liyuchen223@gmail.com> * add service to edb chart list Signed-off-by: Allen Li <liyuchen223@gmail.com> * update namespace name Signed-off-by: Allen Li <liyuchen223@gmail.com> * update zen recipe Signed-off-by: Allen Li <liyuchen223@gmail.com> * label namespaces from common-service-maps Signed-off-by: Allen Li <liyuchen223@gmail.com> * add operator_ns service_ns and tethered ns to ns list Signed-off-by: Allen Li <liyuchen223@gmail.com> * update label in recipe Signed-off-by: Allen Li <liyuchen223@gmail.com> --------- Signed-off-by: Allen Li <liyuchen223@gmail.com>
1 parent c6db657 commit abc33c8

12 files changed

+1178
-2
lines changed

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

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,15 @@ function label_ibm_catalogsources() {
269269
function label_ns_and_related() {
270270

271271
title "Start to label the namespaces, operatorgroups and secrets... "
272-
namespaces=$(${OC} get configmap namespace-scope -n $OPERATOR_NS -oyaml | awk '/^data:/ {flag=1; next} /^ namespaces:/ {print $2; next} flag && /^ [^ ]+: / {flag=0}')
272+
# namespaces=$(${OC} get configmap namespace-scope -n $OPERATOR_NS -oyaml | awk '/^data:/ {flag=1; next} /^ namespaces:/ {print $2; next} flag && /^ [^ ]+: / {flag=0}')
273+
namespaces=${OPERATOR_NS}
274+
if [[ $SERVICES_NS != "" ]]; then
275+
namespaces+=",$SERVICES_NS"
276+
fi
277+
278+
if [[ $TETHERED_NS != "" ]]; then
279+
namespaces+=",$TETHERED_NS"
280+
fi
273281
# add cert-manager namespace and licensing namespace and lsr namespace into the list with comma separated
274282
if [[ $CONTROL_NS != "" ]]; then
275283
namespaces+=",$CONTROL_NS"
@@ -517,6 +525,7 @@ function label_helm_cluster_scope(){
517525
${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
518526

519527
#cs operator cluster resources (crds, clusterrole, clusterrolebinding), crd covered elsewhere in script
528+
${OC} label customresourcedefinition commonservices.operator.ibm.com foundationservices.cloudpak.ibm.com=crd --overwrite=true 2>/dev/null
520529
${OC} label clusterrole ibm-common-service-operator-$OPERATOR_NS foundationservices.cloudpak.ibm.com=cs-cluster --overwrite=true 2>/dev/null
521530
${OC} label clusterrolebinding ibm-common-service-operator-$OPERATOR_NS foundationservices.cloudpak.ibm.com=cs-cluster --overwrite=true 2>/dev/null
522531
cs_release_name=$(${OC} get crd commonservices.operator.ibm.com -o jsonpath='{.metadata.annotations.meta\.helm\.sh/release-name}' --ignore-not-found)
@@ -573,7 +582,7 @@ function label_helm_namespace_scope(){
573582
${OC} label rolebinding operand-deployment-lifecycle-manager foundationservices.cloudpak.ibm.com=odlm-chart -n $SERVICES_NS --overwrite=true 2>/dev/null
574583

575584
#cs operator
576-
#cs CR handled in label_cs
585+
${OC} label commonservices common-service foundationservices.cloudpak.ibm.com=commonservice -n $OPERATOR_NS --overwrite=true 2>/dev/null
577586
${OC} label deployment ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
578587
${OC} label serviceaccount ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
579588
${OC} label role ibm-common-service-operator foundationservices.cloudpak.ibm.com=cs-chart -n $OPERATOR_NS --overwrite=true 2>/dev/null
Lines changed: 132 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,132 @@
1+
apiVersion: spp-data-protection.isf.ibm.com/v1alpha1
2+
kind: Recipe
3+
metadata:
4+
labels:
5+
dp.isf.ibm.com/parent-recipe: cpfs-parent-recipe
6+
dp.isf.ibm.com/parent-recipe-namespace: <parent recipe namespace>
7+
name: cs-odlm-child-recipe
8+
namespace: <child recipe namespace>
9+
spec:
10+
appType: common-service
11+
groups:
12+
- includeClusterResources: true
13+
includedResourceTypes:
14+
- clusterrole
15+
- clusterrolebinding
16+
- customresourcedefinitions.apiextensions.k8s.io
17+
labelSelector: foundationservices.cloudpak.ibm.com=cs-cluster
18+
name: cs-cluster-resources
19+
type: resource
20+
- includeClusterResources: true
21+
includedResourceTypes:
22+
- customresourcedefinitions.apiextensions.k8s.io
23+
labelSelector: foundationservices.cloudpak.ibm.com=crd
24+
name: cs-crd
25+
type: resource
26+
- includeClusterResources: true
27+
includedResourceTypes:
28+
# - clusterrole
29+
# - clusterrolebinding
30+
- customresourcedefinitions.apiextensions.k8s.io
31+
labelSelector: foundationservices.cloudpak.ibm.com=odlm-cluster
32+
name: odlm-cluster-resources
33+
type: resource
34+
- includedResourceTypes:
35+
- role
36+
- rolebinding
37+
- serviceaccount
38+
- deployments
39+
- secrets
40+
- commonservices.operator.ibm.com
41+
labelSelector: foundationservices.cloudpak.ibm.com=cs-chart
42+
name: cs-resources
43+
type: resource
44+
- includedResourceTypes:
45+
- commonservices.operator.ibm.com
46+
labelSelector: foundationservices.cloudpak.ibm.com=commonservice
47+
name: cs-cr
48+
type: resource
49+
- includedResourceTypes:
50+
- role
51+
- rolebinding
52+
- serviceaccount
53+
- deployments
54+
labelSelector: foundationservices.cloudpak.ibm.com=odlm-chart
55+
name: odlm-resources
56+
type: resource
57+
- backupRef: cs-resources
58+
includedResourceTypes:
59+
- serviceaccount
60+
- role
61+
- rolebinding
62+
- secrets
63+
name: cs-rbac-resources
64+
type: resource
65+
- backupRef: odlm-resources
66+
includedResourceTypes:
67+
- serviceaccount
68+
- role
69+
- rolebinding
70+
- secrets
71+
name: odlm-rbac-resources
72+
type: resource
73+
- backupRef: cs-resources
74+
includeClusterResources: true
75+
includedResourceTypes:
76+
- deployments
77+
name: cs-deployment
78+
type: resource
79+
- backupRef: odlm-resources
80+
includeClusterResources: true
81+
includedResourceTypes:
82+
- deployments
83+
name: odlm-deployment
84+
type: resource
85+
hooks:
86+
- chks:
87+
- condition: '{$.spec.replicas} == {$.status.readyReplicas}'
88+
name: podReady
89+
onError: fail
90+
timeout: 600
91+
name: cs-check
92+
nameSelector: ibm-common-service-operator
93+
namespace: <operator_ns>
94+
onError: fail
95+
selectResource: deployment
96+
timeout: 600
97+
type: check
98+
- chks:
99+
- condition: '{$.spec.replicas} == {$.status.readyReplicas}'
100+
name: podReady
101+
onError: fail
102+
timeout: 600
103+
name: odlm-check
104+
nameSelector: operand-deployment-lifecycle-manager
105+
namespace: <operator_ns>
106+
onError: fail
107+
selectResource: deployment
108+
timeout: 600
109+
type: check
110+
workflows:
111+
- name: chart-backup
112+
priority: 0
113+
sequence:
114+
- group: cs-cluster-resources
115+
- group: cs-crd
116+
- group: cs-cr
117+
- group: cs-resources
118+
- group: odlm-cluster-resources
119+
- group: odlm-resources
120+
- name: chart-restore
121+
priority: 8
122+
sequence:
123+
- group: cs-cluster-resources
124+
- group: cs-crd
125+
- group: cs-rbac-resources
126+
- group: cs-cr
127+
- group: cs-deployment
128+
- hook: cs-check/podReady
129+
- group: odlm-cluster-resources
130+
- group: odlm-rbac-resources
131+
- group: odlm-deployment
132+
- hook: odlm-check/podReady
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
apiVersion: spp-data-protection.isf.ibm.com/v1alpha1
2+
kind: Recipe
3+
metadata:
4+
labels:
5+
dp.isf.ibm.com/parent-recipe: cpfs-parent-recipe
6+
dp.isf.ibm.com/parent-recipe-namespace: <parent recipe namespace>
7+
name: csdb-child
8+
namespace: <child recipe namespace>
9+
spec:
10+
appType: common-service
11+
groups:
12+
- labelSelector: foundationservices.cloudpak.ibm.com=cs-db-data
13+
name: cs-db-volume
14+
type: volume
15+
- includeClusterResources: true
16+
labelSelector: foundationservices.cloudpak.ibm.com=cs-db-data
17+
includedResourceTypes:
18+
- serviceaccount
19+
- role
20+
- rolebinding
21+
- configmaps
22+
name: cs-db-pre-deploy
23+
type: resource
24+
- includeClusterResources: true
25+
labelSelector: foundationservices.cloudpak.ibm.com=cs-db-data
26+
includedResourceTypes:
27+
- deployments
28+
name: cs-db-deployment
29+
type: resource
30+
hooks:
31+
- chks:
32+
- condition: '{$.status.phase} == {"Running"}'
33+
name: podReady
34+
onError: fail
35+
timeout: 600
36+
labelSelector: 'k8s.enterprisedb.io/cluster=common-service-db,role=primary'
37+
name: common-service-db-check
38+
namespace: <child recipe namespace>
39+
onError: fail
40+
selectResource: pod
41+
timeout: 600
42+
type: check
43+
- chks:
44+
- condition: '{$.status.phase} == {"Running"}'
45+
name: podReady
46+
onError: fail
47+
timeout: 600
48+
labelSelector: foundationservices.cloudpak.ibm.com=cs-db-data
49+
name: cs-db-deployment
50+
namespace: <child recipe namespace>
51+
onError: fail
52+
selectResource: pod
53+
timeout: 600
54+
type: check
55+
- chks:
56+
- condition: '{$.spec.replicas} == {$.status.readyReplicas}'
57+
name: podReady
58+
onError: fail
59+
timeout: 600
60+
name: platform-identity-provider
61+
nameSelector: platform-identity-provider
62+
namespace: <child recipe namespace>
63+
onError: fail
64+
selectResource: deployment
65+
timeout: 600
66+
type: check
67+
- chks:
68+
- condition: '{$.spec.replicas} == {$.status.readyReplicas}'
69+
name: podReady
70+
onError: fail
71+
timeout: 600
72+
name: platform-auth-service
73+
nameSelector: platform-auth-service
74+
namespace: <child recipe namespace>
75+
onError: fail
76+
selectResource: deployment
77+
timeout: 600
78+
type: check
79+
- chks:
80+
- condition: '{$.spec.replicas} == {$.status.readyReplicas}'
81+
name: podReady
82+
onError: fail
83+
timeout: 600
84+
name: platform-identity-management
85+
nameSelector: platform-identity-management
86+
namespace: <child recipe namespace>
87+
onError: fail
88+
selectResource: deployment
89+
timeout: 600
90+
type: check
91+
- labelSelector: foundationservices.cloudpak.ibm.com=cs-db-data
92+
name: cs-db-data
93+
namespace: <child recipe namespace>
94+
onError: fail
95+
ops:
96+
- command: |
97+
["/bin/bash", "-c", "/cs-db/br_cs-db.sh backup <child recipe namespace>"]
98+
container: cs-db-br
99+
name: cs-db-backup-pre
100+
timeout: 600
101+
- command: |
102+
["/bin/bash", "-c", "rm -rf /cs-db/cs-db-backup/database"]
103+
container: cs-db-br
104+
name: cs-db-backup-post
105+
timeout: 600
106+
- command: |
107+
["/bin/bash", "-c", "sleep 120 && /cs-db/br_cs-db.sh restore <child recipe namespace>"]
108+
container: cs-db-br
109+
name: restore
110+
timeout: 2000
111+
selectResource: pod
112+
type: exec
113+
workflows:
114+
- name: pre-backup
115+
priority: 2
116+
sequence:
117+
#csdb
118+
- hook: cs-db-data/cs-db-backup-pre
119+
- group: cs-db-pre-deploy
120+
- group: cs-db-deployment
121+
- name: post-backup
122+
priority: 0
123+
sequence:
124+
#volumes (should happen at the end)
125+
- group: cs-db-volume
126+
- hook: cs-db-data/cs-db-backup-post
127+
- name: data-restore
128+
priority: 2
129+
sequence:
130+
#csdb
131+
- hook: common-service-db-check/podReady
132+
- group: cs-db-pre-deploy
133+
- group: cs-db-volume
134+
- group: cs-db-deployment
135+
- hook: cs-db-deployment/podReady
136+
- hook: platform-identity-management/podReady
137+
- hook: platform-auth-service/podReady
138+
- hook: platform-identity-provider/podReady
139+

0 commit comments

Comments
 (0)