Skip to content

Commit 3fdfafe

Browse files
committed
Check if image tag exists before pushing in build action.
Signed-off-by: Humair Khan <[email protected]>
1 parent bb3d3f3 commit 3fdfafe

File tree

1 file changed

+16
-32
lines changed

1 file changed

+16
-32
lines changed

.github/workflows/tag-and-build.yml

Lines changed: 16 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,6 @@ jobs:
5656
runs-on: ubuntu-latest
5757
permissions:
5858
contents: read
59-
env:
60-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
6159
steps:
6260
- uses: actions/checkout@v3
6361
with:
@@ -69,18 +67,19 @@ jobs:
6967
username: ${{ secrets.QUAY_ID }}
7068
password: ${{ secrets.QUAY_TOKEN }}
7169
registry: quay.io
72-
- name: Buid APIServer
70+
- name: Buid image
7371
env:
74-
API_SERVER: quay.io/${{ inputs.quay_org }}/${IMAGE_SERVER}:${{ inputs.target_tag }}
72+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_SERVER}:${{ inputs.target_tag }}
73+
DOCKERFILE: backend/Dockerfile
7574
run: |
76-
podman build . -f backend/Dockerfile -t ${{ env.API_SERVER }} && podman push ${{ env.API_SERVER }}
75+
RESULT=$(podman image exists ${{ env.IMAGE }})
76+
if [ $RESULT -eq 1 ]; then echo "Image already exists" && exit 1; fi
77+
podman build . -f ${{ env.DOCKERFILE }} -t ${{ env.IMAGE }} && podman push ${{ env.IMAGE }}
7778
7879
ui-build:
7980
runs-on: ubuntu-latest
8081
permissions:
8182
contents: read
82-
env:
83-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
8483
steps:
8584
- uses: actions/checkout@v3
8685
with:
@@ -94,16 +93,15 @@ jobs:
9493
registry: quay.io
9594
- name: Build image
9695
env:
97-
UI: quay.io/${{ inputs.quay_org }}/${IMAGE_UI}:${{ inputs.target_tag }}
96+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_UI}:${{ inputs.target_tag }}
97+
DOCKERFILE: frontend/Dockerfile
9898
run: |
9999
podman build . -f frontend/Dockerfile -t ${{ env.UI }} && podman push ${{ env.UI }}
100100
101101
cache-build:
102102
runs-on: ubuntu-latest
103103
permissions:
104104
contents: read
105-
env:
106-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
107105
steps:
108106
- uses: actions/checkout@v3
109107
with:
@@ -117,16 +115,14 @@ jobs:
117115
registry: quay.io
118116
- name: Build image
119117
env:
120-
CACHE: quay.io/${{ inputs.quay_org }}/${IMAGE_CACHE}:${{ inputs.target_tag }}
118+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_CACHE}:${{ inputs.target_tag }}
121119
run: |
122120
podman build . -f backend/Dockerfile.cacheserver -t ${{ env.CACHE }} && podman push ${{ env.CACHE }}
123121
124122
PA-build:
125123
runs-on: ubuntu-latest
126124
permissions:
127125
contents: read
128-
env:
129-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
130126
steps:
131127
- uses: actions/checkout@v3
132128
with:
@@ -140,16 +136,14 @@ jobs:
140136
registry: quay.io
141137
- name: Build image
142138
env:
143-
PA: quay.io/${{ inputs.quay_org }}/${IMAGE_PA}:${{ inputs.target_tag }}
139+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_PA}:${{ inputs.target_tag }}
144140
run: |
145141
podman build . -f backend/Dockerfile.persistenceagent -t ${{ env.PA }} && podman push ${{ env.PA }}
146142
147143
SWF-build:
148144
runs-on: ubuntu-latest
149145
permissions:
150146
contents: read
151-
env:
152-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
153147
steps:
154148
- uses: actions/checkout@v3
155149
with:
@@ -163,16 +157,14 @@ jobs:
163157
registry: quay.io
164158
- name: Build image
165159
env:
166-
SWF: quay.io/${{ inputs.quay_org }}/${IMAGE_SWF}:${{ inputs.target_tag }}
160+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_SWF}:${{ inputs.target_tag }}
167161
run: |
168162
podman build . -f backend/Dockerfile.scheduledworkflow -t ${{ env.SWF }} && podman push ${{ env.SWF }}
169163
170164
VC-build:
171165
runs-on: ubuntu-latest
172166
permissions:
173167
contents: read
174-
env:
175-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
176168
steps:
177169
- uses: actions/checkout@v3
178170
with:
@@ -186,16 +178,14 @@ jobs:
186178
registry: quay.io
187179
- name: Build image
188180
env:
189-
VC: quay.io/${{ inputs.quay_org }}/${IMAGE_VC}:${{ inputs.target_tag }}
181+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_VC}:${{ inputs.target_tag }}
190182
run: |
191183
podman build . -f backend/Dockerfile.viewercontroller -t ${{ env.VC }} && podman push ${{ env.VC }}
192184
193185
ARTIFACT-build:
194186
runs-on: ubuntu-latest
195187
permissions:
196188
contents: read
197-
env:
198-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
199189
steps:
200190
- uses: actions/checkout@v3
201191
with:
@@ -209,16 +199,14 @@ jobs:
209199
registry: quay.io
210200
- name: Build image
211201
env:
212-
ARTIFACT: quay.io/${{ inputs.quay_org }}/${IMAGE_ARTIFACT}:${{ inputs.target_tag }}
202+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_ARTIFACT}:${{ inputs.target_tag }}
213203
run: |
214204
podman build . -f backend/artifact_manager/Dockerfile -t ${{ env.ARTIFACT }} && podman push ${{ env.ARTIFACT }}
215205
216206
MLMD_WRITER-build:
217207
runs-on: ubuntu-latest
218208
permissions:
219209
contents: read
220-
env:
221-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
222210
steps:
223211
- uses: actions/checkout@v3
224212
with:
@@ -232,16 +220,14 @@ jobs:
232220
registry: quay.io
233221
- name: Build image
234222
env:
235-
MLMD_WRITER: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_WRITER}:${{ inputs.target_tag }}
223+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_WRITER}:${{ inputs.target_tag }}
236224
run: |
237225
podman build . -f backend/metadata_writer/Dockerfile -t ${{ env.MLMD_WRITER }} && podman push ${{ env.MLMD_WRITER }}
238226
239227
MLMD_ENVOY-build:
240228
runs-on: ubuntu-latest
241229
permissions:
242230
contents: read
243-
env:
244-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
245231
steps:
246232
- uses: actions/checkout@v3
247233
with:
@@ -255,16 +241,14 @@ jobs:
255241
registry: quay.io
256242
- name: Build image
257243
env:
258-
MLMD_ENVOY: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_ENVOY}:${{ inputs.target_tag }}
244+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_ENVOY}:${{ inputs.target_tag }}
259245
run: |
260246
podman build . -f third-party/metadata_envoy/Dockerfile -t ${{ env.MLMD_ENVOY }} && podman push ${{ env.MLMD_ENVOY }}
261247
262248
MLMD_GRPC-build:
263249
runs-on: ubuntu-latest
264250
permissions:
265251
contents: read
266-
env:
267-
IMAGE_ORG_BASE: quay.io/${{ inputs.quay_org }}
268252
steps:
269253
- uses: actions/checkout@v3
270254
with:
@@ -278,6 +262,6 @@ jobs:
278262
registry: quay.io
279263
- name: Build image
280264
env:
281-
MLMD_GRPC: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_GRPC}:${{ inputs.target_tag }}
265+
IMAGE: quay.io/${{ inputs.quay_org }}/${IMAGE_MLMD_GRPC}:${{ inputs.target_tag }}
282266
run: |
283267
podman build . -f third-party/ml-metadata/Dockerfile -t ${{ env.MLMD_GRPC }} && podman push ${{ env.MLMD_GRPC }}

0 commit comments

Comments
 (0)