name: Main on: push: branches: [main] pull_request: branches: [main] jobs: build-and-test: runs-on: ubuntu-latest strategy: matrix: node-version: [20.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v3 with: node-version: ${{ matrix.node-version }} cache: npm - run: npm ci - run: npm run lint - run: npm run typecheck auto-merge: if: github.event_name == 'pull_request' && github.actor == 'dependabot[bot]' runs-on: ubuntu-latest needs: build-and-test permissions: contents: write pull-requests: write steps: - name: Dependabot metadata id: metadata uses: dependabot/fetch-metadata@v2 with: github-token: '${{ secrets.GITHUB_TOKEN }}' - name: Auto-merge if: steps.metadata.outputs.update-type != 'version-update:semver-major' run: gh pr merge --auto --squash "$PR_URL" env: PR_URL: ${{github.event.pull_request.html_url}} GH_TOKEN: ${{secrets.GITHUB_TOKEN}}