Skip to content

Commit 1124dc2

Browse files
authored
ci: push charts to GAR (#1044)
ci: add Google Artifact Registry
1 parent cd4a18d commit 1124dc2

File tree

2 files changed

+34
-0
lines changed

2 files changed

+34
-0
lines changed

.github/workflows/helm-releaser-testkube-charts.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,10 @@ on:
88
jobs:
99
release_charts:
1010
runs-on: ubuntu-latest
11+
env:
12+
GAR_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID_PROD }}
13+
GAR_LOCATION: ${{ secrets.GAR_LOCATION }}
14+
GAR_REPOSITORY: testkube
1115

1216
steps:
1317
- name: Checkout
@@ -51,13 +55,26 @@ jobs:
5155
username: ${{ secrets.DOCKERHUB_USERNAME }}
5256
password: ${{ secrets.DOCKERHUB_TOKEN }}
5357

58+
- name: Auth to Google Cloud
59+
uses: google-github-actions/auth@v2
60+
with:
61+
project_id: ${{ env.GAR_PROJECT_ID }}
62+
credentials_json: ${{ secrets.GKE_SA_KEY_PROD }} #Key to SA in Testkube Prod project
63+
64+
- name: Configure Docker for GAR
65+
run: gcloud auth configure-docker ${{ env.GAR_LOCATION }}-docker.pkg.dev -q
66+
5467
- name: Publish Helm Chart
5568
run: |
5669
REGISTRY=registry-1.docker.io
5770
echo ${{ secrets.DOCKERHUB_TOKEN }} | helm registry login ${REGISTRY} --username ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
5871
helm dependency build charts/testkube
5972
helm package charts/testkube
6073
helm push testkube-${{ steps.helm-version.outputs.result }}.tgz oci://${REGISTRY}/kubeshop
74+
75+
# push to Google Artifact Registry (OCI)
76+
REGISTRY_GAR=${{ env.GAR_LOCATION }}-docker.pkg.dev
77+
helm push testkube-${{ steps.helm-version.outputs.result }}.tgz oci://${REGISTRY_GAR}/${{ env.GAR_PROJECT_ID }}/${{ env.GAR_REPOSITORY }}
6178
6279
- uses: actions/checkout@v4
6380
with:

.github/workflows/helm-releaser-testkube-main-chart-only.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ jobs:
1919
release_charts:
2020
runs-on: ubuntu-latest
2121
if: github.ref == 'refs/heads/main'
22+
env:
23+
GAR_PROJECT_ID: ${{ secrets.GCP_PROJECT_ID_PROD }}
24+
GAR_LOCATION: ${{ secrets.GAR_LOCATION }}
25+
GAR_REPOSITORY: testkube
2226

2327
steps:
2428
- name: Checkout
@@ -60,13 +64,26 @@ jobs:
6064
username: ${{ secrets.DOCKERHUB_USERNAME }}
6165
password: ${{ secrets.DOCKERHUB_TOKEN }}
6266

67+
- name: Auth to Google Cloud
68+
uses: google-github-actions/auth@v2
69+
with:
70+
project_id: ${{ env.GAR_PROJECT_ID }}
71+
credentials_json: ${{ secrets.GKE_SA_KEY_PROD }} #Key to SA in Testkube Prod project
72+
73+
- name: Configure Docker for GAR
74+
run: gcloud auth configure-docker ${{ env.GAR_LOCATION }}-docker.pkg.dev -q
75+
6376
- name: Publish Helm Chart
6477
run: |
6578
REGISTRY=registry-1.docker.io
6679
echo ${{ secrets.DOCKERHUB_TOKEN }} | helm registry login ${REGISTRY} --username ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
6780
helm dependency build charts/testkube
6881
helm package charts/testkube
6982
helm push testkube-${{ steps.helm-version.outputs.result }}.tgz oci://${REGISTRY}/kubeshop
83+
84+
# push to Google Artifact Registry (OCI)
85+
REGISTRY_GAR=${{ env.GAR_LOCATION }}-docker.pkg.dev
86+
helm push testkube-${{ steps.helm-version.outputs.result }}.tgz oci://${REGISTRY_GAR}/${{ env.GAR_PROJECT_ID }}/${{ env.GAR_REPOSITORY }}
7087
7188
- uses: actions/checkout@v4
7289
with:

0 commit comments

Comments
 (0)