Initial commit: VMware vSphere API simulator scaffold.
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API contracts, docs, client examples, and the unit/integration/compatibility test suite for local client and tooling labs without a real vCenter.
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
**Language / Язык:** [English](README.md) | [Русский](README.ru.md)
|
||||
|
||||
# Helm chart: vmware-api-simulator
|
||||
|
||||
Deploys the published runtime image
|
||||
[`inecs/vmware-api-simulator`](https://hub.docker.com/r/inecs/vmware-api-simulator)
|
||||
with optional official PostgreSQL, migrations, seed Job, Ingress, and
|
||||
cert-manager Let's Encrypt `ClusterIssuer` resources.
|
||||
|
||||
Full guide: [docs/kubernetes.md](../../docs/kubernetes.md).
|
||||
|
||||
## Quick install
|
||||
|
||||
Prerequisites: Kubernetes, Helm 3, ingress-nginx (or compatible), cert-manager.
|
||||
|
||||
```bash
|
||||
helm upgrade --install vmware-sim ./helm/vmware-api-simulator \
|
||||
-n vmware-sim --create-namespace \
|
||||
-f ./helm/vmware-api-simulator/values-ingress-example.yaml \
|
||||
--set certManager.email=you@example.com \
|
||||
--set ingress.hosts[0].host=vmware-sim.example.com \
|
||||
--set ingress.tls[0].hosts[0]=vmware-sim.example.com \
|
||||
--set secret.ticketSigningKey="$(openssl rand -hex 32)" \
|
||||
--set postgresql.auth.password="$(openssl rand -hex 16)"
|
||||
```
|
||||
|
||||
Point DNS for your host at the Ingress controller, wait for the Certificate to
|
||||
become Ready, then open `https://vmware-sim.example.com/`.
|
||||
|
||||
## Values overview
|
||||
|
||||
| Key | Default | Meaning |
|
||||
|---|---|---|
|
||||
| `image.repository` | `inecs/vmware-api-simulator` | Hub image |
|
||||
| `image.tag` | chart `appVersion` | Image tag |
|
||||
| `postgresql.enabled` | `true` | Bundle official PostgreSQL StatefulSet |
|
||||
| `secret.databaseUrl` / `externalDatabase.*` | | External DB when postgres disabled |
|
||||
| `ingress.enabled` | `false` | Expose via Ingress |
|
||||
| `certManager.enabled` | `false` | Annotate Ingress + optional ClusterIssuers |
|
||||
| `seed.enabled` | `false` | Post-install seed Job |
|
||||
|
||||
See [`values.yaml`](values.yaml) and [`values-ingress-example.yaml`](values-ingress-example.yaml).
|
||||
Reference in New Issue
Block a user