From 09239f6e608b8a68b95baf96386b3b36b8ced8da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien?= Date: Mon, 25 Dec 2023 23:36:12 +0000 Subject: [PATCH] Create build GitHub Actions workflow --- .github/workflows/build.yaml | 47 ++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 .github/workflows/build.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..54ecc83 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,47 @@ +name: Build Docker image + +on: + push: + branches: main + workflow_dispatch: + +env: + CONTAINER_REGISTRY: ghcr.io + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + + - name: Login to GitHub Container Registry + uses: docker/login-action@v2 + with: + registry: ${{ env.CONTAINER_REGISTRY }} + username: ${{ github.repository_owner }} + password: ${{ github.token }} + + - name: Generate image tag + id: prepare + run: | + branch=${GITHUB_REF##*/} + sha=${GITHUB_SHA::8} + ts=$(date +%s) + echo "TAG=${branch}-${sha}-${ts}" >> $GITHUB_OUTPUT + + - name: Build and publish container image with tag + uses: docker/build-push-action@v4 + with: + context: . + push: true + tags: | + ${{ github.repository }}:${{ steps.prepare.outputs.TAG }} + cache-from: type=gha + cache-to: type=gha,mode=max