Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ updates:
interval: weekly
open-pull-requests-limit: 10
labels:
- dependencies
- area:dependencies

- package-ecosystem: github-actions
directory: "/"
schedule:
interval: weekly
open-pull-requests-limit: 10
labels:
- dependencies
- area:dependencies
- github-actions
22 changes: 18 additions & 4 deletions .github/mergify.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,27 @@
pull_request_rules:
- name: Auto-merge Dependabot dependency updates on develop
conditions:
- author~=^(dependabot\[bot\]|app/dependabot)$
- base=develop
- label=area:dependencies
- check-success=CI / check
- check-success=CI / lint
- check-success=changelog-validate / validate
- -draft
Comment on lines +8 to +10
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

The PR description states that Dependabot PRs are exempt from the changelog validation requirement. However, this Mergify condition still requires changelog-validate / validate to succeed. If the changelog validation is skipped or does not run for Dependabot PRs, Mergify will block the auto-merge indefinitely. This condition should be removed.

      - check-success=CI / lint
      - -draft

- -conflict
actions:
merge:
method: squash

- name: Auto-merge Dependabot security updates on develop
conditions:
- author=dependabot[bot]
- author~=^(dependabot\[bot\]|app/dependabot)$
- base=develop
- label=dependencies
- label=area:dependencies
- label=meta:dependabot-security
- check-success=CI / check
- check-success=lint / lint
- check-success=reviewer / coderabbit-gate
- check-success=CI / lint
- check-success=changelog-validate / validate
- -draft
Comment on lines +23 to 25
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

Similarly to the first rule, requiring changelog-validate / validate to succeed will block the auto-merge of Dependabot security updates if they are exempt from changelog validation. This condition should be removed.

      - check-success=CI / lint
      - -draft

- -conflict
actions:
Expand Down
7 changes: 7 additions & 0 deletions .github/workflows/changelog-validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,17 @@ jobs:
- name: Require changelog update or skip label
id: changelog_gate
env:
PR_AUTHOR: ${{ github.event.pull_request.user.login }}
PR_LABELS: ${{ toJson(github.event.pull_request.labels.*.name) }}
BASE_SHA: ${{ github.event.pull_request.base.sha }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: |
if [ "${PR_AUTHOR}" = "dependabot[bot]" ] || [ "${PR_AUTHOR}" = "app/dependabot" ]; then
echo "Skipping changelog requirement for Dependabot pull requests."
echo "run_validation=false" >> "$GITHUB_OUTPUT"
exit 0
fi

if echo "${PR_LABELS}" | grep -q '"meta:needs-changelog"' && echo "${PR_LABELS}" | grep -q '"meta:no-changelog"'; then
echo "::error::PR cannot include both meta:needs-changelog and meta:no-changelog."
exit 1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dependabot-security-label.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:

jobs:
label-security-updates:
if: github.event.pull_request.user.login == 'dependabot[bot]'
if: github.event.pull_request.user.login == 'dependabot[bot]' || github.event.pull_request.user.login == 'app/dependabot'
runs-on: ubuntu-latest
permissions:
contents: read
Expand Down
Loading