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.
54 lines
1.4 KiB
Markdown
54 lines
1.4 KiB
Markdown
**Language / Язык:** [English](overview.md) | [Русский](../ru/examples/overview.md)
|
|
|
|
# Client examples overview
|
|
|
|
## Bring-up checklist
|
|
|
|
```bash
|
|
make up
|
|
curl -skf https://localhost/health/ready
|
|
make seed
|
|
curl -sk https://localhost/api/appliance/system/version
|
|
```
|
|
|
|
## Endpoints
|
|
|
|
| URL | When |
|
|
|---|---|
|
|
| `https://localhost` | curl, pyvmomi, govmomi, Terraform, Pulumi, Ansible, Go, Java, Perl — everything in `examples/` |
|
|
| `http://localhost` | Plain-HTTP lab face (no TLS handshake needed) |
|
|
|
|
## Auth quick reference
|
|
|
|
**Session (REST)**
|
|
|
|
```bash
|
|
SID=$(curl -sk -u 'administrator@vsphere.local:VMware1!' \
|
|
-X POST https://localhost/api/session | tr -d '"')
|
|
curl -sk -H "vmware-api-session-id: $SID" https://localhost/api/vcenter/vm
|
|
```
|
|
|
|
**SOAP Login**
|
|
|
|
```bash
|
|
python examples/python/vsphere_soap_smoke.py https://localhost
|
|
```
|
|
|
|
## Task waiting
|
|
|
|
Never treat the mutation HTTP response alone as "VM running". Power, clone,
|
|
relocate, snapshot, and OVF-deploy calls return `{ "task": "task-…" }`; poll
|
|
`GET /api/cis/tasks/{task}` until `status` is `SUCCEEDED` or `FAILED`. See
|
|
[Tasks](../domains/tasks.md).
|
|
|
|
## Reseed warning
|
|
|
|
`make seed` replaces the PostgreSQL inventory. Refresh Terraform/Pulumi/Ansible
|
|
state afterwards — see [Seed profiles](../seed-profiles.md).
|
|
|
|
## Runnable tree
|
|
|
|
See [`examples/README.md`](../../examples/README.md). The official
|
|
`pulumi-vsphere` lab suite lives under
|
|
[`pulumi-tests/`](../../pulumi-tests/README.md) (`make pulumi-tests`).
|