{ "provider": { "name": "binarylane" }, "resources": [ { "name": "server", "schema": { "attributes": [ { "name": "backups", "bool": { "computed_optional_required": "computed_optional", "description": "If true this will enable two daily backups for the server. `options.daily_backups` will override this value if provided. Setting this to false has no effect.\n" } }, { "name": "image", "string": { "computed_optional_required": "required", "description": "The slug of the selected operating system." } }, { "name": "name", "string": { "computed_optional_required": "computed_optional", "description": "The hostname of your server, such as vps01.yourcompany.com. If not provided, the server will be created with a random name." } }, { "name": "password", "string": { "computed_optional_required": "computed_optional", "description": "If this is provided the specified or default remote user's account password will be set to this value. Only valid if the server supports password change actions (check server.password_change_supported via the servers endpoint). If omitted and the server supports password change actions a random password will be generated and emailed to the account email address.\n" } }, { "name": "region", "string": { "computed_optional_required": "required", "description": "The slug of the selected region.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } }, { "name": "size", "string": { "computed_optional_required": "required", "description": "The slug of the selected size.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } }, { "name": "user_data", "string": { "computed_optional_required": "computed_optional", "description": "If provided this will be used to initialise the new server. This must be left null if the Image does not support UserData, see DistributionInfo.Features for more information.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtMost(65536)" } } ] } }, { "name": "vpc_id", "int64": { "computed_optional_required": "computed_optional", "description": "Leave null to use default (public) network for the selected region." } }, { "name": "id", "int64": { "computed_optional_required": "computed_optional", "description": "The ID of the server to fetch." } } ] } }, { "name": "ssh_key", "schema": { "attributes": [ { "name": "default", "bool": { "computed_optional_required": "computed_optional", "description": "Optional: If true this will be added to all new server installations (if we support SSH Key injection for the server's operating system)." } }, { "name": "name", "string": { "computed_optional_required": "required", "description": "A name to help you identify the key.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } }, { "name": "public_key", "string": { "computed_optional_required": "required", "description": "The public key in OpenSSH \"authorized_keys\" format.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } }, { "name": "id", "int64": { "computed_optional_required": "computed_optional", "description": "The ID or fingerprint of the SSH Key to fetch." } } ] } }, { "name": "vpc", "schema": { "attributes": [ { "name": "ip_range", "string": { "computed_optional_required": "computed_optional", "description": "A private address range that you select during creation, such as the default value of 10.240.0.0/16. Because the virtual network is dedicated to your use, you may use whatever IP address range you like." } }, { "name": "name", "string": { "computed_optional_required": "required", "description": "A name to help identify this VPC.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthBetween(0, 250)" } } ] } }, { "name": "id", "int64": { "computed_optional_required": "computed_optional", "description": "The target vpc id." } } ] } }, { "name": "vpc_route_entries", "schema": { "attributes": [ { "name": "route_entries", "list_nested": { "computed_optional_required": "computed_optional", "nested_object": { "attributes": [ { "name": "description", "string": { "computed_optional_required": "computed_optional", "description": "An optional description for the route.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtMost(250)" } } ] } }, { "name": "destination", "string": { "computed_optional_required": "required", "description": "The destination address for this route entry. This may be in CIDR format.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } }, { "name": "router", "string": { "computed_optional_required": "required", "description": "The server that will receive traffic sent to the destination property in this VPC.", "validators": [ { "custom": { "imports": [ { "path": "github.com/hashicorp/terraform-plugin-framework-validators/stringvalidator" } ], "schema_definition": "stringvalidator.LengthAtLeast(1)" } } ] } } ] }, "description": "Submit null to leave unaltered, submit an empty list to clear all route entries. It is not possible to PATCH individual route entries, to alter a route entry submit the entire list of route entries you wish to save." } }, { "name": "vpc_id", "int64": { "computed_optional_required": "computed_optional", "description": "The target vpc id." } } ] } } ], "version": "0.1" }