Launchpad is a GitOps commit generator that lets you deploy Helm charts to Kubernetes through a simple web UI while keeping Git as the single source of truth. Every deployment becomes auditable and reproducible through Git commit. No controllers, no lock in, no hidden state.
It is not:
-
A Kubernetes controller
-
A GitOps platform
-
A cluster owner
Git remains the single source of truth.
Launchpad reduces cognitive load when deploying Helm charts but it does not abstract Kubernetes away.
It:
-
Executes Helm
-
Writes
values.yamland deployment metadata to the repository -
Optionally signs commits
-
Provides lightweight read only observability
It does not:
-
Reconcile drift
-
Continuously watch the cluster
-
Introduce custom controllers
Repository layout:
repo-root/
├── backup_charts/
│ └── <helm_chart_name>_<helm_chart_version>/
│ └── <helm_chart_name>/
│ └── (full pulled Helm chart)
└── charts/
└── <release_name>/
└── <namespace>/
├── metadata.yaml
└── values.yaml
Metadata describing what was deployed and when:
backup_helm_chart_deployed: <boolean>
helm_chart_name: <chart name>
helm_chart_url: <source URL>
helm_chart_version: <deployed version>
timestamp: <deployment timestamp>
The exact Helm values used for the deployment.
This guarantees reproducibility and clean Git diffs.
-
User submits Helm configuration via UI
-
Backend validates input and YAML
-
Helm CLI executes against the cluster
-
On success:
-
values.yamlis written -
metadata.yamlis written -
Commit is created
-
Changes are pushed to the configured branch
-
Commit format:
bot(<release_namespace>): Update Helm chart and values [<timestamp>].
Commits can be optionally GPG signed. Each deployment is a auditable Git event.
Read-only cluster inspection lets you:
-
View the full cluster state
-
Inspect specific release namespaces and services
Launchpad requires:
-
Repository URL
-
Personal access token
-
Branch name
-
Commit identity
-
Optional GPG key
-
API server
-
Token
-
Base64 CA certificate
Database configuration exists for future use.
Launchpad itself remains stateless.
Launchpad is fully removable. You can:
-
Disable the service
-
Delete deployments
-
Migrate to ArgoCD or Flux
No CRDs, controllers, reconciliation loops or proprietary data stores are required. Git remains the source of truth.