Add Helm chart - #250
Draft
andrew wants to merge 1 commit into
Draft
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a first-party Helm chart to deploy git-pkgs/proxy to Kubernetes, with defaults geared toward persistent SQLite + filesystem-backed storage, and integrates chart linting/rendering in CI plus publishing the chart as an OCI artifact to GHCR during releases (closing #226).
Changes:
- Introduces a Helm chart (
deploy/charts/proxy) with ConfigMap/PVC support, hardened pod/container security settings, and optional ingress. - Updates CI to lint and template the chart (including a non-default values variant).
- Extends the release publishing workflow to package and push the chart to GHCR with
version/appVersionsynced to the release tag.
Reviewed changes
Copilot reviewed 13 out of 14 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Documents Helm install and points to chart values. |
| deploy/charts/proxy/Chart.yaml | Adds chart metadata with placeholder version/appVersion for release-time injection. |
| deploy/charts/proxy/values.yaml | Defines default chart values (SQLite + filesystem + PVC, probes, security contexts, ingress toggles). |
| deploy/charts/proxy/.helmignore | Adds Helm packaging ignore rules. |
| deploy/charts/proxy/templates/_helpers.tpl | Adds naming/label helpers and image reference helper (tag vs digest). |
| deploy/charts/proxy/templates/configmap.yaml | Renders a ConfigMap containing config.yaml unless an existing ConfigMap is provided. |
| deploy/charts/proxy/templates/deployment.yaml | Deploys the proxy container with config/data volumes, probes, and hardened settings. |
| deploy/charts/proxy/templates/service.yaml | Exposes the proxy via a ClusterIP Service. |
| deploy/charts/proxy/templates/pvc.yaml | Creates a PVC when persistence is enabled and no existing claim is provided. |
| deploy/charts/proxy/templates/ingress.yaml | Adds optional Ingress support driven by values. |
| deploy/charts/proxy/templates/NOTES.txt | Provides post-install guidance (base_url, port-forward, persistence warning). |
| .github/workflows/ci.yml | Adds Helm lint + template rendering job in CI. |
| .github/workflows/publish.yml | Adds chart packaging + push-to-GHCR job gated on tags. |
| .gitignore | Adjusts ignore patterns for built artifacts. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Comment on lines
+54
to
+57
| persistence: | ||
| enabled: true | ||
| mountPath: /data | ||
| existingClaim: "" |
Comment on lines
+1
to
+2
| {{- if .Values.ingress.enabled }} | ||
| apiVersion: networking.k8s.io/v1 |
| @@ -0,0 +1,133 @@ | |||
| replicaCount: 1 | |||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a Helm chart for deploying proxy with persistent SQLite and filesystem storage by default. It supports existing ConfigMaps and PVCs, environment-based secret overrides, ingress, and hardened pod settings.
The chart is checked in CI and published to
oci://ghcr.io/git-pkgs/charts/proxywith its version andappVersionsynchronized to the container release. The release flow follows the example shared by @acidghost in #226.Closes #226