Skip to content

ci(dependabot): declare only ecosystems consumers have; make extras opt-in#166

Merged
CybotTM merged 2 commits into
mainfrom
ci/dependabot-trim-ecosystems
Jun 3, 2026
Merged

ci(dependabot): declare only ecosystems consumers have; make extras opt-in#166
CybotTM merged 2 commits into
mainfrom
ci/dependabot-trim-ecosystems

Conversation

@CybotTM
Copy link
Copy Markdown
Member

@CybotTM CybotTM commented Jun 3, 2026

Several consumers fail their weekly Dependabot runs with dependency_file_not_found because the templates declare ecosystems the repo has no manifest for. (Surfaced when the cooldown sync PRs merged and triggered immediate re-runs — the cooldown change itself is valid and unrelated.)

Manifest reality across the fleet

repo template gomod docker npm devcontainers
ofelia go-app
ldap-manager go-app
ldap-selfservice-password-changer go-app
raybeam go-app
simple-ldap-go go-lib
go-cron go-lib

Failing runs observed: npm in ofelia/ldap-manager/raybeam (no package.json), devcontainers in raybeam (no devcontainer), docker in simple-ldap-go (no Dockerfile).

Change

  • go-app declares gomod + github-actions + docker (all go-app repos ship a Dockerfile). Drops npm + devcontainers.
  • go-lib declares gomod + github-actions. Drops docker (libraries have no Dockerfile).
  • cooldown: default-days: 7 preserved on every remaining ecosystem.
  • Each template header documents the opt-in block + intentional-drift procedure for repos that genuinely have the extra manifest.

Follow-up after this merges (consumer side)

Opt-ins (preserve currently-working coverage — add the ecosystem to the repo dependabot.yml + list .github/dependabot.yml under intentional-drift:):

  • ldap-selfservice-password-changer → npm
  • ldap-manager → devcontainers
  • ofelia → devcontainers

Plain re-sync drops the dead ecosystems (no opt-in needed):

  • raybeam (npm + devcontainers), simple-ldap-go (docker), go-cron (docker already absent)

Test plan

  • Reviewer confirms the per-template ecosystem set matches the matrix above.
  • After merge: open the consumer opt-in PRs, then re-sync the rest; verify each repo's event=dynamic Dependabot runs go green (no dependency_file_not_found).

…pt-in

go-app drops npm + devcontainers (kept: gomod, github-actions, docker).
go-lib drops docker (kept: gomod, github-actions).

Consumers that lack a manifest for a declared ecosystem fail their
Dependabot run with dependency_file_not_found. Repos that genuinely have
package.json / Dockerfile / devcontainer opt back in via their own
dependabot.yml + an intentional-drift entry (documented in each template
header).

Signed-off-by: Sebastian Mendel <github@sebastianmendel.de>
Copilot AI review requested due to automatic review settings June 3, 2026 09:35
Copy link
Copy Markdown

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request refactors the Dependabot configurations for both the go-app and go-lib templates. It removes optional package ecosystems (npm and devcontainers for go-app, and docker for go-lib) from the active updates list and documents them as commented-out opt-in examples instead. This prevents Dependabot runs from failing when the corresponding manifest files are not present. The reviewer suggests using block style instead of flow style (inline JSON-like syntax) for these commented-out configuration examples to improve readability and maintain consistency with the rest of the YAML files.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread templates/go-app/.github/dependabot.yml Outdated
Comment thread templates/go-lib/.github/dependabot.yml Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the Dependabot templates for go-app and go-lib to only declare package ecosystems that each consumer repo is guaranteed to have, preventing dependency_file_not_found failures in scheduled Dependabot runs across the fleet.

Changes:

  • go-lib template now declares only gomod and github-actions updates by default (removes docker).
  • go-app template now declares only gomod, github-actions, and docker updates by default (removes npm and devcontainers).
  • Adds clear header documentation explaining why “extra” ecosystems are opt-in and how to use intentional-drift to manage repo-specific additions.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
templates/go-lib/.github/dependabot.yml Removes default docker updates and documents opt-in procedure to avoid missing-manifest failures.
templates/go-app/.github/dependabot.yml Removes default npm and devcontainers updates, keeping only guaranteed ecosystems and documenting opt-in procedure.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Multi-line block style is easier for consumers to uncomment and edit than
inline flow style. Comments only; no change to active config.

Signed-off-by: Sebastian Mendel <github@sebastianmendel.de>
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Jun 3, 2026

@CybotTM CybotTM merged commit 7559dbe into main Jun 3, 2026
11 checks passed
@CybotTM CybotTM deleted the ci/dependabot-trim-ecosystems branch June 3, 2026 09:55
CybotTM added a commit to netresearch/ldap-selfservice-password-changer that referenced this pull request Jun 3, 2026
Follow-up to netresearch/.github#166, which trimmed the `go-app`
template's dependabot.yml to the universally-present ecosystems (gomod,
github-actions, docker). This repo has a package.json (bun/TypeScript
frontend), so it keeps the `npm` ecosystem by self-managing
`.github/dependabot.yml` and listing it under `intentional-drift:` in
`.github/template.yaml`.

Also drops the ecosystem this repo has no manifest for (was failing
Dependabot with `dependency_file_not_found`). Core blocks
(gomod/github-actions/docker) stay in step with the template manually.

## Test plan
- [ ] After merge: `event=dynamic` Dependabot runs go green (no
`dependency_file_not_found`).
CybotTM added a commit to netresearch/ldap-manager that referenced this pull request Jun 3, 2026
)

Follow-up to netresearch/.github#166, which trimmed the `go-app`
template's dependabot.yml to the universally-present ecosystems (gomod,
github-actions, docker). This repo has a .devcontainer, so it keeps the
`devcontainers` ecosystem by self-managing `.github/dependabot.yml` and
listing it under `intentional-drift:` in `.github/template.yaml`.

Also drops the ecosystem this repo has no manifest for (was failing
Dependabot with `dependency_file_not_found`). Core blocks
(gomod/github-actions/docker) stay in step with the template manually.

## Test plan
- [ ] After merge: `event=dynamic` Dependabot runs go green (no
`dependency_file_not_found`).
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