Skip to content

Add shared Renovate config presets#28

Merged
toshi0806 merged 2 commits into
mainfrom
add-renovate-shared-presets
Jun 3, 2026
Merged

Add shared Renovate config presets#28
toshi0806 merged 2 commits into
mainfrom
add-renovate-shared-presets

Conversation

@toshi0806
Copy link
Copy Markdown
Member

Summary

Introduce org-wide Renovate presets so each repository can extend a single shared config instead of duplicating its full configuration. Currently the same Renovate config is copy-pasted across multiple repos (latex-environment / latex-release-action / thesis-management-tools share an identical file; tdig / tenbin_* / elixir_dnstap share another).

Presets

  • default.json — common base: Asia/Tokyo, dependency dashboard, semantic commits, and auto-merge limited to patch / digest updates only.
  • latex.json — extends default + workarounds:all; rules for github-actions / dockerfile (pinDigests) and npm (rangeStrategy: bump). Weekly schedule (Sun 21:00).
  • elixir.json — extends default; mix manager only, lockFileMaintenance, grouped minor/patch/digest auto-merge. Weekly schedule (Mon before 6am).

Usage (follow-up PRs)

Each repository's renovate.json collapses to a single line:

// LaTeX ecosystem repos
{ "extends": ["github>smkwlab/.github:latex"] }

// Elixir repos
{ "extends": ["github>smkwlab/.github:elixir"] }

Rollout plan

  1. This PR — add the presets (must merge first; extends cannot resolve until they exist on the default branch).
  2. Migrate existing configs (latex-environment / latex-release-action / thesis-management-tools, and the Elixir repos) to extends.
  3. New Phase 1 adoption: texlive-ja-textlint / ai-academic-paper-reviewer / ai-reviewer.

Notes

  • Auto-merge scope is intentionally narrow (patch/digest) per agreed policy; minor/major remain manual review.
  • Renovate App stays on Selected repositories to avoid touching student repositories under the org.

Introduce org-wide Renovate presets so each repository can extend a
single shared config instead of duplicating full configuration.

- default.json: common base (timezone, dependency dashboard, semantic
  commits) and auto-merge limited to patch/digest updates
- latex.json: github-actions/docker (pinDigests) and npm rules for the
  LaTeX ecosystem repositories
- elixir.json: mix manager with lockFileMaintenance and grouped
  minor/patch auto-merge for Elixir projects

Repositories reference these via:
  { "extends": ["github>smkwlab/.github:latex"] }
  { "extends": ["github>smkwlab/.github:elixir"] }
Copilot AI review requested due to automatic review settings June 3, 2026 06:43
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 adds shared Renovate preset configurations to centralize dependency update policy across repositories in the smkwlab org, allowing individual repos to extends a single canonical config instead of duplicating full Renovate settings.

Changes:

  • Added a default.json preset providing a shared base (timezone, dependency dashboard, semantic commits, patch/digest-only auto-merge).
  • Added a latex.json preset for LaTeX ecosystem repositories (workarounds + manager-specific rules and weekly schedule).
  • Added an elixir.json preset for Elixir repositories (mix-only, lock file maintenance, grouping and scheduling).

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
default.json Introduces the shared Renovate baseline preset (timezone/dashboard/semantic commits + limited auto-merge rules).
latex.json Adds a LaTeX-oriented preset extending the shared base with manager-specific rules and a weekly schedule.
elixir.json Adds an Elixir-oriented preset extending the shared base with mix-only configuration, grouping, and scheduling.

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

Comment thread elixir.json Outdated
Comment on lines +12 to +16
"description": "Group Elixir (hex) minor/patch/digest updates and auto-merge",
"matchManagers": ["mix"],
"matchDatasources": ["hex"],
"matchUpdateTypes": ["minor", "patch", "digest", "lockFileMaintenance"],
"groupName": "elixir dependencies",
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

ご指摘ありがとうございます。これは意図的な例外です。

org全体の auto-merge ポリシーは patch/digest 限定(default.json)ですが、Elixir リポジトリ群は既存運用で minor / lockFileMaintenance も自動マージしており、hex パッケージが概ね semver 準拠で安定しているため、その挙動を維持する設計としています。

意図が伝わるよう、elixir.json のルール description に「org方針への意図的な例外であり、既存Elixir repoの挙動を維持する」旨を明記しました(commit b892108)。挙動自体は変更していません。

Document in elixir.json that grouped minor/lockFileMaintenance auto-merge
is a deliberate exception to the org-wide patch/digest-only policy,
preserving existing Elixir repository behavior. No behavior change.

Addresses Copilot review feedback on #28.
@toshi0806
Copy link
Copy Markdown
Member Author

レビュー対応 (Copilot指摘)

elixir.json の auto-merge が patch/digest だけでなく minor / lockFileMaintenance も含む、というご指摘について:

結論: 意図的な例外として現状維持します。

  • org全体の auto-merge ポリシーは patch/digest 限定(default.json で定義)
  • Elixir 系リポジトリ(tdig / tenbin_* / elixir_dnstap)は既存運用で minor も自動マージしており、hex パッケージが概ね semver 準拠で安定しているため、この挙動を維持
  • 意図を明確化するため elixir.json のルール description に例外である旨を明記(commit b892108)。挙動の変更はありません

PR説明の「auto-merge limited to patch/digest」は default.json の方針を指すもので、elixir.json はその意図的な例外、という位置づけです。

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

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

@toshi0806 toshi0806 merged commit 34df44c into main Jun 3, 2026
1 check passed
@toshi0806 toshi0806 deleted the add-renovate-shared-presets branch June 3, 2026 07:15
toshi0806 added a commit that referenced this pull request Jun 3, 2026
Pin the nested 'github>smkwlab/.github' (default.json) references inside
latex.json and elixir.json to the moving major tag #v1, so that pinned
consumers (extends github>smkwlab/.github:latex#v1) resolve the entire
preset chain — including the auto-merge policy in default.json — at a
controlled version instead of the default branch.

Addresses Copilot review feedback about unpinned preset references.
Follow-up to #28.
toshi0806 added a commit to smkwlab/thesis-management-tools that referenced this pull request Jun 3, 2026
* Use shared Renovate preset from smkwlab/.github

Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared preset (github>smkwlab/.github:latex). Behavior is
preserved; auto-merge for patch/digest updates is now applied per the
shared policy.

Depends on smkwlab/.github#28.

* Pin shared Renovate preset reference to v1

Reference the shared preset at the v1 tag (github>smkwlab/.github:latex#v1)
so dependency-update behavior is resolved at a controlled version instead
of the default branch.

Follow-up to smkwlab/.github#29.
toshi0806 added a commit to smkwlab/latex-release-action that referenced this pull request Jun 3, 2026
* Use shared Renovate preset from smkwlab/.github

Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared preset (github>smkwlab/.github:latex). Behavior is
preserved; auto-merge for patch/digest updates is now applied per the
shared policy.

Depends on smkwlab/.github#28.

* Pin shared Renovate preset reference to v1

Reference the shared preset at the v1 tag (github>smkwlab/.github:latex#v1)
so dependency-update behavior is resolved at a controlled version instead
of the default branch.

Follow-up to smkwlab/.github#29.
toshi0806 added a commit to smkwlab/latex-environment that referenced this pull request Jun 3, 2026
* Use shared Renovate preset from smkwlab/.github

Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared preset (github>smkwlab/.github:latex). Behavior is
preserved; auto-merge for patch/digest updates is now applied per the
shared policy.

Depends on smkwlab/.github#28.

* Pin shared Renovate preset reference to v1

Reference the shared preset at the v1 tag (github>smkwlab/.github:latex#v1)
so dependency-update behavior is resolved at a controlled version instead
of the default branch.

Follow-up to smkwlab/.github#29.
toshi0806 added a commit to smkwlab/ai-academic-paper-reviewer that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared preset pinned to the v1 tag, while preserving the
repo-specific forkProcessing setting required for fork PR reviews.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/tdig that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/tenbin_dns that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/elixir_dnstap that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/tdig that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/tenbin_dns that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/elixir_dnstap that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared Elixir preset pinned to the v1 tag. The mix manager
config, lockFileMaintenance, grouping and auto-merge behavior are now
defined centrally in smkwlab/.github (elixir.json @ v1); behavior is
preserved.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
toshi0806 added a commit to smkwlab/texlive-ja-textlint that referenced this pull request Jun 3, 2026
Replace the duplicated Renovate configuration with a one-line extends of
the org-wide shared preset pinned to the v1 tag. Behavior is preserved
and patch/digest auto-merge is applied per the shared policy.

Part of the ecosystem-wide Renovate consolidation (smkwlab/.github#28, #29).
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