Publish canary container images via ghcr.io
Ref https://github.com/roboll/helmfile/issues/1824
This commit is contained in:
		
							parent
							
								
									11ab0cb8c8
								
							
						
					
					
						commit
						1aa87538a7
					
				|  | @ -0,0 +1,30 @@ | ||||||
|  | name: "Setup Docker" | ||||||
|  | 
 | ||||||
|  | outputs: | ||||||
|  |   sha_short: | ||||||
|  |     description: "The short SHA used for image builds" | ||||||
|  |     value: ${{ steps.vars.outputs.sha_short }} | ||||||
|  | 
 | ||||||
|  | runs: | ||||||
|  |   using: "composite" | ||||||
|  |   steps: | ||||||
|  |     - name: Get Short SHA | ||||||
|  |       id: vars | ||||||
|  |       run: | | ||||||
|  |         echo ::set-output name=sha_short::${GITHUB_SHA::7} | ||||||
|  |       shell: bash | ||||||
|  | 
 | ||||||
|  |     - name: Set up QEMU | ||||||
|  |       uses: docker/setup-qemu-action@v1 | ||||||
|  | 
 | ||||||
|  |     - name: Set up Docker Buildx | ||||||
|  |       uses: docker/setup-buildx-action@v1 | ||||||
|  |       with: | ||||||
|  |         version: latest | ||||||
|  | 
 | ||||||
|  |     # - name: Login to DockerHub | ||||||
|  |     #   if: ${{ github.ref == 'main' && github.event.pull_request.merged == true }} | ||||||
|  |     #   uses: docker/login-action@v1 | ||||||
|  |     #   with: | ||||||
|  |     #     username: ${{ inputs.username }} | ||||||
|  |     #     password: ${{ inputs.password }} | ||||||
|  | @ -0,0 +1,60 @@ | ||||||
|  | name: Publish Canary Images | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |       - main | ||||||
|  |     paths-ignore: | ||||||
|  |       - .github/workflows/ci.yml | ||||||
|  |       - .github/workflows/lock.yml | ||||||
|  |       - "docs/**" | ||||||
|  |       - "hack/**" | ||||||
|  |       - "**.md" | ||||||
|  |       - ".gitignore" | ||||||
|  |       - "Makefile" | ||||||
|  | 
 | ||||||
|  | jobs: | ||||||
|  |   build: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     permissions: | ||||||
|  |       contents: read | ||||||
|  |       packages: write | ||||||
|  |     name: Build and Publish Canary Images | ||||||
|  |     env: | ||||||
|  |       DOCKERHUB_USERNAME: ${{ secrets.DOCKER_USER }} | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout | ||||||
|  |         uses: actions/checkout@v3 | ||||||
|  | 
 | ||||||
|  |       - name: Setup Docker Environment | ||||||
|  |         id: vars | ||||||
|  |         uses: ./.github/actions/setup-docker-environment | ||||||
|  | 
 | ||||||
|  |       - name: Login to GitHub Container Registry | ||||||
|  |         uses: docker/login-action@v1 | ||||||
|  |         with: | ||||||
|  |           registry: ghcr.io | ||||||
|  |           username: ${{ github.actor }} | ||||||
|  |           password: ${{ secrets.GITHUB_TOKEN }} | ||||||
|  | 
 | ||||||
|  |       - name: Build and Push | ||||||
|  |         uses: docker/build-push-action@v2 | ||||||
|  |         with: | ||||||
|  |           file: Dockerfile | ||||||
|  |           platforms: linux/amd64,linux/arm64 | ||||||
|  |           push: true | ||||||
|  |           tags: | | ||||||
|  |             ghcr.io/${{ github.repository }}:canary | ||||||
|  |           cache-from: type=gha | ||||||
|  |           cache-to: type=gha,mode=max | ||||||
|  | 
 | ||||||
|  |       - name: Build and Push (debian stable-slim) | ||||||
|  |         uses: docker/build-push-action@v2 | ||||||
|  |         with: | ||||||
|  |           file: Dockerfile.debian | ||||||
|  |           platforms: linux/amd64,linux/arm64 | ||||||
|  |           push: true | ||||||
|  |           tags: | | ||||||
|  |             ghcr.io/${{ github.repository }}-debian-stable-slim:canary | ||||||
|  |           cache-from: type=gha | ||||||
|  |           cache-to: type=gha,mode=max | ||||||
|  | @ -9,6 +9,8 @@ RUN make static-linux | ||||||
| 
 | 
 | ||||||
| FROM alpine:3.13 | FROM alpine:3.13 | ||||||
| 
 | 
 | ||||||
|  | LABEL org.opencontainers.image.source https://github.com/helmfile/helmfile | ||||||
|  | 
 | ||||||
| RUN apk add --no-cache ca-certificates git bash curl jq | RUN apk add --no-cache ca-certificates git bash curl jq | ||||||
| 
 | 
 | ||||||
| ARG HELM_VERSION="v3.7.2" | ARG HELM_VERSION="v3.7.2" | ||||||
|  |  | ||||||
|  | @ -15,6 +15,8 @@ RUN make static-linux | ||||||
| 
 | 
 | ||||||
| FROM debian:stable-slim | FROM debian:stable-slim | ||||||
| 
 | 
 | ||||||
|  | LABEL org.opencontainers.image.source https://github.com/helmfile/helmfile | ||||||
|  | 
 | ||||||
| RUN apt-get update \  | RUN apt-get update \  | ||||||
|  && apt-get install -y --no-install-recommends \ |  && apt-get install -y --no-install-recommends \ | ||||||
|     ca-certificates  \ |     ca-certificates  \ | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue