chore(repo): init helm-charts repo with two charts and automated package/push
This commit is contained in:
47
README.md
Normal file
47
README.md
Normal file
@ -0,0 +1,47 @@
|
||||
# helm-charts repo
|
||||
|
||||
This repository manages two Helm charts (e.g., `code-server-chart`, `vllm-serve`) and automates packaging and publishing on every `git push`.
|
||||
|
||||
## How it works
|
||||
|
||||
- Local pre-push hook runs `scripts/helm_publish.sh` to `helm package` and `helm push` all charts found under this folder (directories containing a `Chart.yaml`).
|
||||
- A Gitea Actions workflow at `.gitea/workflows/helm-publish.yml` does the same on the server side for each push.
|
||||
|
||||
## Configure registry
|
||||
|
||||
1. Copy `.env.example` to `.env` and fill in:
|
||||
|
||||
```
|
||||
HELM_OCI_NAMESPACE=gitea.example.com/your-user
|
||||
HELM_USERNAME=your-username
|
||||
HELM_PASSWORD=your-token-or-password
|
||||
```
|
||||
|
||||
2. For CI, add these as repository secrets in Gitea:
|
||||
- `HELM_OCI_NAMESPACE`
|
||||
- `HELM_USERNAME`
|
||||
- `HELM_PASSWORD`
|
||||
|
||||
The charts are pushed to `oci://$HELM_OCI_NAMESPACE` (Helm appends the chart name and version).
|
||||
|
||||
## Chart discovery
|
||||
|
||||
No configuration needed by default. The script auto-discovers chart directories by looking for `Chart.yaml` up to depth 2 (excluding nested `charts/` vendor dir).
|
||||
|
||||
Optionally pin which chart directories to process:
|
||||
|
||||
```
|
||||
export CHART_DIRS="code-server-chart vllm-serve"
|
||||
```
|
||||
|
||||
## Run manually
|
||||
|
||||
```
|
||||
./scripts/helm_publish.sh
|
||||
```
|
||||
|
||||
Use `DRY_RUN=1` to only package locally:
|
||||
|
||||
```
|
||||
DRY_RUN=1 ./scripts/helm_publish.sh
|
||||
```
|
||||
Reference in New Issue
Block a user