Run Renovate on your own infrastructure with CRD-based scheduling, parallel execution, auto-discovery, and a built-in UI. If you self-host Renovate and already run Kubernetes, this operator gives you the control and observability that plain self-hosted setups lack.
Supports all Renovate platforms: GitHub, GitLab, Bitbucket, Azure DevOps, Gitea, and more. The operator works with any platform supported by Renovate - simply configure your credentials and platform settings via environment variables or secrets. Note that some platforms have additional operator-specific features like native webhook integrations for GitHub and GitLab.
| Feature | Mend Renovate CLI | Mend Renovate Community Self-Hosted (aka "CE") | Renovate Operator |
|---|---|---|---|
| Fully open source, no signup or license key | ✅ | ❌ | ✅ |
| Automated dependency updates | ✅ | ✅ | ✅ |
| Runs on your own infrastructure | ✅ | ✅ | ✅ |
| Auto-discovery | ✅ | ✅ | ✅ |
| Webhook API for on-demand runs | ❌ | ✅ | ✅ |
| Web UI | ❌ | ❌ | ✅ |
| Declarative cron scheduling via CRD | ❌ | ❌ | ✅ |
| Auto-discovery with group/topic filtering | ❌ | ❌ | ✅ |
| Per-project status tracking in-cluster | ❌ | ❌ | ✅ |
| Parallel execution with concurrency control | ❌ | ❌ | ✅ |
| Prometheus metrics & health checks | ❌ | ✅ | ✅ |
| Kubernetes-native pod scheduling | ❌ | ❌ | ✅ |
| Leader election for high availability | ❌ | ❌ | ✅ |
| Job lifecycle management (TTL, deadlines, retries) | ❌ | ❌ | ✅ |
- At the defined time of your schedule, a renovate discovery job is started
- After the discovery finished, you will be able to see all your discovered projects in the UI
- All projects are now being set to be scheduled
- Every 10 seconds the operator checks for schedules projects and starts a new renovate job
- Only as many jobs as defined in
spec.parallelismare getting executed at the same time
helm -n renovate-operator upgrade --install renovate-operator \
oci://ghcr.io/mogenius/helm-charts/renovate-operator \
--create-namespace --waithelm repo add mogenius https://helm.mogenius.com/public --force-update
helm -n renovate-operator upgrade --install renovate-operator mogenius/renovate-operator --create-namespace --wait- Platform Setup
- GitLab
- GitHub PAT
- GitHub App - External Secrets Operator
- Native GitHub App Support - We are still working on that
- Azure DevOps, Bitbucket, Gitea, Forgejo, and others: configure via
extraEnv(see Renovate platform docs)
- Autodiscovery
- Webhook API
- Using a config.js
- Image Pull Secrets
- Scheduling
- Metrics
Made with contrib.rocks.
Running the operator
Needs KUBECONFIG variable exported with the path to your local kube-config and a context you want to use.
just runRunning Tests
Run the test-suite using just:
just test-unitRun golangci-lint using just:
just golangci-lintRun all checks (tests + linters):
just checkGenerate CRDs
just generate
