Skip to content

Commit 3aa03da

Browse files
Adding check for secret and endpoint
1 parent 472b5b0 commit 3aa03da

File tree

1 file changed

+46
-46
lines changed

1 file changed

+46
-46
lines changed

action.yml

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,10 @@ runs:
8989
shell: bash
9090
run: ibmcloud plugin install code-engine container-registry
9191

92+
- name: Set short SHA to use as image tag
93+
shell: bash
94+
run: echo "SHORT_SHA=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
95+
9296
# Select or create Code Engine Project
9397
- name: Select Code Engine Project
9498
id: select_code_engine_project
@@ -106,52 +110,48 @@ runs:
106110
run: |
107111
if [[ -n "${{ inputs.registry_namespace }}" && "${{ inputs.registry_image }}" ]] ; then
108112
ibmcloud cr login
109-
echo "endpoint=$(ibmcloud cr region | grep -i 'icr.io' | cut -d "'" -f4)" >> "$GITHUB_ENV"
113+
echo "registry_image=--image private.$(ibmcloud cr region | grep -i 'icr.io' | cut -d "'" -f4)/${{ inputs.registry_namespace }}/${{ inputs.registry_image }}:${{ env.SHORT_SHA }}" >> "$GITHUB_OUTPUT"
110114
else
111-
echo "endpoint=" >> "$GITHUB_ENV"
115+
echo "registry_image=" >> "$GITHUB_OUTPUT"
112116
fi
113117
114-
- name: Set short SHA
118+
- name: Create or use Code Engine registry secret
115119
shell: bash
116-
run: echo "SHORT_SHA=$(echo ${{ github.sha }} | cut -c1-8)" >> $GITHUB_ENV
120+
id: cr_secret
121+
run: |
122+
if ibmcloud ce secret get --name "${{ inputs.workload_name }}-ce-cr-secret" > /dev/null 2>&1; then
123+
echo "registry_secret=--registry-secret ${{ inputs.workload_name }}-ce-cr-secret" >> "$GITHUB_OUTPUT"
124+
else
125+
ibmcloud ce registry create --name ${{ inputs.workload_name }}-ce-cr-secret --username iamapikey --password ${{ inputs.ibmcloud_api_key }} --server ${{ env.ICR_ENDPOINT }} --email githubaction@example.com
117126
118-
# if ibmcloud ce secret get --name "${{ inputs.workload_name }}-ce-cr-secret" > /dev/null 2>&1; then
119-
# echo "registry_secret=--registry-secret ${{ inputs.workload_name }}-ce-cr-secret" >> "$GITHUB_OUTPUT"
120-
# else
121-
# ibmcloud ce registry create --name ${{ inputs.workload_name }}-ce-cr-secret --username iamapikey --password ${{ inputs.ibmcloud_api_key }} --server $endpoint --email githubaction@example.com
122-
# echo "registry_secret=--registry-secret ${{ inputs.workload_name }}-ce-cr-secret" >> "$GITHUB_OUTPUT"
123-
# fi
127+
echo "registry_secret=--registry-secret ${{ inputs.workload_name }}-ce-cr-secret" >> "$GITHUB_OUTPUT"
128+
fi
124129
125-
- name: show outputs
130+
# Set cpu, memory, and custom arg defaults for workloads
131+
- name: Set workload resources
132+
id: set_workload_resources
126133
shell: bash
127134
run: |
128-
echo ${{ steps.login_to_cr.outputs.endpoint }}
129-
130-
# # Set cpu, memory, and custom arg defaults for workloads
131-
# - name: Set workload resources
132-
# id: set_workload_resources
133-
# shell: bash
134-
# run: |
135-
# # set the CPU value
136-
# if [[ "${{ inputs.workload_cpu }}" != "" ]] ; then
137-
# echo "workload_cpu=--cpu ${{ inputs.workload_cpu }}" >> "$GITHUB_OUTPUT"
138-
# else
139-
# echo "workload_cpu=" >> "$GITHUB_OUTPUT"
140-
# fi
135+
# set the CPU value
136+
if [[ "${{ inputs.workload_cpu }}" != "" ]] ; then
137+
echo "workload_cpu=--cpu ${{ inputs.workload_cpu }}" >> "$GITHUB_OUTPUT"
138+
else
139+
echo "workload_cpu=" >> "$GITHUB_OUTPUT"
140+
fi
141141
142-
# # set the memory value
143-
# if [[ "${{ inputs.workload_memory }}" != "" ]] ; then
144-
# echo "workload_memory=--memory ${{ inputs.workload_memory }}" >> "$GITHUB_OUTPUT"
145-
# else
146-
# echo "workload_memory=" >> "$GITHUB_OUTPUT"
147-
# fi
142+
# set the memory value
143+
if [[ "${{ inputs.workload_memory }}" != "" ]] ; then
144+
echo "workload_memory=--memory ${{ inputs.workload_memory }}" >> "$GITHUB_OUTPUT"
145+
else
146+
echo "workload_memory=" >> "$GITHUB_OUTPUT"
147+
fi
148148
149-
# # set the arg value
150-
# if [[ "${{ inputs.workload_arg }}" != "" ]] ; then
151-
# echo "workload_arg=--arg ${{ inputs.workload_arg }}" >> "$GITHUB_OUTPUT"
152-
# else
153-
# echo "workload_arg=" >> "$GITHUB_OUTPUT"
154-
# fi
149+
# set the arg value
150+
if [[ "${{ inputs.workload_arg }}" != "" ]] ; then
151+
echo "workload_arg=--arg ${{ inputs.workload_arg }}" >> "$GITHUB_OUTPUT"
152+
else
153+
echo "workload_arg=" >> "$GITHUB_OUTPUT"
154+
fi
155155
156156
# # Functions deployment or update steps
157157
# - name: Create or update code engine serverless function
@@ -167,17 +167,17 @@ runs:
167167
# fi
168168

169169
# # Application deployment or update steps
170-
# - name: Create or update code engine application
171-
# shell: bash
172-
# id: ce-app
173-
# if: ( inputs.workload_type == 'application' || inputs.workload_type == 'app' )
174-
# run: |
170+
- name: Create or update code engine application
171+
shell: bash
172+
id: ce-app
173+
if: ( inputs.workload_type == 'application' || inputs.workload_type == 'app' )
174+
run: |
175175
176-
# if ibmcloud ce application get --name ${{ inputs.workload_name }} ; then
177-
# ibmcloud ce application update --name ${{ inputs.workload_name }} --build-source ${{ inputs.build_source }} ${{ steps.set_workload_resources.outputs.workload_cpu }} ${{ steps.set_workload_resources.outputs.workload_memory }} --port ${{ inputs.workload_port }} ${{ steps.set_workload_resources.outputs.workload_arg }} ${{ steps.login_to_cr.outputs.workload_image }} ${{ steps.login_to_cr.outputs.registry_secret }}
178-
# else
179-
# ibmcloud ce application create --name ${{ inputs.workload_name }} --build-source ${{ inputs.build_source }} ${{ steps.set_workload_resources.outputs.workload_cpu }} ${{ steps.set_workload_resources.outputs.workload_memory }} ${{ steps.set_workload_resources.outputs.workload_arg }} ${{ steps.login_to_cr.outputs.workload_image }} ${{ steps.login_to_cr.outputs.registry_secret }}
180-
# fi
176+
if ibmcloud ce application get --name ${{ inputs.workload_name }} ; then
177+
ibmcloud ce application update --name ${{ inputs.workload_name }} --build-source ${{ inputs.build_source }} ${{ steps.set_workload_resources.outputs.workload_cpu }} ${{ steps.set_workload_resources.outputs.workload_memory }} --port ${{ inputs.workload_port }} ${{ steps.set_workload_resources.outputs.workload_arg }} ${{ steps.login_to_cr.outputs.registry_image }} ${{ steps.cr_secret.outputs.registry_secret }}
178+
else
179+
ibmcloud ce application create --name ${{ inputs.workload_name }} --build-source ${{ inputs.build_source }} ${{ steps.set_workload_resources.outputs.workload_cpu }} ${{ steps.set_workload_resources.outputs.workload_memory }} ${{ steps.set_workload_resources.outputs.workload_arg }} ${{ steps.login_to_cr.outputs.registry_image }} ${{ steps.cr_secret.outputs.registry_secret }}
180+
fi
181181
182182
# # Job deployment or update steps
183183
# - name: Create or update code engine job

0 commit comments

Comments
 (0)