name: 'Build core' on: workflow_dispatch: schedule: - cron: '7 5 * * *' 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.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:${{ env.OS_NAME }}-core-${{ env.OS_VERSION }}-${{ env.CORE_VERSION }} FFMPEG_IMAGE=datarhei/base:${{ env.OS_NAME }}-ffmpeg-${{ env.OS_VERSION_FFMPEG }}-${{ env.FFMPEG_VERSION }} platforms: linux/amd64,linux/arm64,linux/arm/v7 push: true tags: | datarhei/core:${{ env.CORE_VERSION }} datarhei/core:latest cache-from: type=local,src=/tmp/.buildx-cache cache-to: type=local,dest=/tmp/.buildx-cache-new