
Interestingly, the existence of this chart somewhat contradicts the [docs](https://docs.drone.io/runner/extensions/kube/), which suggest you should "_\[d\]eploy the secret extension in the same Pod as your Kubernetes runner_". Though the interaction appears to be via an HTTP call, so that doesn't seem like would be an issue.
Collection of Helm charts, primarily for use in my own homelab (though, if you want to use them, you're welcome to!)
Usage
Package and upload
# Package a chart ready to be uploaded
$ helm package charts/<path>
# Do the upload
$ curl --user <username>:<password> -X POST --upload-file ./<package>.tgz https://hostname.of.gitea/api/packages/<user>/helm/api/charts
# Don't forget to delete the `.tgz`!
Installation
Bootstrap with kubectl apply -f main-manifest.yaml
TODO: App-of-apps to manage whole-cluster configuration in a more programmatic way.
Initial bootstrap
Note that you need to have manually connected the source Repository in ArgoCD before installing the App-of-apps.
TODO - when we have a better secrets management system, export Gitea user password so that it can be used by ArgoCD to initialize that repository directly (https://argo-cd.readthedocs.io/en/stable/operator-manual/declarative-setup/#repositories)
Jsonnet
As of 2024, I started using Jsonnet to define apps in a less repetitious way.
To check the output before submitting, use jsonnet -J app-of-apps app-of-apps/<filename>.jsonnet
Other links
- General documentation on repositories
- Gitea's own documentation
- Helm charts via Argo, broader application syntax
- Don't be caught out by Argo's behaviour of only accepting Applications in its own namespace!
- See here for examples of how to call the Argo UI