@@ -44,19 +44,24 @@ function create_instance_bucket(){
4444 COS_INSTANCE_CRN_SECONDARY=${COS_INSTANCE_CRN}
4545 fi
4646
47- # Creating bucket in the instance - silent failure.
48- echo " Step $I .2: Creating $TYPE Bucket."
49- ibmcloud cos bucket-create \
50- --bucket ${COS_BUCKET_NAME} \
51- --class smart \
52- --ibm-service-instance-id ${COS_INSTANCE_CRN} \
53- --region ${COS_REGION} 2> /dev/null
54-
5547 # Check if bucket exists.
48+ ibmcloud cos config crn --crn " ${COS_INSTANCE_CRN} " --force
5649 ibmcloud cos bucket-head --bucket " $COS_BUCKET_NAME " --region " $COS_REGION "
5750 if [ $? -ne 0 ]; then
58- echo -e " ${RED} Failure${NC} : Step $I .2: $TYPE Bucket does not exists. Exiting..."
59- exit 1
51+ echo " Step $I .2: Creating $TYPE Bucket."
52+ ibmcloud cos bucket-create \
53+ --bucket ${COS_BUCKET_NAME} \
54+ --class smart \
55+ --ibm-service-instance-id ${COS_INSTANCE_CRN} \
56+ --region ${COS_REGION} 2> /dev/null
57+ ibmcloud cos bucket-head --bucket " $COS_BUCKET_NAME " --region " $COS_REGION "
58+
59+ if [ $? -ne 0 ]; then
60+ echo -e " ${RED} Failure${NC} : Step $I .2: $TYPE Bucket creation failed. Exiting..."
61+ exit 0
62+ else
63+ echo -e " ${GREEN} Success${NC} : Step $I .2: $TYPE Bucket Created."
64+ fi
6065 else
6166 echo -e " ${GREEN} Success${NC} : Step $I .2: $TYPE Bucket Found."
6267 fi
8994# Creating Trusted Profile
9095echo " ---"
9196echo " Step 5: Creating/Fetching Trusted Profile $TRUSTED_PROFILE_NAME "
92- COS_TRUSTED_PROFILE_ID_PRIMARY =$( ibmcloud iam trusted-profile ${TRUSTED_PROFILE_NAME} --id)
93- if [ -z " $COS_TRUSTED_PROFILE_ID_PRIMARY " ] ; then
94- COS_TRUSTED_PROFILE_ID_PRIMARY =$( ibmcloud iam trusted-profile-create " ${TRUSTED_PROFILE_NAME} " -o JSON | jq -r ' .id' )
97+ COS_TRUSTED_PROFILE_ID =$( ibmcloud iam trusted-profile ${TRUSTED_PROFILE_NAME} --id)
98+ if [ -z " $COS_TRUSTED_PROFILE_ID " ] ; then
99+ COS_TRUSTED_PROFILE_ID =$( ibmcloud iam trusted-profile-create " ${TRUSTED_PROFILE_NAME} " -o JSON | jq -r ' .id' )
95100 if [ $? -ne 0 ]; then
96101 echo -e " ${RED} Failure${NC} : Step 5: Could not create trusted-profile.Exiting\n"
97102 exit 1
98103 fi
99104fi
100- COS_TRUSTED_PROFILE_ID_SECONDARY= $( echo ${COS_TRUSTED_PROFILE_ID_PRIMARY} )
105+
101106if [ $? -eq 0 ]; then
102107 echo -e " ${GREEN} SUCCESS${NC} : Step 5: Trusted Profile Created/Fetched.\n"
103108fi
@@ -107,31 +112,29 @@ echo "Step 6: Creating Secrets (Base Secret, Auth Secret)"
107112echo " ---"
108113echo " Step 6.1: Creating Base Secret: $BASE_SECRET "
109114ibmcloud ce secret create --name ${BASE_SECRET} \
110- --from-literal SECONDARY_COS_BUCKET_NAME=${COS_BUCKET_NAME_SECONDARY} \
111- --from-literal IBM_COS_RESOURCE_INSTANCE_ID_SECONDARY=${COS_INSTANCE_CRN_SECONDARY} \
112- --from-literal IBM_COS_REGION_SECONDARY=${COS_REGION_SECONDARY} \
113- --from-literal IBM_COS_ENDPOINT_SECONDARY=${COS_ENDPOINT_SECONDARY} \
114- --from-literal PRIMARY_COS_BUCKET_NAME=${COS_BUCKET_NAME_PRIMARY} \
115+ --from-literal COS_BUCKET_NAME_PRIMARY=${COS_BUCKET_NAME_PRIMARY} \
115116 --from-literal IBM_COS_RESOURCE_INSTANCE_ID_PRIMARY=${COS_INSTANCE_CRN_PRIMARY} \
116117 --from-literal IBM_COS_REGION_PRIMARY=${COS_REGION_PRIMARY} \
117118 --from-literal IBM_COS_ENDPOINT_PRIMARY=${COS_ENDPOINT_PRIMARY} \
118- --from-literal BUCKET_TIMESTAMP_FILENAME=${BUCKET_TIMESTAMP_FILENAME}
119+ --from-literal COS_BUCKET_NAME_SECONDARY=${COS_BUCKET_NAME_SECONDARY} \
120+ --from-literal IBM_COS_RESOURCE_INSTANCE_ID_SECONDARY=${COS_INSTANCE_CRN_SECONDARY} \
121+ --from-literal IBM_COS_REGION_SECONDARY=${COS_REGION_SECONDARY} \
122+ --from-literal IBM_COS_ENDPOINT_SECONDARY=${COS_ENDPOINT_SECONDARY}
119123
120124if [ $? -ne 0 ]; then
121125 echo " Secret '${BASE_SECRET} ' already exists."
122126 read -p " Do you want to override the existing secret? (y/n): " confirm
123127 if [[ " $confirm " =~ ^[Yy]$ ]]; then
124128 echo " Updating secret ${BASE_SECRET} ..."
125129 ibmcloud ce secret update --name ${BASE_SECRET} \
126- --from-literal SECONDARY_COS_BUCKET_NAME=${COS_BUCKET_NAME_SECONDARY} \
127- --from-literal IBM_COS_RESOURCE_INSTANCE_ID_SECONDARY=${COS_INSTANCE_CRN_SECONDARY} \
128- --from-literal IBM_COS_REGION_SECONDARY=${COS_REGION_SECONDARY} \
129- --from-literal IBM_COS_ENDPOINT_SECONDARY=${COS_ENDPOINT_SECONDARY} \
130- --from-literal PRIMARY_COS_BUCKET_NAME=${COS_BUCKET_NAME_PRIMARY} \
131- --from-literal IBM_COS_RESOURCE_INSTANCE_ID_PRIMARY=${COS_INSTANCE_CRN_PRIMARY} \
132- --from-literal IBM_COS_REGION_PRIMARY=${COS_REGION_PRIMARY} \
133- --from-literal IBM_COS_ENDPOINT_PRIMARY=${COS_ENDPOINT_PRIMARY} \
134- --from-literal BUCKET_TIMESTAMP_FILENAME=${BUCKET_TIMESTAMP_FILENAME}
130+ --from-literal COS_BUCKET_NAME_PRIMARY=${COS_BUCKET_NAME_PRIMARY} \
131+ --from-literal IBM_COS_RESOURCE_INSTANCE_ID_PRIMARY=${COS_INSTANCE_CRN_PRIMARY} \
132+ --from-literal IBM_COS_REGION_PRIMARY=${COS_REGION_PRIMARY} \
133+ --from-literal IBM_COS_ENDPOINT_PRIMARY=${COS_ENDPOINT_PRIMARY} \
134+ --from-literal COS_BUCKET_NAME_SECONDARY=${COS_BUCKET_NAME_SECONDARY} \
135+ --from-literal IBM_COS_RESOURCE_INSTANCE_ID_SECONDARY=${COS_INSTANCE_CRN_SECONDARY} \
136+ --from-literal IBM_COS_REGION_SECONDARY=${COS_REGION_SECONDARY} \
137+ --from-literal IBM_COS_ENDPOINT_SECONDARY=${COS_ENDPOINT_SECONDARY}
135138
136139 if [ $? -eq 0 ]; then
137140 echo -e " ${GREEN} SUCCESS${NC} : Step 6.1: Base secret update complete."
151154echo " ---"
152155echo " Step 6.2: Creating Auth Secret: $AUTH_SECRET "
153156ibmcloud ce secret create --name ${AUTH_SECRET} \
154- --from-literal IBM_COS_CRTokenFilePath_PRIMARY=${IBM_COS_CRTokenFilePath_PRIMARY} \
155- --from-literal IBM_COS_CRTokenFilePath_SECONDARY=${IBM_COS_CRTokenFilePath_SECONDARY} \
156- --from-literal IBM_COS_TRUSTED_PROFILE_ID_PRIMARY=${COS_TRUSTED_PROFILE_ID_PRIMARY} \
157- --from-literal IBM_COS_TRUSTED_PROFILE_ID_SECONDARY=${COS_TRUSTED_PROFILE_ID_SECONDARY}
157+ --from-literal IBM_COS_TRUSTED_PROFILE_ID=${COS_TRUSTED_PROFILE_ID}
158+
158159if [ $? -ne 0 ]; then
159160 echo " Secret '${AUTH_SECRET} ' already exists."
160161 read -p " Do you want to override the existing auth secret? (y/n): " confirm
161162 if [[ " $confirm " =~ ^[Yy]$ ]]; then
162163 echo " Updating secret ${AUTH_SECRET} ..."
163164 ibmcloud ce secret update --name ${AUTH_SECRET} \
164- --from-literal IBM_COS_CRTokenFilePath_PRIMARY=${IBM_COS_CRTokenFilePath_PRIMARY} \
165- --from-literal IBM_COS_CRTokenFilePath_SECONDARY=${IBM_COS_CRTokenFilePath_SECONDARY} \
166- --from-literal IBM_COS_TRUSTED_PROFILE_ID_PRIMARY=${COS_TRUSTED_PROFILE_ID_PRIMARY} \
167- --from-literal IBM_COS_TRUSTED_PROFILE_ID_SECONDARY=${COS_TRUSTED_PROFILE_ID_SECONDARY}
165+ --from-literal IBM_COS_TRUSTED_PROFILE_ID=${COS_TRUSTED_PROFILE_ID}
168166
169167 if [ $? -eq 0 ]; then
170168 echo -e " ${GREEN} SUCCESS${NC} : Step 6.3: Auth secret update complete."
@@ -187,20 +185,27 @@ ibmcloud ce job create --name ${JOB_NAME} \
187185 --src " ." \
188186 --env-from-secret ${BASE_SECRET} \
189187 --env-from-secret ${AUTH_SECRET} \
190- --argument true 2> /dev/null \
191- --wait
192- # --registry-secret ${CONTAINER_REGISTRY_SECRET} \
188+ --wait \
189+ --trusted-profiles-enabled \
190+ --argument true 2> /dev/null
193191
194192if [ $? -ne 0 ]; then
195- # echo "Job '${JOB_NAME}' already exists. Exiting"
196- # exit 1
193+ echo " Job '${JOB_NAME} ' already exists."
194+ read -p " Do you want to override the existing Job? (y/n): " confirm
195+ if [[ " $confirm " =~ ^[Yy]$ ]]; then
197196
198- echo " Job '${JOB_NAME} ' already exists. Updating Job."
199- ibmcloud ce job update --name ${JOB_NAME} --image " ${JOB_IMAGE} " \
200- --env-from-secret ${BASE_SECRET} \
201- --env-from-secret ${AUTH_SECRET} \
202- --argument true 2> /dev/null
203- # --registry-secret ${CONTAINER_REGISTRY_SECRET} \
197+ echo " Job '${JOB_NAME} ' already exists. Updating Job."
198+ ibmcloud ce job update --name ${JOB_NAME} \
199+ --src " ." \
200+ --env-from-secret ${BASE_SECRET} \
201+ --env-from-secret ${AUTH_SECRET} \
202+ --wait \
203+ --trusted-profiles-enabled \
204+ --argument true 2> /dev/null
205+ else
206+ echo " Job update cancelled by user. Exiting..."
207+ exit 0
208+ fi
204209fi
205210if [ $? -eq 0 ]; then
206211echo -e " ${GREEN} SUCCESS${NC} Step 7: Job Created"
@@ -231,16 +236,3 @@ ibmcloud iam trusted-profile-policy-create ${TRUSTED_PROFILE_NAME} \
231236--service-name cloud-object-storage \
232237--service-instance ${COS_INSTANCE_CRN_SECONDARY} 2> /dev/null
233238# echo "***** DONE: Linking Secondary COS To Trusted Profile"
234-
235- echo " Step 8.4: Compute Resource Token"
236- curl \
237- --request PATCH " https://api.${PROJECT_REGION} .codeengine.cloud.ibm.com/v2/projects/$( ibmcloud ce project current --output json | jq -r .guid) /jobs/${JOB_NAME} " \
238- --header ' Accept: application/json' \
239- --header " Authorization: $( ibmcloud iam oauth-tokens --output json | jq -r ' .iam_token' ) " \
240- --header ' Content-Type: application/merge-patch+json' \
241- --header ' If-Match: *' \
242- --data-raw " {
243- \" run_compute_resource_token_enabled\" : true
244- }" 2> /dev/null
245- # echo "******* DONE: Compute Resource Token *******"
246-
0 commit comments