updatecli/README.md
Note: This automation is still work in progress and subject to change. For more information, please consult PR #6559.
This project uses Updatecli to automate and orchestrate security related updates and versions bumps in K3s.
We use Updatecli for this automation, instead of Dependabot or Renovate, because of its extensibility and multiple plugins resources that allow greater flexibility when automating sequences of conditional update steps across multiple repos.
For detailed information on how to use Updatecli, please consult its documentation page.
The main usage of Updatecli is for:
A manifest or pipeline consists of three stages - source, condition and target - that define how to apply the update strategy.
When adding a new manifest, please follow the example structure defined below.
.
└── updatecli
├── scripts # Contains the auxiliary scripts used in the manifests
├── updatecli.d
│ ├── golang-alpine.yaml # Ideally each pipeline file corresponds to a dependency update
│ ├── helm-controller.yaml
│ ├── klipper.yaml
└── values.yaml # Configuration values
Local testing of manifests require:
diff, that will show the changes without actually applying them.public_repo.
export UPDATECLI_GITHUB_TOKEN="your GH PAT"
updatecli diff --clean --config updatecli/updatecli.d/ --values updatecli/values.yaml
Everyone is free to contribute with new manifests and pipelines for security version bumps targeting Rancher owned repos.
Before contributing, please follow the guidelines provided in this readme and make sure to test locally your changes before opening a PR.