snapshot of 82e970afb581494c2d30c99b177f854ed4a00f96 Annotations recorded against the manifests that run this cluster. https://github.com/janpuc/home-ops

.renovaterc.json5

Not anchored to a line

Deliberate divergences from onedr0p/home-ops

why ·ok

This file tracks `onedr0p/home-ops`'s `.renovaterc.json5` closely — same lockFileMaintenance block, same auto-merge / grouping / labeling rule set, same verbatim section comments. Four differences are intentional, so a future "align with upstream" pass should not re-add them:

Show the rest

- **No `hostRules` for `ocharted.turbo.ac`.** That is onedr0p's private OCI registry, authenticated via `RENOVATE_SECRETS` in their Renovate workflow. Nothing here pulls from it. Copying the block would also require the `OCHARTED_USERNAME` / `OCHARTED_PASSWORD` 1Password items their workflow loads, which do not exist in this vault. - **No Rook-Ceph group and no "Hold Rook-Ceph at v1.19.x" rule.** Rook-Ceph was replaced by miroir on 2026-07-28; there is not one rook-ceph manifest left. Both rules were inert here and referenced storage that no longer exists. - **No "Auto-merge Grafana dashboards" rule.** It matches `custom.grafana-dashboards`, a datasource that only exists when `apps/grafanaDashboards.json5` is extended, and there are no `grafanadashboard.yaml` files here. Re-add it together with the preset, not on its own. - **`:timezone(Europe/Warsaw)`** rather than `America/New_York`. This governs when the `before 3am` / `before 6am on Monday` schedules fire.

The 1Password CLI rule is the one addition upstream has that this repo genuinely needs: `.mise/config.toml` pins `1password-cli`, and the dependency dashboard was reporting `Failed to look up github-tags package 1password/cli: no-result` until it was disabled.

2026-08-1001KZNAXH41FZJST6WPHSDBVAT0
1 {
2 $schema: "https://docs.renovatebot.com/renovate-schema.json",
3 extends: [
4 "github>home-operations/renovate-presets#8.1.0",
5 "github>home-operations/renovate-presets//apps/llamacpp.json5#8.1.0",
6 "github>home-operations/renovate-presets//apps/searxng.json5#8.1.0",
7 "github>home-operations/renovate-presets//apps/talosFactory.json5#8.1.0",
8 ":timezone(Europe/Warsaw)",
9 ],
10 customManagers: [
11 {
12 customType: "regex",
13 description: "Update the koment CLI version used by GitHub Pages",
14 managerFilePatterns: ["/^\\.github\\/workflows\\/koment-pages\\.yaml$/"],
15 matchStrings: ["version: (?<currentValue>v?\\d+\\.\\d+\\.\\d+)"],
16 depNameTemplate: "koment-dev/koment",
17 packageNameTemplate: "koment-dev/koment",
18 datasourceTemplate: "github-releases",
19 versioningTemplate: "semver",
20 },
21 {
22 customType: "regex",
23 description: "Update the koment tool pinned in t3-code-operator Workstations",
24 managerFilePatterns: [
25 "/^kubernetes\\/apps\\/ai\\/t3-code-operator\\/instance\\/workstation\\.yaml$/",
26 ],
27 matchStrings: [
28 'backend: github:koment-dev/koment\\s+version: "(?<currentValue>\\d+\\.\\d+\\.\\d+)"',
29 ],
30 depNameTemplate: "koment-dev/koment",
31 packageNameTemplate: "koment-dev/koment",
32 datasourceTemplate: "github-releases",
33 extractVersionTemplate: "^v(?<version>.+)$",
34 versioningTemplate: "semver",
35 },
36 ],
37 lockFileMaintenance: {
38 enabled: true,
39 schedule: ["before 3am on the first day of the month"],
40 commitMessageExtra: "({{manager}})",
41 additionalBranchPrefix: "{{manager}}-",
42 },
43 packageRules: [
44 {
45 description: "Auto-merge trusted OCI digests",
46 matchDatasources: ["docker"],
47 matchUpdateTypes: ["digest"],
48 matchPackageNames: ["/home-operations/"],
49 automerge: true,
50 automergeType: "pr",
51 ignoreTests: false,
52 },
53 {
54 description: "Auto-merge high-cadence OCI packages weekly",
55 matchDatasources: ["docker"],
56 matchUpdateTypes: ["minor", "patch"],
57 matchPackageNames: ["/kube-prometheus-stack/"],
58 automerge: true,
59 automergeType: "pr",
60 ignoreTests: false,
61 schedule: ["before 6am on Monday"],
62 },
63 {
64 description: "Auto-merge GitHub Actions",
65 matchManagers: ["github-actions"],
66 matchUpdateTypes: ["minor", "patch", "digest"],
67 automerge: true,
68 automergeType: "branch",
69 minimumReleaseAge: "3 days",
70 ignoreTests: true,
71 },
72 {
73 description: "Auto-merge trusted GitHub Actions",
74 matchManagers: ["github-actions"],
75 matchPackageNames: ["/^actions\\//", "/^renovatebot\\//"],
76 matchUpdateTypes: ["minor", "patch", "digest"],
77 automerge: true,
78 automergeType: "branch",
79 minimumReleaseAge: "1 minute",
80 ignoreTests: true,
81 },
82 {
83 description: "Auto-merge Renovate Presents",
84 matchManagers: ["renovate-config"],
85 matchUpdateTypes: ["minor", "patch"],
86 automerge: true,
87 automergeType: "branch",
88 ignoreTests: true,
89 },
90 {
91 description: "Actions Runner Controller Group",
92 groupName: "actions-runner-controller",
93 matchDatasources: ["docker"],
94 matchPackageNames: ["/gha-runner-scale-set-controller/", "/gha-runner-scale-set/"],
95 group: {
96 commitMessageTopic: "{{{groupName}}} group",
97 },
98 minimumGroupSize: 2,
99 },
100 {
101 description: "Flux Operator Group",
102 groupName: "flux-operator",
103 matchDatasources: ["docker"],
104 matchPackageNames: ["/flux-operator/", "/flux-instance/"],
105 group: {
106 commitMessageTopic: "{{{groupName}}} group",
107 },
108 minimumGroupSize: 2,
109 },
110 {
111 description: "Kubernetes Group",
112 groupName: "kubernetes",
113 matchDatasources: ["docker"],
114 matchPackageNames: [
115 "/kube-apiserver/",
116 "/kube-controller-manager/",
117 "/kube-proxy/",
118 "/kube-scheduler/",
119 "/kubelet/",
120 ],
121 group: {
122 commitMessageTopic: "{{{groupName}}} group",
123 },
124 minimumGroupSize: 5,
125 },
126 {
127 description: "Mise Tools Group",
128 matchManagers: ["mise"],
129 groupName: "mise tools",
130 groupSlug: "mise-tools",
131 },
132 {
133 description: "Koment Group",
134 groupName: "koment",
135 groupSlug: "koment",
136 matchPackageNames: ["koment-dev/koment", "ghcr.io/koment-dev/charts/koment"],
137 group: {
138 commitMessageTopic: "{{{groupName}}} group",
139 },
140 minimumGroupSize: 5,
141 },
142 {
143 description: "Talos Group",
144 groupName: "talos",
145 matchPackageNames: ["siderolabs/talos"],
146 group: {
147 commitMessageTopic: "{{{groupName}}} group",
148 },
149 minimumGroupSize: 2,
150 },
151 {
152 description: "1Password CLI is not resolvable on GitHub, bump manually",
153 matchManagers: ["mise"],
154 matchDepNames: ["1password-cli"],
155 enabled: false,
156 },
157 {
158 matchUpdateTypes: ["major"],
159 addLabels: ["type/major"],
160 },
161 {
162 matchUpdateTypes: ["minor"],
163 addLabels: ["type/minor"],
164 },
165 {
166 matchUpdateTypes: ["patch"],
167 addLabels: ["type/patch"],
168 },
169 {
170 matchUpdateTypes: ["digest"],
171 addLabels: ["type/digest"],
172 },
173 {
174 description: "Unattended freeze: high-blast-radius updates need dashboard approval",
175 matchPackageNames: [
176 "/kube-apiserver/",
177 "/kube-controller-manager/",
178 "/kube-proxy/",
179 "/kube-scheduler/",
180 "/kubelet/",
181 "siderolabs/talos",
182 "/flux-operator/",
183 "/flux-instance/",
184 "/charts/miroir/",
185 "/charts/kopiur/",
186 "/cilium/",
187 "koment-dev/koment",
188 "ghcr.io/koment-dev/charts/koment",
189 "docker.io/library/alpine",
190 ],
191 automerge: false,
192 dependencyDashboardApproval: true,
193 },
194 ],
195 }

Find an annotation

Search file paths, rationale, kinds, and authors.

↑↓ moveEnter openEsc close