Skip to content

chore(ci): give Dependabot PRs conventional commit titles - #425

Merged
dmihalcik-virtru merged 1 commit into
mainfrom
chore/dependabot-commit-prefixes
Oct 21, 2026
Merged

dmihalcik-virtru merged 1 commit into
mainfrom
chore/dependabot-commit-prefixes

Conversation

@dmihalcik-virtru

@dmihalcik-virtru dmihalcik-virtru commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Summary

Adds .github/dependabot.yml so Dependabot PR titles pass the conventional commit check.

  • Runtime dependency bumps → fix(main): bump ... (release-please cuts a patch release)
  • Development/test-scoped bumps → chore(ci): bump ...
  • open-pull-requests-limit: 0 keeps version updates off. Dependabot keeps opening security-update PRs only, as it does today, and those now use the prefixes too.

Rationale

All three open Dependabot PRs (#408, #407, #387) fail Validate PR title:

Unknown scope "deps" found in pull request title "chore(deps): bump org.bouncycastle:bcprov-jdk18on from 1.84 to 1.85". Scope must match one of: ci, cmdline, docs, main, sdk, tests, examples, release/v0.\d+.

Dependabot adds the : after a prefix ending in ) (docs).

Caveat

Dependabot decides what counts as a development dependency. It labeled bc-fips as deps-dev (it's test scope in sdk/pom.xml) even though sdk-fips-bc depends on it at compile scope. So bc-fips bumps will be titled chore(ci), and release-please won't cut a release for them. Retitle those PRs to fix(main) before merging.

Test plan

Companion PR: skip the Sonar scan when SONAR_TOKEN is unavailable.

Summary by CodeRabbit

  • Chores
    • Added automated weekly dependency update checks across Maven-based project areas.
    • Security updates remain enabled, while routine non-security version updates are not opened automatically.
    • Automated dependency changes now follow consistent commit message conventions.

Dependabot's default chore(deps) and chore(deps-dev) titles fail the PR
title check because deps and deps-dev are not allowed scopes. Configure
commit-message prefixes so runtime dependency bumps use fix(main), which
release-please turns into a patch release, and development dependency
bumps use chore(ci).

open-pull-requests-limit: 0 keeps version updates off, so Dependabot
still only opens security update PRs; those pick up the prefixes too.

Signed-off-by: Dave Mihalcik <dmihalcik@virtru.com>
@coderabbitai

coderabbitai Bot commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: c8160756-629e-4ed3-b212-f40cafcaf9d4
📥 Commits

Reviewing files that changed from the base of the PR and between 525e5b0 and 9ad53eb.

📒 Files selected for processing: 1
  • .github/dependabot.yml

Included review availability: This review used your included allowance. Your plan provides up to 1 included review per hour; 0 remain after this review.

📝 Walkthrough

The pull request adds weekly Dependabot checks for Maven projects in six directories. It sets the open pull request limit to zero and configures separate commit prefixes for runtime and development dependency updates.

Changes: Maven update configuration

Layer / File(s) Summary
Maven update policy
.github/dependabot.yml
Dependabot checks six Maven directories weekly, limits open update pull requests to zero, and uses separate commit prefixes for runtime and development dependencies.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~8 minutes

Change: Other

Suggested reviewers: biscoe916

Merge Risk: ⚪ Minimal · up to 9ad53

No merge-blocking issue is identified; Dependabot PR titles still need the planned post-merge verification.

Pre-merge checks: Passed 5
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly describes the main change: configuring Dependabot to use conventional commit titles with the chore(ci) prefix.
Docstring Coverage Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 0 files. (1 skipped: 1 unsupported.)

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

A rabbit checks the Maven trail,
Weekly notes arrive without fail.
Runtime hops with fix(main) in tow,
Development gets chore(ci) to show.
Security updates find their way.

Comment @coderabbitai help to get the list of available commands.

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown
Contributor

dmihalcik-virtru added a commit that referenced this pull request Oct 21, 2026
## Summary

- **checks.yaml / mavenverify:** pass `-Dsonar.skip=true` when
`SONAR_TOKEN` is empty. Pushes to `main` and same-repo PRs still run the
Sonar analysis.
- **codeql.yaml:** pass `github_token` to `buf-setup-action`, as
`checks.yaml` already does.

## Rationale

Dependabot and fork PRs can't read Actions secrets. On #408, #407 and
#387, `mavenverify` gets through the build and all tests, then fails in
the Sonar goal:

> [ERROR] Not authorized. Please check the 'sonar.token' property or the
'SONAR_TOKEN' environment variable ...

`sonar-maven-plugin` checks `sonar.skip` before it starts the scanner
([source](https://github.com/SonarSource/sonar-scanner-maven/blob/master/sonar-maven-plugin/src/main/java/org/sonarsource/scanner/maven/SonarQubeMojo.java)),
so the job now passes or fails on the build and tests alone. I put the
change in the workflow instead of `pom.xml` because it depends on the CI
environment.

CodeQL on #407 failed with `API rate limit exceeded` inside the buf
setup step. Without a token, that step calls the GitHub API
unauthenticated and shares the runner IP's rate limit.

## Test plan

- [x] YAML parses; checked the skip logic for empty and non-empty
`SONAR_TOKEN`
- [ ] This PR's own `mavenverify` still runs Sonar (token available)
- [ ] After merge, the recreated Dependabot PRs show `sonar.skip = true:
Skipping analysis` and `mavenverify` passes

Companion PR: #425 (Dependabot PR titles).

Signed-off-by: Dave Mihalcik <dmihalcik@virtru.com>
@dmihalcik-virtru
dmihalcik-virtru merged commit 794af70 into main Oct 21, 2026
24 checks passed
@dmihalcik-virtru
dmihalcik-virtru deleted the chore/dependabot-commit-prefixes branch October 21, 2026 00:38
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.

2 participants