Skip to content

ci(dependabot): removed the paths filter from the auto-merge caller - #9

Merged
karlspace merged 1 commit into
mainfrom
ci/dependabot-all-ecosystems
Oct 10, 2026
Merged

karlspace merged 1 commit into
mainfrom
ci/dependabot-all-ecosystems

Conversation

@karlspace

Copy link
Copy Markdown
Contributor

Why

The Dependabot auto-merge caller (.github/workflows/docker-maintenance.yml) only started for src/rabbitmq/Dockerfile and src/rabbitmq-init/Dockerfile. A pip update of rabbitmq-init (requirements*.txt, e.g. #6) never reached the module: no decision, no annotation, the PR just stayed open. The module should react to every Dependabot ecosystem configured here and leave a visible decision on each PR.

What

  • Removed the paths: filter from the caller's pull_request trigger (types opened, synchronize, reopened, ready_for_review kept).
  • Rewrote the header comment to describe the new trigger scope per ecosystem. The old comment also claimed the merge triggers docker-release.yml, which a GITHUB_TOKEN merge does not.

Nothing else changed: required-workflows: .github/workflows/docker-release.yml, merge-method: squash, auto-approve: true, secrets: inherit and the permissions all stay as they were. The repository is public, so the module does not need the checks/statuses/actions: read scopes. docker-release.yml needs no wider paths:: its pull_request trigger already covers src/**.

Ecosystem (dependabot.yml) Prefix Auto-merge now Why
docker /src/rabbitmq, /src/rabbitmq-init chore(docker) yes (unchanged) The docker-release.yml PR run builds both images (push: false) after compose and shell validation and the rabbitmq-init tests
pip /src/rabbitmq-init chore(deps) yes (new) docker-release.yml runs on src/**. test-init installs requirements-test.txt (which includes -r requirements.txt) and runs pytest. docker-build-init-pr builds the image, whose Dockerfile COPYs requirements.txt and installs from it
docker-compose / chore(deps) n/a Every image: is ${VAR:-...}:${VAR:-latest}, our own images and traefik-certs-dumper on floating latest. Dependabot cannot update these and has opened no compose PR since June
github-actions / chore(ci) no (manual) The module's own guard leaves GitHub Actions updates and any other .github/ change open

Only patch updates are merged (the module default for merge-update-types). Minor and major updates, such as #6 (pytest 9.0.3 → 9.1.1, semver-minor), are left open with a notice. None of the prefixes cuts a release: chore produces no semantic-release bump, and the GITHUB_TOKEN merge starts no push run.

Compatibility

Test

  • Parsed the YAML locally: the trigger is pull_request with the four types and no paths, and the permissions and with: inputs are unchanged.
  • This PR changes only .github/, so docker-release.yml does not run on it. Its CI shows the caller starting without a paths filter, with the maintenance job skipped because the PR is not from Dependabot.
  • After the merge, the real proof is the next Dependabot pip PR: the caller runs, waits for docker-release.yml, then merges a patch update or leaves a minor or major update open with a notice.

The caller only started for the two src Dockerfiles, so pip updates of
rabbitmq-init (requirements*.txt) never reached the auto-merge module:
no decision, no annotation, the PR just stayed open. Without the
filter every Dependabot PR is decided and annotated by the module.

Per ecosystem:
* docker (src/rabbitmq, src/rabbitmq-init) - unchanged, the PR run of
  docker-release.yml builds both images
* pip (src/rabbitmq-init) - can now auto-merge: docker-release.yml
  already runs on src/**, installs requirements-test.txt (which pulls
  in requirements.txt), runs pytest and builds the rabbitmq-init image
* docker-compose - the compose files reference images only through
  ${VAR:-...}:${VAR:-latest}, which Dependabot cannot update; it has
  opened no PR since June
* github-actions - still left open by the module's own .github/ guard

Not changed: required-workflows (docker-release.yml), the write
permissions (the repository is public, so the read scopes are not
needed), merge method, auto-approve and the module default of merging
patch updates only. docker-release.yml needs no wider paths: src/**
already covers every manifest Dependabot updates there.
@karlspace
karlspace merged commit 4b5c8a5 into main Oct 10, 2026
5 checks passed
@karlspace
karlspace deleted the ci/dependabot-all-ecosystems branch October 10, 2026 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant