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,31 @@
|
||||
**Language / Язык:** [English](pulumi.md) | [Русский](../ru/examples/pulumi.md)
|
||||
|
||||
# Pulumi
|
||||
|
||||
[`examples/pulumi/`](../../examples/pulumi/) is a Python Pulumi program that uses
|
||||
the official [`pulumi-vsphere`](https://www.pulumi.com/registry/packages/vsphere/)
|
||||
provider (SOAP/VIM) against the simulator — the same provider path as Terraform
|
||||
`hashicorp/vsphere`.
|
||||
|
||||
```bash
|
||||
cd examples/pulumi
|
||||
pip install -r requirements.txt
|
||||
pulumi plugin install resource vsphere 4.17.0
|
||||
pulumi stack init dev # once
|
||||
pulumi config set server localhost # or your gateway host
|
||||
pulumi config set --secret password 'VMware1!'
|
||||
pulumi up
|
||||
```
|
||||
|
||||
Configuration (`pulumi config set`): `server` (default `localhost`), `user`
|
||||
(default `administrator@vsphere.local`), `password` (secret), `datacenter`,
|
||||
`datastore`, `cluster`, `network`, `vm_name` (default `pulumi-lab-01`).
|
||||
|
||||
Same reseed caution as Terraform: simulator PostgreSQL state and Pulumi state
|
||||
are independent. Pin the catalog major for reproducible CI if your workflow
|
||||
depends on Web UI/evidence output (see [API versions](../api-versions.md)) —
|
||||
runtime routes themselves are always available regardless of the major.
|
||||
|
||||
For the lab suite (inventory + folder + VM + tags, nonempty output checks, HTML
|
||||
report), see [`pulumi-tests/`](../../pulumi-tests/README.md) or run
|
||||
`make pulumi-tests` from the repo root.
|
||||
Reference in New Issue
Block a user