Overview
Declare instances, volumes, SSH keys, firewalls, floating IPs, and backup
policies as infrastructure. The provider binary is
terraform-provider-platform. One binary serves Terraform
and OpenTofu — they share the plugin protocol.
The schema follows proto platform.v1. CRUD goes through the Go SDK.
Resources
Section titled “Resources”These are the only resources the provider implements. Do not invent others.
| Resource | Page |
|---|---|
platform_instance | Instance |
platform_volume | Volume |
platform_ssh_key | SSH key |
platform_firewall | Firewall |
platform_floating_ip | Floating IP |
platform_backup_policy | Backup policy |
There are no data sources.
Provider
Section titled “Provider”terraform { required_providers { platform = { source = "cloud/platform" } }}
provider "platform" { endpoint = "127.0.0.1:9090" token = var.platform_token app = "app_default"}| Argument | Required | Default |
|---|---|---|
endpoint | no | PLATFORM_GRPC, then 127.0.0.1:9090 |
token | no | PLATFORM_TOKEN |
app | no | PLATFORM_APP, then app_default |
token is sensitive. Dev connections are unencrypted (WithInsecure in the
provider). Do not point that default at a public host.
Install the binary, then apply a resource page example.