diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4fd441f..e470b60 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,41 +1,42 @@ name: CI to Docker Hub -on: - push: - branches: [ master, github-actions ] - pull_request: - branches: [ master ] - - workflow_dispatch: +on: [push, pull_request, workflow_dispatch] jobs: multi: + env: + BUILD_PLATFORMS: linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64 runs-on: ubuntu-latest strategy: + fail-fast: false matrix: repository: [restic-auto] + steps: - name: Checkout uses: actions/checkout@v2 - + + - name: Load specific environment + run: if [ -f ${{ matrix.repository }}/.build-env ] ; then cat ${{ matrix.repository }}/.build-env >> $GITHUB_ENV ; fi + - name: Set up QEMU uses: docker/setup-qemu-action@v1 - + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v1 - + - name: Login to DockerHub uses: docker/login-action@v1 with: username: ${{ secrets.DOCKER_HUB_USERNAME }} password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }} - + - name: Build and push uses: docker/build-push-action@v2 with: context: ${{ matrix.repository }}/ file: ${{ matrix.repository }}/Dockerfile - platforms: linux/amd64,linux/arm/v6,linux/arm64 + platforms: ${{ env.BUILD_PLATFORMS }} push: true tags: | ${{ secrets.DOCKER_HUB_USERNAME }}/${{ matrix.repository }}:latest diff --git a/restic-auto/.build-env b/restic-auto/.build-env new file mode 100644 index 0000000..385f4d0 --- /dev/null +++ b/restic-auto/.build-env @@ -0,0 +1 @@ +BUILD_PLATFORMS=linux/amd64,linux/arm/v6,linux/arm64