1. Docs
  2. @pulumi/terraform
  3. state

Module state

    Resources

    Others

    Resources

    Resource RemoteStateReference

    class RemoteStateReference extends CustomResource

    Manages a reference to a Terraform Remote State.. The root outputs of the remote state are available via the outputs property or the getOutput method.

    constructor

    new RemoteStateReference(name: string, args: RemoteStateReferenceArgs, opts?: pulumi.CustomResourceOptions)

    Create a RemoteStateReference resource with the given unique name, arguments, and options.

    • name The unique name of the remote state reference.
    • args The arguments to use to populate this resource's properties.
    • opts A bag of options that control this resource's behavior.

    method getOutput

    public getOutput(name: pulumi.Input<string>): pulumi.Output<any>

    Fetches the value of a root output from the Terraform Remote State.

    method getProvider

    getProvider(moduleMember: string): ProviderResource | undefined

    method isInstance

    static isInstance(obj: any): obj is CustomResource

    Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

    property id

    id: Output<ID>;

    id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

    property outputs

    public outputs: pulumi.Output<{[name: string]: any}>;

    The root outputs of the referenced Terraform state.

    property urn

    urn: Output<URN>;

    urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

    Others

    interface ArtifactoryRemoteStateReferenceArgs

    interface ArtifactoryRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Artifactory backend.

    property backendType

    backendType: "artifactory";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property password

    password?: pulumi.Input<string>;

    The password with which to authenticate to Artifactory. Sourced from ARTIFACTORY_PASSWORD in the environment, if unset.

    property repo

    repo: pulumi.Input<string>;

    The repository name.

    property subpath

    subpath: pulumi.Input<string>;

    Path within the repository.

    property url

    url?: pulumi.Input<string>;

    The Artifactory URL. Note that this is the base URL to artifactory, not the full repo and subpath. However, it must include the path to the artifactory installation - likely this will end in /artifactory. Sourced from ARTIFACTORY_URL in the environment, if unset.

    property username

    username?: pulumi.Input<string>;

    The username with which to authenticate to Artifactory. Sourced from ARTIFACTORY_USERNAME in the environment, if unset.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    type AzureEnvironment

    type AzureEnvironment = "public" | "china" | "german" | "stack" | "usgovernment";

    interface AzureRMRemoteStateReferenceArgs

    interface AzureRMRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the AzureRM backend.

    property accessKey

    accessKey?: pulumi.Input<string>;

    The Access Key used to access the blob storage account. Used when authenticating using an access key. Sourced from ARM_ACCESS_KEY in the environment, if unset.

    property backendType

    backendType: "azurerm";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property clientId

    clientId?: pulumi.Input<string>;

    The client ID of the service principal. Used when authenticating using a service principal. Sourced from ARM_CLIENT_ID in the environment, if unset.

    property clientSecret

    clientSecret?: pulumi.Input<string>;

    The client secret of the service principal. Used when authenticating using a service principal. Sourced from ARM_CLIENT_SECRET in the environment, if unset.

    property containerName

    containerName: pulumi.Input<string>;

    The name of the storage container within the storage account.

    property endpoint

    endpoint?: pulumi.Input<string>;

    The custom endpoint for Azure Resource Manager. Sourced from ARM_ENDPOINT, if unset.

    property environment

    environment?: pulumi.Input<AzureEnvironment>;

    The Azure environment which should be used. Possible values are public (default), china, german, stack and usgovernment. Sourced from ARM_ENVIRONMENT, if unset.

    property key

    key?: pulumi.Input<string>;

    The name of the blob in representing the Terraform State file inside the storage container.

    property msiEndpoint

    msiEndpoint?: pulumi.Input<string>;

    The path to a custom Managed Service Identity endpoint. Used when authenticating using the Managed Service Identity (MSI). Sourced from ARM_MSI_ENDPOINT in the environment, if unset. Automatically determined, if no value is provided.

    property resourceGroupName

    resourceGroupName?: pulumi.Input<string>;

    The name of the resource group in which the storage account exists. Used when authenticating using a service principal.

    property sasToken

    sasToken?: pulumi.Input<string>;

    The SAS Token used to access the Blob Storage Account. Used when authenticating using a SAS Token. Sourced from ARM_SAS_TOKEN in the environment, if unset.

    property storageAccountName

    storageAccountName: pulumi.Input<string>;

    The name of the storage account.

    property subscriptionId

    subscriptionId?: pulumi.Input<string>;

    The Subscription ID in which the Storage Account exists. Used when authenticating using the Managed Service Identity (MSI) or a service principal. Sourced from ARM_SUBSCRIPTION_ID, if unset.

    property tenantId

    tenantId?: pulumi.Input<string>;

    The Tenant ID in which the Subscription exists. Used when authenticating using the Managed Service Identity (MSI) or a service principal. Sourced from ARM_TENANT_ID, if unset.

    property useMsi

    useMsi?: pulumi.Input<boolean>;

    Whether to authenticate using Managed Service Identity (MSI). Sourced from ARM_USE_MSI if unset. Defaults to false if no value is specified.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface ConsulRemoteStateReferenceArgs

    interface ConsulRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Consul backend.

    property accessToken

    accessToken: pulumi.Input<string>;

    Consul Access Token. Sourced from CONSUL_HTTP_TOKEN in the environment, if unset.

    property address

    address?: pulumi.Input<string>;

    DNS name and port of the Consul HTTP endpoint specified in the format dnsname:port. Defaults to the local agent HTTP listener.

    property backendType

    backendType: "consul";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property caFile

    caFile?: pulumi.Input<string>;

    A path to a PEM-encoded certificate authority used to verify the remote agent’s certificate. Sourced from CONSUL_CAFILE in the environment, if unset.

    property certFile

    certFile?: pulumi.Input<string>;

    A path to a PEM-encoded certificate provided to the remote agent; requires use of key_file. Sourced from CONSUL_CLIENT_CERT in the environment, if unset.

    property datacenter

    datacenter?: pulumi.Input<string>;

    The datacenter to use. Defaults to that of the agent.

    property gzip

    gzip?: pulumi.Input<boolean>;

    Whether to compress the state data using gzip. Set to true to compress the state data using gzip, or false (default) to leave it uncompressed.

    property httpAuth

    httpAuth?: pulumi.Input<string>;

    HTTP Basic Authentication credentials to be used when communicating with Consul, in the format of either user or user:pass. Sourced from CONSUL_HTTP_AUTH, if unset.

    property keyFile

    keyFile?: pulumi.Input<string>;

    A path to a PEM-encoded private key, required if cert_file is specified. Sourced from CONSUL_CLIENT_KEY in the environment, if unset.

    property path

    path: pulumi.Input<string>;

    Path in the Consul KV store.

    property scheme

    scheme?: pulumi.Input<string>;

    Specifies which protocol to use when talking to the given address - either http or https. TLS support can also be enabled by setting the environment variable CONSUL_HTTP_SSL to true.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface EtcdV2RemoteStateReferenceArgs

    interface EtcdV2RemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the etcd v2 backend. Note that there is a separate configuration class for state stored in the ectd v3 backend.

    property backendType

    backendType: "etcd";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property endpoints

    endpoints: pulumi.Input<string>;

    A space-separated list of the etcd endpoints.

    property password

    password?: pulumi.Input<string>;

    The username with which to authenticate to etcd.

    property path

    path: pulumi.Input<string>;

    The path at which to store the state.

    property username

    username?: pulumi.Input<string>;

    The username with which to authenticate to etcd.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface EtcdV3RemoteStateReferenceArgs

    interface EtcdV3RemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the etcd v3 backend. Note that there is a separate configuration class for state stored in the ectd v2 backend.

    property backendType

    backendType: "etcdv3";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property cacertPath

    cacertPath?: pulumi.Input<string>;

    Path to a PEM-encoded certificate authority bundle with which to verify certificates of TLS-enabled etcd servers.

    property certPath

    certPath?: pulumi.Input<string>;

    Path to a PEM-encoded certificate to provide to etcd for client authentication.

    property endpoints

    endpoints: pulumi.Input<pulumi.Input<string>[]>;

    A list of the etcd endpoints.

    property keyPath

    keyPath?: pulumi.Input<string>;

    Path to a PEM-encoded key to use for client authentication.

    property password

    password?: pulumi.Input<string>;

    The username with which to authenticate to etcd. Sourced from ETCDV3_PASSWORD in the environment, if unset.

    property prefix

    prefix?: pulumi.Input<string>;

    An optional prefix to be added to keys when storing state in etcd.

    property username

    username?: pulumi.Input<string>;

    The username with which to authenticate to etcd. Sourced from ETCDV3_USERNAME in the environment, if unset.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface GCSRemoteStateReferenceArgs

    interface GCSRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Google Cloud Storage backend.

    property backendType

    backendType: "gcs";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property bucket

    bucket: pulumi.Input<string>;

    The name of the Google Cloud Storage bucket.

    property credentials

    credentials?: pulumi.Input<string>;

    Local path to Google Cloud Platform account credentials in JSON format. Sourced from GOOGLE_CREDENTIALS in the environment if unset. If no value is provided Google Application Default Credentials are used.

    property encryptionKey

    encryptionKey?: pulumi.Input<string>;

    A 32 byte, base64-encoded customer supplied encryption key used to encrypt the state. Sourced from GOOGLE_ENCRYPTION_KEY in the environment, if unset.

    property prefix

    prefix?: pulumi.Input<string>;

    Prefix used inside the Google Cloud Storage bucket. Named states for workspaces are stored in an object named <prefix>/<name>.tfstate.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface HttpRemoteStateReferenceArgs

    interface HttpRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the HTTP backend.

    property address

    address: pulumi.Input<string>;

    The address of the HTTP endpoint.

    property backendType

    backendType: "http";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property lockAddress

    lockAddress?: pulumi.Input<string>;

    The address of the lock REST endpoint. Not setting a value disables locking.

    property lockMethod

    lockMethod?: pulumi.Input<string>;

    The HTTP method to use when locking. Defaults to LOCK.

    property password

    password?: pulumi.Input<string>;

    The password used for HTTP basic authentication.

    property skipCertVerification

    skipCertVerification?: pulumi.Input<boolean>;

    Whether to skip TLS verification. Defaults to false.

    property unlockAddress

    unlockAddress?: pulumi.Input<string>;

    The address of the unlock REST endpoint. Not setting a value disables locking.

    property unlockMethod

    unlockMethod?: pulumi.Input<string>;

    The HTTP method to use when unlocking. Defaults to UNLOCK.

    property updateMethod

    updateMethod?: pulumi.Input<string>;

    HTTP method to use when updating state. Defaults to POST.

    property username

    username?: pulumi.Input<string>;

    The username used for HTTP basic authentication.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface LocalBackendRemoteStateReferenceArgs

    interface LocalBackendRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the local enhanced backend.

    property backendType

    backendType: "local";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property path

    path: pulumi.Input<string>;

    The path to the Terraform state file.

    interface MantaRemoteStateReferenceArgs

    interface MantaRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Manta backend.

    property account

    account: pulumi.Input<string>;

    The name of the Manta account. Sourced from SDC_ACCOUNT or _ACCOUNT in the environment, if unset.

    property backendType

    backendType: "manta";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property insecureSkipTlsVerify

    insecureSkipTlsVerify: pulumi.Input<boolean>;

    Skip verifying the TLS certificate presented by the Manta endpoint. This can be useful for installations which do not have a certificate signed by a trusted root CA. Defaults to false.

    property keyId

    keyId: pulumi.Input<string>;

    The fingerprint of the public key matching the key material specified in keyMaterial, or in the local SSH agent.

    property keyMaterial

    keyMaterial?: pulumi.Input<string>;

    The private key material corresponding with the SSH key whose fingerprint is specified in keyId. Sourced from SDC_KEY_MATERIAL or TRITON_KEY_MATERIAL in the environment, if unset. If no value is specified, the local SSH agent is used for signing requests.

    property path

    path: pulumi.Input<string>;

    The path relative to your private storage directory (/$MANTA_USER/stor) where the state file will be stored.

    property url

    url?: pulumi.Input<string>;

    The Manta API Endpoint. Sourced from MANTA_URL in the environment, if unset. Defaults to https://us-east.manta.joyent.com.

    property user

    user?: pulumi.Input<string>;

    The username of the Manta account with which to authenticate.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface PostgresRemoteStateReferenceArgs

    interface PostgresRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Postgres backend.

    property backendType

    backendType: "pg";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property connStr

    connStr: pulumi.Input<string>;

    Postgres connection string; a postgres:// URL

    property schemaName

    schemaName?: pulumi.Input<string>;

    Name of the automatically-managed Postgres schema. Defaults to terraform_remote_state.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    interface RemoteBackendRemoteStateReferenceArgs

    interface RemoteBackendRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the remote enhanced backend.

    property backendType

    backendType: "remote";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property hostname

    hostname?: pulumi.Input<string>;

    The remote backend hostname to which to connect. Defaults to app.terraform.io.

    property organization

    organization: pulumi.Input<string>;

    The name of the organization containing the targeted workspace(s).

    property token

    token?: pulumi.Input<string>;

    The token used to authenticate with the remote backend.

    property workspaces

    workspaces?: pulumi.Input<RemoteBackendWorkspaceConfig>;

    A block specifying which remote workspace(s) to use.

    interface RemoteBackendWorkspaceConfig

    interface RemoteBackendWorkspaceConfig

    Configuration options for a workspace for use with the remote enhanced backend.

    property name

    name?: pulumi.Input<string>;

    The full name of one remote workspace. When configured, only the default workspace can be used. This option conflicts with prefix.

    property prefix

    prefix?: pulumi.Input<string>;

    A prefix used in the names of one or more remote workspaces, all of which can be used with this configuration. If unset, only the default workspace can be used. This option conflicts with name.

    type RemoteStateReferenceArgs

    type RemoteStateReferenceArgs = ArtifactoryRemoteStateReferenceArgs | AzureRMRemoteStateReferenceArgs | ConsulRemoteStateReferenceArgs | EtcdV2RemoteStateReferenceArgs | EtcdV3RemoteStateReferenceArgs | GCSRemoteStateReferenceArgs | HttpRemoteStateReferenceArgs | LocalBackendRemoteStateReferenceArgs | MantaRemoteStateReferenceArgs | PostgresRemoteStateReferenceArgs | RemoteBackendRemoteStateReferenceArgs | S3RemoteStateReferenceArgs | SwiftRemoteStateReferenceArgs;

    The set of arguments for constructing a RemoteStateReference resource.

    interface S3RemoteStateReferenceArgs

    interface S3RemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the S3 backend.

    property accessKey

    accessKey?: pulumi.Input<string>;

    AWS Access Key. Sourced from the standard credentials pipeline, if unset.

    property backendType

    backendType: "s3";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property bucket

    bucket: pulumi.Input<string>;

    The name of the S3 bucket.

    property endpoint

    endpoint?: pulumi.Input<string>;

    A custom endpoint for the S3 API. Also sourced from AWS_S3_ENDPOINT in the environment, if unset.

    property externalId

    externalId?: pulumi.Input<string>;

    The external ID to use when assuming the IAM role.

    property iamEndpoint

    iamEndpoint?: pulumi.Input<string>;

    A custom endpoint for the IAM API. Sourced from AWS_IAM_ENDPOINT, if unset.

    property key

    key: pulumi.Input<string>;

    The path to the state file inside the bucket. When using a non-default workspace, the state path will be /workspace_key_prefix/workspace_name/key.

    property profile

    profile?: pulumi.Input<string>;

    The AWS profile name as set in the shared credentials file.

    property region

    region?: pulumi.Input<string>;

    The region of the S3 bucket. Also sourced from AWS_DEFAULT_REGION in the environment, if unset.

    property roleArn

    roleArn?: pulumi.Input<string>;

    The ARN of an IAM Role to be assumed in order to read the state from S3.

    property secretKey

    secretKey?: pulumi.Input<string>;

    AWS Secret Access Key. Sourced from the standard credentials pipeline, if unset.

    property sessionName

    sessionName?: pulumi.Input<string>;

    The session name to use when assuming the IAM role.

    property sharedCredentialsFile

    sharedCredentialsFile?: pulumi.Input<string>;

    The path to the shared credentials file. If this is not set and a profile is specified, ~/.aws/credentials will be used by default.

    property stsEndpoint

    stsEndpoint?: pulumi.Input<string>;

    A custom endpoint for the STS API. Sourced from AWS_STS_ENDPOINT, if unset.

    property token

    token?: pulumi.Input<string>;

    An MFA token. Sourced from the AWS_SESSION_TOKEN in the environment variable if needed and unset.

    property workspace

    workspace?: pulumi.Input<string>;

    The Terraform workspace from which to read state.

    property workspaceKeyPrefix

    workspaceKeyPrefix?: pulumi.Input<string>;

    The prefix applied to the state path inside the bucket. This is only relevant when using a non-default workspace, and defaults to env:.

    interface SwiftRemoteStateReferenceArgs

    interface SwiftRemoteStateReferenceArgs

    The configuration options for a Terraform Remote State stored in the Swift backend.

    property authUrl

    authUrl: pulumi.Input<string>;

    The Identity authentication URL. Sourced from OS_AUTH_URL in the environment, if unset.

    property backendType

    backendType: "swift";

    A constant describing the name of the Terraform backend, used as the discriminant for the union of backend configurations.

    property cacertFile

    cacertFile?: pulumi.Input<string>;

    A path to a CA root certificate for verifying the server TLS certificate. Sourced from OS_CACERT in the environment, if unset.

    property cert

    cert?: pulumi.Input<string>;

    A path to a client certificate for TLS client authentication. Sourced from OS_CERT in the environment, if unset.

    property container

    container: pulumi.Input<string>;

    The name of the container in which the Terraform state file is stored.

    property domainId

    domainId?: pulumi.Input<string>;

    The ID of the domain to scope the log in to (identity v3). Sourced from OS_USER_DOMAIN_ID, OS_PROJECT_DOMAIN_ID or OS_DOMAIN_ID in the environment, if unset.

    property domainName

    domainName?: pulumi.Input<string>;

    The name of the domain to scope the log in to (identity v3). Sourced from OS_USER_DOMAIN_NAME, OS_PROJECT_DOMAIN_NAME or OS_DOMAIN_NAME in the environment, if unset.

    property insecure

    insecure?: pulumi.Input<boolean>;

    Whether to disable verification of the server TLS certificate. Sourced from OS_INSECURE in the environment, if unset.

    property key

    key?: pulumi.Input<string>;

    A path to the private key corresponding to the client certificate for TLS client authentication. Sourced from OS_KEY in the environment, if unset.

    property password

    password?: pulumi.Input<string>;

    The password with which to log in. Sourced from OS_PASSWORD in the environment, if unset.

    property regionName

    regionName: pulumi.Input<string>;

    The region in which the state file is stored. Sourced from OS_REGION_NAME, if unset.

    property tenantId

    tenantId?: pulumi.Input<string>;

    The ID of the tenant (for identity v2) or project (identity v3) which which to log in. Sourced from OS_TENANT_ID or OS_PROJECT_ID in the environment, if unset.

    property tenantName

    tenantName?: pulumi.Input<string>;

    The name of the tenant (for identity v2) or project (identity v3) which which to log in. Sourced from OS_TENANT_NAME or OS_PROJECT_NAME in the environment, if unset.

    property token

    token?: pulumi.Input<string>;

    Access token with which to log in in stead of a username and password. Sourced from OS_AUTH_TOKEN in the environment, if unset.

    property userId

    userId?: pulumi.Input<string>;

    The user ID with which to log in. Sourced from OS_USER_ID in the environment, if unset.

    property userName

    userName?: pulumi.Input<string>;

    The username with which to log in. Sourced from OS_USERNAME in the environment, if unset.

      Pulumi AI - What cloud infrastructure would you like to build? Generate Program