Skip to content

Commit 4fe2b1a

Browse files
committed
chore: add ability to use another registry (in forks) via env variable
Signed-off-by: Oleksii Kurinnyi <[email protected]>
1 parent 92af3db commit 4fe2b1a

File tree

5 files changed

+122
-104
lines changed

5 files changed

+122
-104
lines changed

.github/workflows/empty-worksapce-smoke-test-on-minikube-ubi9.yaml

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ on:
1919
- LICENSE
2020

2121
env:
22+
# Use repository variable if set, otherwise fallback to default registry
23+
REGISTRY: ${{ vars.REGISTRY || 'quay.io/devfile' }}
2224
USERSTORY: CloneGitRepoAPI
2325
TS_API_TEST_KUBERNETES_COMMAND_LINE_TOOL: kubectl
2426
DEPLOYMENT_TIMEOUT: 90s
@@ -71,12 +73,12 @@ jobs:
7173
- name: Build base image
7274
run: |
7375
eval $(minikube docker-env)
74-
cd base/ubi9 && docker build -t quay.io/devfile/base-developer-image:ubi9-latest .
76+
cd base/ubi9 && docker build -t ${{ env.REGISTRY }}/base-developer-image:ubi9-latest .
7577
7678
- name: Build universal image
7779
run: |
7880
eval $(minikube docker-env)
79-
cd universal/ubi9 && docker build -t quay.io/devfile/universal-developer-image:${{ env.PR_NUMBER }} .
81+
cd universal/ubi9 && docker build -t ${{ env.REGISTRY }}/universal-developer-image:${{ env.PR_NUMBER }} .
8082
8183
- name: Checkout DWO
8284
uses: actions/checkout@master
@@ -104,7 +106,7 @@ jobs:
104106
- name: Check that UDI is present in the image list
105107
run: |
106108
# we used it for the build above and do not need it anymore. It saves the disk space
107-
minikube image rm quay.io/devfile/base-developer-image:ubi9-latest
109+
minikube image rm ${{ env.REGISTRY }}/base-developer-image:ubi9-latest
108110
minikube image list --format table
109111
110112
- name: Install NodeJs
@@ -159,7 +161,7 @@ jobs:
159161
cpuRequest: 30m
160162
- name: che-code-runtime-description
161163
container:
162-
image: quay.io/devfile/universal-developer-image:${{ env.PR_NUMBER }}
164+
image: ${{ env.REGISTRY }}/universal-developer-image:${{ env.PR_NUMBER }}
163165
memoryLimit: 1024Mi
164166
memoryRequest: 256Mi
165167
cpuLimit: 500m
@@ -242,7 +244,7 @@ jobs:
242244
243245
- name: Run Empty workspace smoke test
244246
run: |
245-
export TS_API_TEST_UDI_IMAGE=quay.io/devfile/universal-developer-image:${{ env.PR_NUMBER }}
247+
export TS_API_TEST_UDI_IMAGE=${{ env.REGISTRY }}/universal-developer-image:${{ env.PR_NUMBER }}
246248
export TS_API_TEST_CHE_CODE_EDITOR_DEVFILE_URI=http://file-service.default.svc:80/devfile.yaml
247249
cd che/tests/e2e
248250
npm i

.github/workflows/pr-check-ubi10.yaml

Lines changed: 34 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ name: Pull Request Check UBI 10
1212
# Trigger the workflow on pull request
1313
on: [pull_request]
1414

15+
env:
16+
# Use repository variable if set, otherwise fallback to default registry
17+
REGISTRY: ${{ vars.REGISTRY || 'quay.io/devfile' }}
18+
1519
jobs:
1620
build-base-image:
1721
name: Build base image
@@ -42,18 +46,18 @@ jobs:
4246
-t base-developer-image-${{env.arch}} .
4347
- name: Display docker images
4448
run: docker images
45-
- name: Login to Quay.io
49+
- name: Login to Registry
4650
uses: docker/login-action@v3
4751
with:
48-
registry: quay.io
52+
registry: ${{ env.REGISTRY }}
4953
username: ${{ secrets.QUAY_USERNAME }}
5054
password: ${{ secrets.QUAY_PASSWORD }}
5155
# TODO: Remove this step once UDI on UBI 10 is ready and we have proper PR workflow for UDI
5256
# This temporary step pushes base image to registry for testing purposes
5357
- name: Tag and push base image for testing
5458
run: |
55-
docker tag base-developer-image-${{env.arch}} quay.io/devfile/base-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}}
56-
docker push quay.io/devfile/base-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}}
59+
docker tag base-developer-image-${{env.arch}} ${{ env.REGISTRY }}/base-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}}
60+
docker push ${{ env.REGISTRY }}/base-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}}
5761
- name: Compress image to a file
5862
run: docker save base-developer-image-${{env.arch}} | gzip > base-developer-image-${{env.arch}}.tgz
5963
- name: Upload image artifact
@@ -67,28 +71,28 @@ jobs:
6771
runs-on: ubuntu-22.04
6872
needs: build-base-image
6973
steps:
70-
- name: Login to Quay.io
74+
- name: Login to Registry
7175
uses: docker/login-action@v3
7276
with:
73-
registry: quay.io
77+
registry: ${{ env.REGISTRY }}
7478
username: ${{ secrets.QUAY_USERNAME }}
7579
password: ${{ secrets.QUAY_PASSWORD }}
7680
# TODO: Remove this job once UDI on UBI 10 is ready and we have proper PR workflow for UDI
7781
# This temporary job publishes base image manifest for testing purposes
7882
- name: publish base image manifest
7983
run: |
80-
docker manifest create quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}} \
81-
--amend quay.io/devfile/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
82-
--amend quay.io/devfile/base-developer-image:arm64-ubi10-pr-${{github.event.number}}
84+
docker manifest create ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
85+
--amend ${{ env.REGISTRY }}/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
86+
--amend ${{ env.REGISTRY }}/base-developer-image:arm64-ubi10-pr-${{github.event.number}}
8387
84-
docker manifest annotate quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}} \
85-
quay.io/devfile/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
88+
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
89+
${{ env.REGISTRY }}/base-developer-image:amd64-ubi10-pr-${{github.event.number}} \
8690
--os linux --arch amd64
87-
docker manifest annotate quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}} \
88-
quay.io/devfile/base-developer-image:arm64-ubi10-pr-${{github.event.number}} \
91+
docker manifest annotate ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}} \
92+
${{ env.REGISTRY }}/base-developer-image:arm64-ubi10-pr-${{github.event.number}} \
8993
--os linux --arch arm64
9094
91-
docker manifest push quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}}
95+
docker manifest push ${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}}
9296
- name: 'Comment PR'
9397
uses: actions/github-script@v7
9498
with:
@@ -98,7 +102,7 @@ jobs:
98102
issue_number: ${{github.event.number}},
99103
owner: context.repo.owner,
100104
repo: context.repo.repo,
101-
body: `Pull Request UBI 10 images published ✨\n\nBase Image: [quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}}](https://quay.io/devfile/base-developer-image:ubi10-pr-${{github.event.number}})`
105+
body: `Pull Request UBI 10 images published ✨\n\nBase Image: [${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}}](https://${{ env.REGISTRY }}/base-developer-image:ubi10-pr-${{github.event.number}})`
102106
})
103107
104108
# build-udi:
@@ -136,11 +140,11 @@ jobs:
136140
# - name: Display docker images
137141
# run: docker images
138142
# - name: Update UDI Dockerfile
139-
# run: sed "s|quay.io/devfile/base-developer-image:ubi10-latest|base-developer-image-${{env.arch}}|" -i "universal/ubi10/Dockerfile"
140-
# - name: Login to Quay.io
143+
# run: sed "s|${{ env.REGISTRY }}/base-developer-image:ubi10-latest|base-developer-image-${{env.arch}}|" -i "universal/ubi10/Dockerfile"
144+
# - name: Login to Registry
141145
# uses: docker/login-action@v3
142146
# with:
143-
# registry: quay.io
147+
# registry: ${{ env.REGISTRY }}
144148
# username: ${{ secrets.QUAY_USERNAME }}
145149
# password: ${{ secrets.QUAY_PASSWORD }}
146150
# - name: Build udi
@@ -149,33 +153,33 @@ jobs:
149153
# --platform linux/${{env.arch}} \
150154
# --progress=plain \
151155
# --push \
152-
# -t quay.io/devfile/universal-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}} .
156+
# -t ${{ env.REGISTRY }}/universal-developer-image:${{env.arch}}-ubi10-pr-${{github.event.number}} .
153157

154158
# publish-udi:
155159
# name: Publish udi
156160
# runs-on: ubuntu-22.04
157161
# needs: build-udi
158162
# steps:
159-
# - name: Login to Quay.io
163+
# - name: Login to Registry
160164
# uses: docker/login-action@v3
161165
# with:
162-
# registry: quay.io
166+
# registry: ${{ env.REGISTRY }}
163167
# username: ${{ secrets.QUAY_USERNAME }}
164168
# password: ${{ secrets.QUAY_PASSWORD }}
165169
# - name: publish
166170
# run: |
167-
# docker manifest create quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}} \
168-
# --amend quay.io/devfile/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
169-
# --amend quay.io/devfile/universal-developer-image:arm64-ubi10-pr-${{github.event.number}}
171+
# docker manifest create ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
172+
# --amend ${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
173+
# --amend ${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}}
170174
#
171-
# docker manifest annotate quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}} \
172-
# quay.io/devfile/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
175+
# docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
176+
# ${{ env.REGISTRY }}/universal-developer-image:amd64-ubi10-pr-${{github.event.number}} \
173177
# --os linux --arch amd64
174-
# docker manifest annotate quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}} \
175-
# quay.io/devfile/universal-developer-image:arm64-ubi10-pr-${{github.event.number}} \
178+
# docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}} \
179+
# ${{ env.REGISTRY }}/universal-developer-image:arm64-ubi10-pr-${{github.event.number}} \
176180
# --os linux --arch arm64
177181
#
178-
# docker manifest push quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}}
182+
# docker manifest push ${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}}
179183
# - name: 'Comment PR'
180184
# uses: actions/github-script@v7
181185
# with:
@@ -185,5 +189,5 @@ jobs:
185189
# issue_number: ${{github.event.number}},
186190
# owner: context.repo.owner,
187191
# repo: context.repo.repo,
188-
# body: `Pull Request images published ✨\n\nUDI: [quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}}](https://quay.io/devfile/universal-developer-image:ubi10-pr-${{github.event.number}})`
192+
# body: `Pull Request images published ✨\n\nUDI: [${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}}](https://${{ env.REGISTRY }}/universal-developer-image:ubi10-pr-${{github.event.number}})`
189193
# })

.github/workflows/pr-check.yaml

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ name: Pull Request Check
1212
# Trigger the workflow on pull request
1313
on: [pull_request]
1414

15+
env:
16+
# Use repository variable if set, otherwise fallback to default registry
17+
REGISTRY: ${{ vars.REGISTRY || 'quay.io/devfile' }}
18+
1519
jobs:
1620
build-base-image:
1721
name: Build base image
@@ -85,11 +89,11 @@ jobs:
8589
- name: Display docker images
8690
run: docker images
8791
- name: Update UDI Dockerfile
88-
run: sed "s|quay.io/devfile/base-developer-image:ubi9-latest|base-developer-image-${{env.arch}}|" -i "universal/ubi9/Dockerfile"
89-
- name: Login to Quay.io
92+
run: sed "s|${{ env.REGISTRY }}/base-developer-image:ubi9-latest|base-developer-image-${{env.arch}}|" -i "universal/ubi9/Dockerfile"
93+
- name: Login to Registry
9094
uses: docker/login-action@v3
9195
with:
92-
registry: quay.io
96+
registry: ${{ env.REGISTRY }}
9397
username: ${{ secrets.QUAY_USERNAME }}
9498
password: ${{ secrets.QUAY_PASSWORD }}
9599
- name: Build udi
@@ -98,33 +102,33 @@ jobs:
98102
--platform linux/${{env.arch}} \
99103
--progress=plain \
100104
--push \
101-
-t quay.io/devfile/universal-developer-image:${{env.arch}}-pr-${{github.event.number}} .
105+
-t ${{ env.REGISTRY }}/universal-developer-image:${{env.arch}}-pr-${{github.event.number}} .
102106
103107
publish-udi:
104108
name: Publish udi
105109
runs-on: ubuntu-22.04
106110
needs: build-udi
107111
steps:
108-
- name: Login to Quay.io
112+
- name: Login to Registry
109113
uses: docker/login-action@v3
110114
with:
111-
registry: quay.io
115+
registry: ${{ env.REGISTRY }}
112116
username: ${{ secrets.QUAY_USERNAME }}
113117
password: ${{ secrets.QUAY_PASSWORD }}
114118
- name: publish
115119
run: |
116-
docker manifest create quay.io/devfile/universal-developer-image:pr-${{github.event.number}} \
117-
--amend quay.io/devfile/universal-developer-image:amd64-pr-${{github.event.number}} \
118-
--amend quay.io/devfile/universal-developer-image:arm64-pr-${{github.event.number}}
120+
docker manifest create ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
121+
--amend ${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} \
122+
--amend ${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}}
119123
120-
docker manifest annotate quay.io/devfile/universal-developer-image:pr-${{github.event.number}} \
121-
quay.io/devfile/universal-developer-image:amd64-pr-${{github.event.number}} \
124+
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
125+
${{ env.REGISTRY }}/universal-developer-image:amd64-pr-${{github.event.number}} \
122126
--os linux --arch amd64
123-
docker manifest annotate quay.io/devfile/universal-developer-image:pr-${{github.event.number}} \
124-
quay.io/devfile/universal-developer-image:arm64-pr-${{github.event.number}} \
127+
docker manifest annotate ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}} \
128+
${{ env.REGISTRY }}/universal-developer-image:arm64-pr-${{github.event.number}} \
125129
--os linux --arch arm64
126130
127-
docker manifest push quay.io/devfile/universal-developer-image:pr-${{github.event.number}}
131+
docker manifest push ${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}}
128132
- name: 'Comment PR'
129133
uses: actions/github-script@v7
130134
with:
@@ -134,5 +138,5 @@ jobs:
134138
issue_number: ${{github.event.number}},
135139
owner: context.repo.owner,
136140
repo: context.repo.repo,
137-
body: `Pull Request images published ✨\n\nUDI: [quay.io/devfile/universal-developer-image:pr-${{github.event.number}}](https://quay.io/devfile/universal-developer-image:pr-${{github.event.number}})`
141+
body: `Pull Request images published ✨\n\nUDI: [${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}}](https://${{ env.REGISTRY }}/universal-developer-image:pr-${{github.event.number}})`
138142
})

0 commit comments

Comments
 (0)