name: Docker nightly build on: schedule: - cron: '0 1 * * *' jobs: build_image: name: Build nodejs-rust:lts runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup QEMU uses: docker/setup-qemu-action@v1 - name: Setup Docker Buildx uses: docker/setup-buildx-action@v1 - name: Login to GitHub Container Registry uses: docker/login-action@v1 with: registry: ghcr.io username: ${{ secrets.GH_CONTAINER_UNAME }} password: ${{ secrets.GH_TOKEN }} - name: Build and push alpine uses: docker/build-push-action@v2 with: file: alpine.Dockerfile platforms: linux/amd64 push: true tags: ghcr.io/${{ github.repository }}/nodejs-rust:lts-alpine - name: Build and push debian uses: docker/build-push-action@v2 with: file: debian.Dockerfile platforms: linux/amd64 push: true tags: ghcr.io/${{ github.repository }}/nodejs-rust:lts-debian build_image_arm: name: Build Node.js arm images strategy: fail-fast: false matrix: version: ['12', '14', '16'] runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Setup QEMU uses: docker/setup-qemu-action@v1 - name: Setup Docker Buildx uses: docker/setup-buildx-action@v1 - name: Login to GitHub Container Registry uses: docker/login-action@v1 with: registry: ghcr.io username: ${{ secrets.GH_CONTAINER_UNAME }} password: ${{ secrets.GH_TOKEN }} - name: Build and push armhf uses: docker/build-push-action@v2 with: file: armhf.Dockerfile push: true tags: ghcr.io/${{ github.repository }}/nodejs:armhf-${{ matrix.version }} build-args: | NODE_VERSION=${{ matrix.version }} - name: Build and push aarch64 uses: docker/build-push-action@v2 with: file: aarch64.Dockerfile push: true tags: ghcr.io/${{ github.repository }}/nodejs:aarch64-${{ matrix.version }} build-args: | NODE_VERSION=${{ matrix.version }}