name: Build Container run-name: ${{ gitea.actor }} is pushing on: [push] env: REGISTRY: gitea.haschek.at IMAGE_NAME: ${{ gitea.repository }} jobs: docker: runs-on: ubuntu-latest steps: - run: echo "🎉 Building ${{ gitea.repository }} because of a ${{ gitea.event_name }} event." - name: Checkout uses: actions/checkout@v2 - name: Normalize image name to lowercase run: | echo "IMAGE_NAME_LC=${IMAGE_NAME,,}" >> "$GITHUB_ENV" env: IMAGE_NAME: ${{ env.IMAGE_NAME }} - name: Prepare id: prep run: | DOCKER_IMAGE="${{ env.REGISTRY }}/${{ env.IMAGE_NAME_LC }}" VERSION=latest SHORTREF=${GITHUB_SHA::8} TAGS="${DOCKER_IMAGE}:latest" # Set output parameters. echo ::set-output name=tags::${TAGS} echo ::set-output name=docker_image::${DOCKER_IMAGE} - name: Set up QEMU uses: docker/setup-qemu-action@master with: platforms: all - name: Set up Docker Buildx id: buildx uses: docker/setup-buildx-action@v3 - name: Log in to the Container registry uses: docker/login-action@v2 with: registry: ${{ env.REGISTRY }} username: ${{ gitea.actor }} password: ${{ secrets.BUILD_TOKEN}} - name: Build uses: docker/build-push-action@v3 env: ACTIONS_RUNTIME_TOKEN: '' with: builder: ${{ steps.buildx.outputs.name }} context: . file: Dockerfile platforms: linux/amd64,linux/arm64 push: true tags: ${{ steps.prep.outputs.tags }} cache-from: | type=registry,ref=registry.haschek.at/${{ env.IMAGE_NAME_LC }}:buildcache cache-to: | type=registry,ref=registry.haschek.at/${{ env.IMAGE_NAME_LC }}:buildcache,mode=max