Skip to content

Commit 66eaf33

Browse files
HamzaHamza
authored andcommitted
update script to use single trusted profile, Update base-secret and auth-secret
1 parent f9b4398 commit 66eaf33

File tree

1 file changed

+53
-61
lines changed

1 file changed

+53
-61
lines changed

code-engine-cos2cos/config.sh

Lines changed: 53 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -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
@@ -89,15 +94,15 @@ fi
8994
# Creating Trusted Profile
9095
echo "---"
9196
echo "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
99104
fi
100-
COS_TRUSTED_PROFILE_ID_SECONDARY=$(echo ${COS_TRUSTED_PROFILE_ID_PRIMARY})
105+
101106
if [ $? -eq 0 ]; then
102107
echo -e "${GREEN}SUCCESS${NC}: Step 5: Trusted Profile Created/Fetched.\n"
103108
fi
@@ -107,31 +112,29 @@ echo "Step 6: Creating Secrets (Base Secret, Auth Secret)"
107112
echo "---"
108113
echo "Step 6.1: Creating Base Secret: $BASE_SECRET"
109114
ibmcloud 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

120124
if [ $? -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."
@@ -151,20 +154,15 @@ fi
151154
echo "---"
152155
echo "Step 6.2: Creating Auth Secret: $AUTH_SECRET"
153156
ibmcloud 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+
158159
if [ $? -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

194192
if [ $? -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
204209
fi
205210
if [ $? -eq 0 ]; then
206211
echo -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

Comments
 (0)