name: PR Workflow on: pull_request: types: [opened, synchronize, ready_for_review, edited, closed] branches: - master jobs: build: name: Build & lint runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - uses: actions/setup-node@v2 with: node-version: '16' - name: Install dependencies uses: bahmutov/npm-install@v1 - name: Run lint run: yarn lint - name: Build run: yarn build release: name: Release snapshot runs-on: ubuntu-latest steps: - name: Set up Buildx uses: docker/setup-buildx-action@v1 - name: Set up QEMU uses: docker/setup-qemu-action@v1 - 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 uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push id: docker_build uses: docker/build-push-action@v2 with: push: true tags: codetheweb/muse:${{ github.event.pull_request.head.sha }} cache-from: type=local,src=/tmp/.buildx-cache cache-to: type=local,dest=/tmp/.buildx-cache,mode=max - name: Create comment uses: marocchino/sticky-pull-request-comment@v2 with: header: "pr-release" message: | #### :package: A new release has been made for this pull request To play around with this PR, pull `codetheweb/muse:${{ github.event.pull_request.head.sha }}`. > Latest commit: ${{ github.event.pull_request.head.sha }}