Skip to content

馃懛 Replace Repology with Alpine CDN datasource for package pins - #381

Merged
frenck merged 1 commit into
mainfrom
renovate-alpine-datasource
Sep 12, 2026
Merged

frenck merged 1 commit into
mainfrom
renovate-alpine-datasource

Conversation

@frenck

@frenck frenck commented Sep 12, 2026

Copy link
Copy Markdown
Member

Proposed Changes

(Describe the changes and rationale behind them)

Renovate's repology datasource has stopped resolving Alpine package pins across the organization: every alpine_3_24/* lookup returns no-result, so Alpine pins are no longer updated at all and builds break whenever upstream moves a pinned package. Repology rate limits its tools/project-by endpoint hard, and each run resolves 27 packages through it here.

This applies the same fix that landed on hassio-addons/app-ssh#1119: a Renovate custom datasource that reads Alpine's own package index on dl-cdn.alpinelinux.org, which is the same place apk installs from. Renovate's html format turns each href in the directory listing into a version candidate, and extractVersionTemplate picks the version per package (the \d keeps nano from matching nano-syntax-... style siblings).

  • Dependency names stay alpine_3_24/<package>, so PR titles, branch names and the automerge rule are unchanged.
  • Custom datasources use registryStrategy: "first", so packages from the community repository need a rule pointing at the community index. Derived mechanically from the v3.24 APKINDEX files against this Dockerfile, exactly one pinned package lives there: libnsl-dev. All other 26 pins are in main, and none are missing from both indexes.

Verified by running Renovate against this repository, docker run ghcr.io/renovatebot/renovate:latest with RENOVATE_PLATFORM=local RENOVATE_DRY_RUN=lookup (v44.82.4):

  • renovate-config-validator validates the config cleanly
  • all 27 Alpine pins are extracted and resolve with a currentVersion from the CDN, 26 via the main index and 1 (libnsl-dev) via community, zero Found no results in the debug log
  • zero Alpine updates are found, which matches an independent diff of every pin against the v3.24 APKINDEX files: all 27 pins are current

So no stale pin is blocking anything in this repository right now; this PR only restores Renovate's ability to notice the next one.

Stacked on #380, which migrates fileMatch to managerFilePatterns in the same file. The diff here is the datasource change only.

Related Issues

(Github link to related issues or pull requests)

Same change as hassio-addons/app-ssh#1119. Dependency Dashboard: #126.

@frenck frenck added the ci Work that improves the continue integration. label Sep 12, 2026
@coderabbitai

coderabbitai Bot commented Sep 12, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 57 minutes.

Check out review usage here.

View limit details

Limit details: You鈥檝e used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

鈿欙笍 Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 899e252e-1997-4c07-aabf-9f3df71ae8da

馃摜 Commits

Reviewing files that changed from the base of the PR and between d12ab1a and 8337aea.

馃搾 Files selected for processing (1)
  • .github/renovate.json

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

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

Base automatically changed from repository-maintenance-apps-rename to main September 12, 2026 17:41
Renovate's Repology datasource stopped resolving Alpine package pins
across the organization, so every alpine_3_24/* lookup returned no
result and pinned packages were no longer updated at all.

Switch the Alpine custom manager to a custom datasource that reads the
Alpine CDN directory listing directly, using extractVersionTemplate to
pull the version out of each .apk filename. libnsl-dev lives in the
community repository and gets its own registry URL, since custom
datasources only consult the first registry.
@frenck
frenck force-pushed the renovate-alpine-datasource branch from 03942ea to 8337aea Compare September 12, 2026 17:42
@frenck
frenck merged commit 5bd3f21 into main Sep 12, 2026
13 checks passed
@frenck
frenck deleted the renovate-alpine-datasource branch September 12, 2026 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci Work that improves the continue integration.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant