Skip to content

chore(renovate): let FerrLabs charts through without the one-day wait - #354

Merged
BryanFRD merged 1 commit into
mainfrom
chore/renovate-ferrlabs-charts
Sep 20, 2026
Merged

BryanFRD merged 1 commit into
mainfrom
chore/renovate-ferrlabs-charts

Conversation

@BryanFRD

Copy link
Copy Markdown
Contributor

Summary

  • Charts published by the org (oci://ghcr.io/ferrlabs/charts) now skip the one-day quarantine that the generic Flux/Helm rule applies, exactly like the @ferrlabs/ npm packages, the ferrlabs-* crates and the FerrLabs/.github actions already do.
  • Concrete case: RoxyCloud published charts 0.25.0, 0.25.1 and 0.25.2 within 15 hours, and the cluster is still on 0.24.4 because each one has to age 24 hours before Renovate will even open a PR.
  • matchPackageNames targets the full OCI name because the flux manager resolves a HelmRelease backed by a type: oci HelmRepository through the docker datasource, unlike a plain HTTP repository which yields the chart name alone.
  • Majors are untouched: the last rule of the file still turns their automerge off.

Scope

This is a shared preset, so it applies to every repo that extends it. In practice that means any FerrLabs-published chart consumed by FerrLabs/Infra: RoxyCloud today, and also ferrvault-operator and lfsx. Their patch and minor chart bumps will now be raised and auto-merged as soon as they are published. Say so and I will narrow the rule to a chart list instead.

Test plan

  • default.json still parses, and the diff is 20 added lines with no reformatting
  • After merge, the next in-cluster Renovate run (every 2h) opens the RoxyCloud chart PR immediately instead of waiting for the 24h mark

@ferrfleet ferrfleet Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Rule placement is right: it sits after the generic Flux/Helm rule so the later minimumReleaseAge: "0" wins, and before the major rule so majors keep automerge: false. ghcr.io/ferrlabs/charts/** matches the packageName the flux/helmv3 managers build for an OCI HelmRepository (<registry path>/<chart>), and the glob-with-slashes form already works in this file for FerrLabs/**. One nit inline about majors joining the group.

Comment thread default.json
Comment on lines +250 to +252
"matchPackageNames": [
"ghcr.io/ferrlabs/charts/**"
],

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nit: no matchUpdateTypes, so majors match this rule too and get pulled into the FerrLabs charts group. Grouping ignores the major/minor split (that is why group:allNonMajor exists), so a chart major landing in the group takes the whole branch with it: generateBranchConfig sets the branch automerge to false as soon as one upgrade in it has automerge: false, which the last rule does for majors. Net effect is the patch/minor bumps this PR is meant to fast-track stop auto-merging until someone deals with the major.

Restricting the rule keeps the major out: it then falls through to the global 1-day age with automerge: false from the last rule, i.e. an ungrouped manual PR, which is what "majors stay manual" reads as.

Suggested change
"matchPackageNames": [
"ghcr.io/ferrlabs/charts/**"
],
"matchPackageNames": [
"ghcr.io/ferrlabs/charts/**"
],
"matchUpdateTypes": [
"patch",
"minor"
],

Same shape as the existing @ferrlabs/ and ferrlabs-* rules, so if you would rather keep all four consistent, leaving it is defensible.

@BryanFRD
BryanFRD merged commit af8854d into main Sep 20, 2026
13 checks passed
@BryanFRD
BryanFRD deleted the chore/renovate-ferrlabs-charts branch September 20, 2026 12:33
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