Skip to content

Commit b1bc7a1

Browse files
authored
chore: Allow mirroring of dxflrs/garage (#1508)
* chore: Allow mirroring of dxflrs/garage We want to send it do a different project, so for now there is an additional input. Ideally we wouldn't have to keep track of these mappings. * fix(mirror): Handle auth for each project
1 parent 52d4003 commit b1bc7a1

1 file changed

Lines changed: 36 additions & 2 deletions

File tree

.github/workflows/mirror.yaml

Lines changed: 36 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,22 @@ on:
1515
- registry.k8s.io/sig-storage/csi-provisioner
1616
- registry.k8s.io/git-sync/git-sync
1717
- registry-1.docker.io/library/golang
18+
- registry-1.docker.io/dxflrs/garage
1819
image-index-manifest-tag:
1920
description: |
2021
The image index manifest tag, like 1.0.14 or v1.0.14
2122
type: string
2223
required: true
24+
# TODO (@NickLarsenNZ): Combine this with the source image above
25+
# So that we don't have to remember which project for which mirrored image
26+
# Note that each project has a different credential
27+
destination-project:
28+
description: |
29+
Destination project in Harbor
30+
type: choice
31+
options:
32+
- sdp
33+
- stackable
2334

2435
permissions: {}
2536

@@ -59,7 +70,8 @@ jobs:
5970
run: |
6071
echo "IMAGE_REPOSITORY=$(.scripts/get_repo_name.sh)" | tee -a "$GITHUB_ENV"
6172
62-
- name: Publish Container Image on oci.stackable.tech
73+
- name: Publish Container Image on oci.stackable.tech/sdp
74+
if: inputs.destination-project == 'sdp'
6375
uses: stackabletech/actions/publish-image@8a8085be0a8cec3d24ad3970e602d65be487da6a # v0.14.1
6476
with:
6577
image-registry-uri: oci.stackable.tech
@@ -69,6 +81,17 @@ jobs:
6981
image-manifest-tag: ${{ format('{0}-{1}', inputs.image-index-manifest-tag, matrix.arch) }}
7082
source-image-uri: ${{ format('{0}:{1}', inputs.image-repository-uri, inputs.image-index-manifest-tag) }}
7183

84+
- name: Publish Container Image on oci.stackable.tech/stackable
85+
if: inputs.destination-project == 'stackable'
86+
uses: stackabletech/actions/publish-image@8a8085be0a8cec3d24ad3970e602d65be487da6a # v0.14.1
87+
with:
88+
image-registry-uri: oci.stackable.tech
89+
image-registry-username: robot$stackable+github-action-build
90+
image-registry-password: ${{ secrets.HARBOR_ROBOT_STACKABLE_GITHUB_ACTION_BUILD_SECRET }}
91+
image-repository: ${{ format('stackable/{0}', env.IMAGE_REPOSITORY) }}
92+
image-manifest-tag: ${{ format('{0}-{1}', inputs.image-index-manifest-tag, matrix.arch) }}
93+
source-image-uri: ${{ format('{0}:{1}', inputs.image-repository-uri, inputs.image-index-manifest-tag) }}
94+
7295
publish_manifests:
7396
name: Build/Publish Image Index Manifest
7497
needs: [mirror-image]
@@ -87,7 +110,8 @@ jobs:
87110
run: |
88111
echo "IMAGE_REPOSITORY=$(.scripts/get_repo_name.sh)" | tee -a "$GITHUB_ENV"
89112
90-
- name: Publish and Sign Image Index Manifest to oci.stackable.tech
113+
- name: Publish and Sign Image Index Manifest to oci.stackable.tech/sdp
114+
if: inputs.destination-project == 'sdp'
91115
uses: stackabletech/actions/publish-image-index-manifest@8a8085be0a8cec3d24ad3970e602d65be487da6a # v0.14.1
92116
with:
93117
image-registry-uri: oci.stackable.tech
@@ -96,6 +120,16 @@ jobs:
96120
image-repository: ${{ format('sdp/{0}', env.IMAGE_REPOSITORY) }}
97121
image-index-manifest-tag: ${{ inputs.image-index-manifest-tag }}
98122

123+
- name: Publish and Sign Image Index Manifest to oci.stackable.tech/stackable
124+
if: inputs.destination-project == 'stackable'
125+
uses: stackabletech/actions/publish-image-index-manifest@8a8085be0a8cec3d24ad3970e602d65be487da6a # v0.14.1
126+
with:
127+
image-registry-uri: oci.stackable.tech
128+
image-registry-username: robot$stackable+github-action-build
129+
image-registry-password: ${{ secrets.HARBOR_ROBOT_STACKABLE_GITHUB_ACTION_BUILD_SECRET }}
130+
image-repository: ${{ format('stackable/{0}', env.IMAGE_REPOSITORY) }}
131+
image-index-manifest-tag: ${{ inputs.image-index-manifest-tag }}
132+
99133
# NOTE (@Techassi) It is currently not possible to use our own action here, because the inputs
100134
# assume it is used to report on image build results, not mirror results. The action needs to be
101135
# adjusted to support other use-cases.

0 commit comments

Comments
 (0)