From e7b5023134f2afcaefb29add3fd06fc7d67e2965 Mon Sep 17 00:00:00 2001 From: Mirko Milovanovic Date: Sun, 9 Feb 2025 15:57:50 +0100 Subject: [PATCH] feat: create reusable action for setting up Docker environment in workflows --- .../actions/setup-docker-environment/action.yml | 14 ++++++++++++++ .github/workflows/feature-pr-build.yml | 13 ++++--------- .github/workflows/main.yml | 14 ++++---------- 3 files changed, 22 insertions(+), 19 deletions(-) create mode 100644 .github/actions/setup-docker-environment/action.yml diff --git a/.github/actions/setup-docker-environment/action.yml b/.github/actions/setup-docker-environment/action.yml new file mode 100644 index 0000000..7cce6cf --- /dev/null +++ b/.github/actions/setup-docker-environment/action.yml @@ -0,0 +1,14 @@ +name: "Setup Docker Environment" +description: "Common steps for setting up Docker build environment (checkout, QEMU, and Buildx)" + +runs: + using: "composite" + steps: + - name: Checkout repository + uses: actions/checkout@v4.2.2 + + - name: Set up QEMU + uses: docker/setup-qemu-action@v3.4.0 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3.9.0 diff --git a/.github/workflows/feature-pr-build.yml b/.github/workflows/feature-pr-build.yml index c3ebea8..c1c002d 100644 --- a/.github/workflows/feature-pr-build.yml +++ b/.github/workflows/feature-pr-build.yml @@ -1,4 +1,4 @@ -name: Build Docker Image for Feature PRs +name: Build Docker Image for Pull Request on: pull_request: @@ -10,19 +10,14 @@ jobs: runs-on: ubuntu-latest steps: - - name: Checkout repository - uses: actions/checkout@v4.2.2 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3.4.0 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3.9.0 + - name: Setup Docker Environment + uses: ./.github/actions/setup-docker-environment - name: Build Docker image uses: docker/build-push-action@v6.13.0 with: context: . + push: false tags: ${{ github.repository_owner }}/${{ github.event.repository.name }}:${{ github.event.pull_request.number }} platforms: | linux/amd64 diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index adb7b1d..98a75b6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -12,22 +12,16 @@ jobs: build: runs-on: ubuntu-latest steps: - - name: Checkout repository - uses: actions/checkout@v4.2.2 - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3.4.0 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3.9.0 - + - name: Setup Docker Environment + uses: ./.github/actions/setup-docker-environment + - name: Log in to Docker registry uses: docker/login-action@v3.3.0 with: registry: ${{ env.REGISTRY_URL }} username: ${{ github.actor }} password: ${{ secrets.REGISTRY_TOKEN }} - + - name: Build and push Docker image uses: docker/build-push-action@v6.13.0 with: