This plugin allows running Renovate against repositories and extracts reports from it.
Supported platforms:
- Github
- Gitlab
Install the plugin:
# Install packages from the root directory
yarn --cwd packages/backend add @secustor/backstage-plugin-renovate-backend
Add the plugin to your Backstage instance:
// Add the following to `packages/backend/src/index.ts`
backend.add(import('@secustor/backstage-plugin-renovate-backend'));
Further, you need to add a queue and a runtime implementation.
See the respective plugins for more information:
- @secustor/backstage-plugin-renovate-backend-module-queue-local
- @secustor/backstage-plugin-renovate-backend-module-queue-redis
- @secustor/backstage-plugin-renovate-backend-module-runtime-direct
- @secustor/backstage-plugin-renovate-backend-module-runtime-docker
- @secustor/backstage-plugin-renovate-backend-module-runtime-s3
If you wish to install the frontend plugin, you can do so by following the instructions in the frontend plugin's README.
The configurations are derived from integrations.
integrations:
github:
- host: github.com
token: ${GITHUB_TOKEN}
backend:
cache:
# the plugin will reuse this configuration for Renovates Redis integration
store: redis
connection: redis://user:pass@cache.example.com:6379
cors:
# expose paginagtion headers to the frontend
exposedHeaders:
- x-total-count
- x-current-page
- x-page-count
- x-page-size
renovate:
cache:
# Allows turning off cache injection. You can still manually supply caches using the Renovate config
enabled: false
cleanup:
# -1 translates to never delete reports during maintenance tasks
# x > 0 number of reports to maintain
minimumReports: -1
# -1 translates to never delete dependencies during maintenance tasks
# x > 0 number of dependencies to maintain
dependencyHistory: -1
schedules:
cleanup:
# enabled: true # default value
frequency: { minutes: 60 }
timeout: { minutes: 60 }
renovation:
enabled: false # disable schedule. This is useful e.g. for local development
frequency: { minutes: 60 }
timeout: { minutes: 60 }
runtime:
# ID of the runtime provided via extension point. This option is required as the backend comes with no runtime by default.
type: docker
# add variables to the designated runner or pass through from existing instance.
environment:
# forward simply the NODE_EXTRA_CA_CERTS variable
- name: NODE_EXTRA_CA_CERTS
# set the variable to a specific value
- name: HTTPS_PROXY
value: http://proxy.my.com:8080
queue:
type: local-fastq
config:
# only do a lookup and create reports with updates and do not open PRs
dryRun: lookup