Skip to content

Commit a42f353

Browse files
authored
Describe the process to bump the version of a core component (#503)
Signed-off-by: cmoulliard <[email protected]>
1 parent 9093b0d commit a42f353

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

CONTRIBUTING.md

+18
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,24 @@ All ArgoCD applications should be synced and healthy. You can check them in the
7474
kubectl get application -n argocd
7575
```
7676

77+
### Upgrading a core component
78+
79+
The process to upgrade a core component: Argo CD, Gitea, Ingress is not so complex but requires to take care about the following points:
80+
81+
- Select the core component to be upgraded and get its current version. See the kustomization file under the `hack/<core-component>` folder and the resource YAML file of the resources to be installed
82+
- Create a ticket describing the new sibling version of the core component to be bumped
83+
- Bump the version part of the kustomization file. Example for argocd: https://github.com/cnoe-io/idpbuilder/blob/main/hack/argo-cd/kustomization.yaml#L4
84+
- Review the patched files to see if changes are needed (new file(s), files to be deleted or files to be changed). Example for argocd: https://github.com/cnoe-io/idpbuilder/blob/main/hack/argo-cd/kustomization.yaml#L7-L16
85+
- Generate the new resources YAML files using the bash script: `generate-manifests.sh`
86+
- Build a new idpbuilder binary
87+
- Test it locally like also using the e2e integration test: `make e2e`
88+
- Review the test cases if changes are needed too
89+
- Update the documentation to detail which version of the core component has been bumped like also for which version (or range of versions) of idpbuilder the new version of the component apply for.
90+
91+
**NOTES**:
92+
- For some components, it could be possible that you also have to upgrade the version of the go library within the `go.mod` file. Example for gitea: `code.gitea.io/sdk/gitea v0.16.0`
93+
- For Argo CD, we use a separate GitHub project (till a better solution is implemented) packaging a subset of the Argo CD API. Review carefully this file please: https://github.com/cnoe-io/argocd-api?tab=readme-ov-file#read-this-first
94+
7795
## Preparing a Pull Request
7896

7997
This repository requires a [Developer Certificate of Origin (DCO)](https://developercertificate.org/) signature.

0 commit comments

Comments
 (0)