From a477ed738e0e8e4140d50957feec13382fef89ac Mon Sep 17 00:00:00 2001 From: Tomasz Janiszewski Date: Mon, 23 Mar 2026 13:21:27 +0100 Subject: [PATCH 1/4] chore(ci): auto-merge dependabot PRs Signed-off-by: Tomasz Janiszewski --- .github/workflows/auto-merge.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/auto-merge.yml diff --git a/.github/workflows/auto-merge.yml b/.github/workflows/auto-merge.yml new file mode 100644 index 0000000..0cd768b --- /dev/null +++ b/.github/workflows/auto-merge.yml @@ -0,0 +1,17 @@ +name: Dependabot auto-merge +on: pull_request + +permissions: + contents: write + pull-requests: write + +jobs: + dependabot: + runs-on: ubuntu-latest + if: github.event.pull_request.user.login == 'dependabot[bot]' + steps: + - name: Enable auto-merge for Dependabot PRs + run: gh pr merge --auto --squash "$PR_URL" && gh pr review --approve "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GH_TOKEN: ${{secrets.GITHUB_TOKEN}} \ No newline at end of file From f1950b615583511e71000ef692645e966522e262 Mon Sep 17 00:00:00 2001 From: Tomasz Janiszewski Date: Mon, 23 Mar 2026 13:25:57 +0100 Subject: [PATCH 2/4] skip e2e tools Signed-off-by: Tomasz Janiszewski --- .github/dependabot.yml | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index b446484..0a3c929 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,6 +1,5 @@ version: 2 updates: - # Monitor root Go module - package-ecosystem: "gomod" directory: "/" schedule: @@ -9,13 +8,3 @@ updates: prefix: "chore" prefix-development: "chore" include: "scope" - - # Monitor e2e-tests tools Go module - - package-ecosystem: "gomod" - directory: "/e2e-tests/tools" - schedule: - interval: "daily" - commit-message: - prefix: "chore" - prefix-development: "chore" - include: "scope" From 23528207214e3c8505d108a661d16c7feb9e4486 Mon Sep 17 00:00:00 2001 From: Tomasz Janiszewski Date: Fri, 27 Mar 2026 17:43:13 +0100 Subject: [PATCH 3/4] chore(ci): use auto-merge label for selective PR merging Add label-based control for Dependabot auto-merge instead of excluding entire modules. Root module dependencies get auto-merge label, while e2e-tests/tools dependencies require manual review. Co-Authored-By: Claude Sonnet 4.5 --- .github/dependabot.yml | 16 ++++++++++++++++ .github/workflows/auto-merge.yml | 4 +++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 0a3c929..1c648b7 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -8,3 +8,19 @@ updates: prefix: "chore" prefix-development: "chore" include: "scope" + labels: + - "dependencies" + - "go" + - "auto-merge" + + - package-ecosystem: "gomod" + directory: "/e2e-tests/tools" + schedule: + interval: "daily" + commit-message: + prefix: "chore" + prefix-development: "chore" + include: "scope" + labels: + - "dependencies" + - "go" diff --git a/.github/workflows/auto-merge.yml b/.github/workflows/auto-merge.yml index 0cd768b..5617656 100644 --- a/.github/workflows/auto-merge.yml +++ b/.github/workflows/auto-merge.yml @@ -8,7 +8,9 @@ permissions: jobs: dependabot: runs-on: ubuntu-latest - if: github.event.pull_request.user.login == 'dependabot[bot]' + if: | + github.event.pull_request.user.login == 'dependabot[bot]' && + contains(github.event.pull_request.labels.*.name, 'auto-merge') steps: - name: Enable auto-merge for Dependabot PRs run: gh pr merge --auto --squash "$PR_URL" && gh pr review --approve "$PR_URL" From b3754df8bb586b78158299c4c409ac636647b788 Mon Sep 17 00:00:00 2001 From: Tomasz Janiszewski Date: Fri, 27 Mar 2026 17:54:19 +0100 Subject: [PATCH 4/4] Apply suggestion from @janisz --- .github/workflows/auto-merge.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/auto-merge.yml b/.github/workflows/auto-merge.yml index 5617656..0d7c383 100644 --- a/.github/workflows/auto-merge.yml +++ b/.github/workflows/auto-merge.yml @@ -16,4 +16,4 @@ jobs: run: gh pr merge --auto --squash "$PR_URL" && gh pr review --approve "$PR_URL" env: PR_URL: ${{github.event.pull_request.html_url}} - GH_TOKEN: ${{secrets.GITHUB_TOKEN}} \ No newline at end of file + GH_TOKEN: ${{secrets.GITHUB_TOKEN}}