1818 secrets :
1919 token : ${{ secrets.GITHUB_TOKEN }}
2020
21- build :
21+ build_base :
2222 runs-on : ubuntu-latest
2323 needs : create_release
2424 steps :
4747 ${{ env.IMAGE_BASE }}:latest-base
4848 ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-base
4949
50+ build_kaniko-sidecar :
51+ runs-on : ubuntu-latest
52+ needs : create_release
53+ steps :
54+ - name : Check out the repo
55+ uses : actions/checkout@v2
56+
57+ - name : Login to GitHub Container Registry
58+ uses : docker/login-action@v1
59+ with :
60+ registry : ghcr.io
61+ username : ${{ github.repository_owner }}
62+ password : ${{ secrets.GITHUB_TOKEN }}
63+
64+ - name : Set up QEMU
65+ uses : docker/setup-qemu-action@v1
66+ - name : Set up Docker Buildx
67+ uses : docker/setup-buildx-action@v1
68+
5069 - name : Build github-actions-runner:kaniko-sidecar
5170 uses : docker/build-push-action@v2
5271 with :
@@ -56,29 +75,41 @@ jobs:
5675 ${{ env.IMAGE_BASE }}:latest-kaniko-sidecar
5776 ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-kaniko-sidecar
5877
78+ build_flavors :
79+ runs-on : ubuntu-latest
80+ needs : [create_release, build_base]
81+ strategy :
82+ matrix :
83+ flavor : [ansible-k8s, fullstacked]
84+ steps :
85+ - name : Check out the repo
86+ uses : actions/checkout@v2
87+
88+ - name : Login to GitHub Container Registry
89+ uses : docker/login-action@v1
90+ with :
91+ registry : ghcr.io
92+ username : ${{ github.repository_owner }}
93+ password : ${{ secrets.GITHUB_TOKEN }}
94+
95+ - name : Set up QEMU
96+ uses : docker/setup-qemu-action@v1
97+ - name : Set up Docker Buildx
98+ uses : docker/setup-buildx-action@v1
99+
59100 - name : link child image to current version
60101 run : |
61102 sed -i --expression "s@FROM ${{ env.IMAGE_BASE }}.*@FROM ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-base@g" \
62- images/ansible-k8s/Dockerfile \
63- images/fullstacked/Dockerfile
64-
65- - name : Build github-actions-runner:ansible-k8s
66- uses : docker/build-push-action@v2
67- with :
68- context : ./images/ansible-k8s
69- push : true
70- tags : |
71- ${{ env.IMAGE_BASE }}:latest-ansible-k8s
72- ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-ansible-k8s
103+ images/${{ matrix.flavor }}/Dockerfile
73104
74- - name : Build github-actions-runner:fullstacked
105+ - name : Build github-actions-runner:${{ matrix.flavor }}
75106 uses : docker/build-push-action@v2
76107 with :
77- context : ./images/fullstacked
108+ context : ./images/${{ matrix.flavor }}
78109 push : true
79110 tags : |
80- ${{ env.IMAGE_BASE }}:latest-fullstacked
81- ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-fullstacked
111+ ${{ env.IMAGE_BASE }}:latest-${{ matrix.flavor }}
112+ ${{ env.IMAGE_BASE }}:${{needs.create_release.outputs.version}}-${{ matrix.flavor }}
82113
83114 publish_release :
84115 runs-on : ubuntu-latest
@@ -94,3 +125,11 @@ jobs:
94125 env :
95126 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
96127 ACI_RELEASE_ID : ${{ needs.create_release.outputs.releaseid }}
128+
129+ - name : update helm charts appVersion
130+ uses : peter-evans/repository-dispatch@v2
131+ with :
132+ token : ${{ secrets.HELM_REPO_TOKEN }}
133+ repository : ${{ env.GITHUB_REPOSITORY_OWNER }}/helm-charts
134+ event-type : update_chart_version
135+ client-payload : ' {"chart": "github-actions-runner", "version": "${{ needs.create_release.outputs.version }}"}'
0 commit comments