Terraform provider for managing Fabric API objects via standard Terraform workflows.
- Docker-based usage (recommended for most users): runs Terraform + provider inside a container.
SeeREADME.docker.md. - Local install (Make-based): builds and installs the provider into your local Terraform plugin dir.
SeeREADME.make.md.
- Tenants (
fabricapi_tenant): create/read/delete - Tenant servers (
fabricapi_tenant_servers): allocate/deallocate whole GPU servers (PATCH tenant) - Per-GPU allocations (
fabricapi_gpu_allocations): map/unmap logical GPUs (G0–G7) on servers already attached to a tenant (POST.../gpuAllocations) - VF assign (
fabricapi_vf_assign): bind/unbind HBN VF interfaces to a tenant VLAN (POST/DELETE.../vf-interfaces/{vfId}/assign) - VPC peering (
fabricapi_vpcpeering): create
- Tenants (
fabricapi_tenants): list tenant names for a fabric - Available servers (
fabricapi_available_servers): list free GPU server hostnames (GET.../available_servers) - VF interfaces (
fabricapi_vf_interfaces): list HBN VF interfaces for a GPU server (GET.../vf-interfaces)
-
Decoupled roots (recommended):
examples/decoupled/01-tenant: tenant lifecycle02-servers: whole-server GPU allocation/deallocation03-vpcpeering: VPC peering04-gpu-allocations: per-GPU allocation/deallocation on shared servers05-available-servers: lookup free servers before allocate (read-only)06-vf-interfaces: lookup HBN VF interfaces on a server (read-only)07-vf-assign: bind/unbind a VF to a tenant VLAN
-
State files: each root keeps its own state; use one consistent
tenant_nameacross those commands for the same tenant, new state filenames for a different tenant, and follow the guides for VPC peering cleanup. See How state files relate to tenants inREADME.docker.mdorREADME.make.md.
Start here for exact commands: examples/decoupled/README.md.
This repository's version follows Semantic Versioning (SemVer) (MAJOR.MINOR.PATCH) and is maintained independently of AVIZ ONES Spectrum-X platform releases — a version bump here does not imply a corresponding change in the ONES platform version, and vice versa.
- MAJOR: Incremented for breaking, backward-incompatible changes (e.g., 2.0.0)
- MINOR: Incremented when adding new, backward-compatible features or functionality (e.g., 2.1.0)
- PATCH: Incremented for backward-compatible bug fixes and small corrections (e.g., 2.1.1)
| Terraform-provider-fabricapi | Supported ONES Version |
|---|---|
| v1.1.0 | 4.2.1 |
- Docker guide:
README.docker.md - Make/local guide:
README.make.md - Reusable identity file:
examples/fabric-identity.md - Contributing / development:
CONTRIBUTING.md