From a2e457787d3aa3107354848682ec64093c37df8f Mon Sep 17 00:00:00 2001 From: Jan Stabenow Date: Mon, 11 Sep 2023 22:38:10 +0200 Subject: [PATCH] Create build_base_alpine_vod.yaml --- .github/workflows/build_base_alpine_vod.yaml | 83 ++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 .github/workflows/build_base_alpine_vod.yaml diff --git a/.github/workflows/build_base_alpine_vod.yaml b/.github/workflows/build_base_alpine_vod.yaml new file mode 100644 index 00000000..fddc58a8 --- /dev/null +++ b/.github/workflows/build_base_alpine_vod.yaml @@ -0,0 +1,83 @@ +name: 'Build base:alpine-core:vod' + +on: + workflow_dispatch: + workflow_call: + push: + branches: + - vod + +jobs: + docker: + runs-on: [self-hosted] + strategy: + matrix: + branch: + - vod + + steps: + - name: Checkout + uses: actions/checkout@v2 + with: + ref: ${{ matrix.branch }} + + - uses: actions-ecosystem/action-get-latest-tag@v1 + id: get-latest-tag + with: + semver_only: true + + - uses: cardinalby/export-env-action@v1 + with: + envFile: '.github_build/Build.alpine.env' + export: 'true' + expandWithJobEnv: 'true' + expand: 'true' + + - name: Docker meta + id: meta + uses: docker/metadata-action@v4 + with: + images: | + datarhei/base + tags: | + type=raw,value=${{ env.OS_NAME }}-core-vod,enable=${{ matrix.branch == 'vod' }} + + - 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@master + + - name: Cache Docker layers + uses: actions/cache@v2 + with: + path: /tmp/.buildx-cache + key: ${{ runner.os }}-buildx-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-buildx- + + - name: Login to DockerHub + if: github.event_name != 'pull_request' + uses: docker/login-action@v1 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Build Multi-Arch + uses: docker/build-push-action@v2 + with: + builder: ${{ steps.buildx.outputs.name }} + context: . + file: ./Dockerfile + build-args: | + BUILD_IMAGE=${{ env.OS_NAME }}:${{ env.OS_VERSION }} + GOLANG_IMAGE=${{ env.GOLANG_IMAGE }} + platforms: linux/amd64 + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }} + cache-from: type=local,src=/tmp/.buildx-cache + cache-to: type=local,dest=/tmp/.buildx-cache-new