name: "Build datarhei/core:dev bundle" on: workflow_dispatch: workflow_call: push: branches-ignore: - "**" jobs: docker: runs-on: [self-hosted] steps: - name: Checkout uses: actions/checkout@v2 - uses: cardinalby/export-env-action@v1 with: envFile: ".github_build/Build.alpine.env" export: "true" expandWithJobEnv: "true" expand: "true" - uses: cardinalby/export-env-action@v1 with: envFile: ".github_build/Build.bundle.dev.env" export: "true" expandWithJobEnv: "true" expand: "true" - 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.bundle build-args: | CORE_IMAGE=datarhei/base:core-dev-${{ env.OS_NAME }}${{ env.OS_VERSION }} FFMPEG_IMAGE=datarhei/base:ffmpeg${{ env.FFMPEG_VERSION }}-${{ env.OS_NAME }}${{ env.OS_VERSION }} platforms: linux/amd64,linux/arm64,linux/arm/v7 push: true tags: | datarhei/core:dev datarhei/core:dev-ffmpeg${{ env.FFMPEG_VERSION }}-${{ env.OS_NAME }}${{ env.OS_VERSION }} cache-from: type=local,src=/tmp/.buildx-cache cache-to: type=local,dest=/tmp/.buildx-cache-new