streamtime_cloud_account (Resource)

A cloud account Streamtime uses to create fleets and networks in your cloud.

Example Usage

resource "streamtime_cloud_account" "aws" {
  identifier     = "aws-prod"
  cloud_provider = "aws"

  configuration = jsonencode({
    aws_access_key    = var.aws_access_key
    aws_access_secret = var.aws_access_secret
  })
}

variable "aws_access_key" {
  type = string
}

variable "aws_access_secret" {
  type      = string
  sensitive = true
}

Schema

Required

  • cloud_provider (String) The cloud: aws, azure, gcp, oci, digitalocean or civo. Change configuration to that cloud’s credentials in the same apply.
  • configuration (String, Sensitive) The account’s credentials as a JSON object, set with jsonencode(). aws: aws_access_key, aws_access_secret (optional aws_session_token). azure: subscription_id, tenant_id, client_id, client_secret. gcp: service_account_key (the key file’s JSON as a string). oci: tenancy_ocid, user_ocid, fingerprint, private_key (optional identity_domain_ocid). digitalocean: digitalocean_token. civo: civo_api_token. Terraform keeps the value you set and does not read credentials back, so a change made outside Terraform is not detected.
  • identifier (String) Unique name of the cloud account: up to 24 lowercase letters, digits and dashes. Changing it creates a new cloud account.

Read-Only

  • id (String) Same as identifier. Use the identifier to import.

Import

Import is supported using the following syntax:

The terraform import command can be used, for example:

# Import by identifier. Credentials are not read back from Streamtime, so set
# `configuration` in your configuration and apply to write it.
terraform import streamtime_cloud_account.aws aws-prod