Renovate: switch platform config from 'gitea' to 'forgejo' #209
Labels
No labels
blocked
needs-manual-review
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
matt/homelab-docker#209
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Context
Seen 2026-08-03 while verifying PR #208 (Renovate v44.11.4 upgrade). Manually running Renovate logged:
config.json Nexus (/mnt/server/containers/renovate/config.js) currently setsplatform: 'gitea'. This still works � Forgejo is a fork of Gitea and the API is compatible enough � but Renovate now has a nativeforgejoplatform module that better matches Forgejo-specific behavior (and will get Forgejo-specific fixes/features going forward, rather than relying on Gitea-compatibility mode).Fix
Change
platform: 'gitea'toplatform: 'forgejo'inconfig.json Nexus, then run Renovate manually once to confirm it authenticates and extracts dependencies cleanly (same check used for the v44 upgrade in #204/#208).Priority
Low � not broken, just a recommended follow-up. Not urgent.
Fixed.
platform: "gitea"->platform: "forgejo"in config.js alone was not sufficient: the native forgejo platform module makes an extraGET /orgs/mattcall that the gitea-compat module never made, and the renovate-bot token lackedread:organizationscope, causing every run to fail with403 Forbidden.Fix: generated a new renovate-bot access token via
forgejo admin user generate-access-token(scopes: read:repository, write:repository, read:issue, write:issue, read:user, read:organization), swapped it into config.js on Nexus alongside the platform change. Verified with a manualdocker compose run --rm renovate- clean run, no platform warning, no errors, dependency extraction succeeded (12 files / 17 deps), result: done.Old token (id ending in the previous config.js value) is now unused but still technically valid - low-priority cleanup to revoke it later if desired.