diff options
author | Matt Strapp <matt@mattstrapp.net> | 2024-09-05 10:36:40 -0500 |
---|---|---|
committer | Matt Strapp <matt@mattstrapp.net> | 2024-09-05 10:36:40 -0500 |
commit | 0b98c7b9d53b8f8bd131c21af132c5b5a1845a89 (patch) | |
tree | 591debc507b940e98984408ce31e73d483664050 | |
parent | Bump node deps (diff) | |
download | locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar.gz locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar.bz2 locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar.lz locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar.xz locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.tar.zst locusts-0b98c7b9d53b8f8bd131c21af132c5b5a1845a89.zip |
Add dependabot for everything so far
Is it needed? No. But having it is nice.
Signed-off-by: Matt Strapp <matt@mattstrapp.net>
-rw-r--r-- | .github/dependabot.yml | 36 | ||||
-rw-r--r-- | .github/workflows/dependabot-auto.yaml | 43 |
2 files changed, 79 insertions, 0 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml index e70c764..317b202 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -5,6 +5,15 @@ version: 2 updates: + - package-ecosystem: "cargo" + directory: "/" + schedule: + interval: "daily" + groups: + rust-deps: + applies-to: version-updates + patterns: + - "*" - package-ecosystem: "github-actions" directory: "/" schedule: @@ -14,3 +23,30 @@ updates: applies-to: version-updates patterns: - "*" + - package-ecosystem: "npm" + directory: "/" + schedule: + interval: "daily" + groups: + nodejs-dependencies: + applies-to: version-updates + patterns: + - "*" + - package-ecosystem: "nuget" + directory: "/" + schedule: + interval: "daily" + groups: + dotnet-dependencies: + applies-to: version-updates + patterns: + - "*" + - package-ecosystem: "pip" + directory: "/" + schedule: + interval: "daily" + groups: + python-dependencies: + applies-to: version-updates + patterns: + - "*" diff --git a/.github/workflows/dependabot-auto.yaml b/.github/workflows/dependabot-auto.yaml new file mode 100644 index 0000000..911b094 --- /dev/null +++ b/.github/workflows/dependabot-auto.yaml @@ -0,0 +1,43 @@ +# Shamelessly stolen from https://nicolasiensen.github.io/2022-07-23-automating-dependency-updates-with-dependabot-github-auto-merge-and-github-actions/ + +name: Dependabot reviewer + +on: pull_request_target + +permissions: + pull-requests: write + contents: write + +jobs: + review-dependabot-pr: + runs-on: ubuntu-latest + if: ${{ github.event.pull_request.user.login == 'dependabot[bot]' }} + steps: + - name: Dependabot metadata + id: dependabot-metadata + uses: dependabot/fetch-metadata@v2.2.0 + - name: Enable auto-merge for Dependabot PRs + run: gh pr merge --auto --rebase "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + - name: Approve patch and minor updates + if: ${{steps.dependabot-metadata.outputs.update-type == 'version-update:semver-patch' || steps.dependabot-metadata.outputs.update-type == 'version-update:semver-minor'}} + run: gh pr review $PR_URL --approve -b "I'm **approving** this pull request because **it includes a patch or minor update**" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + - name: Approve major updates of development dependencies + if: ${{steps.dependabot-metadata.outputs.update-type == 'version-update:semver-major' && steps.dependabot-metadata.outputs.dependency-type == 'direct:development'}} + run: gh pr review $PR_URL --approve -b "I'm **approving** this pull request because **it includes a major update of a dependency used only in development**" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + - name: Comment on major updates of non-development dependencies + if: ${{steps.dependabot-metadata.outputs.update-type == 'version-update:semver-major' && steps.dependabot-metadata.outputs.dependency-type == 'direct:production'}} + run: | + gh pr comment $PR_URL --body "I'm **not approving** this PR because **it includes a major update of a dependency used in production**" + gh pr edit $PR_URL --add-label "requires-manual-qa" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
\ No newline at end of file |