f8d3cbdd59
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.
32 lines
1.3 KiB
Markdown
32 lines
1.3 KiB
Markdown
**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.
|