Documentation
¶
Index ¶
- type ArtifactoryArgs
- type AzureRMArgs
- type ConsulArgs
- type EtcdV2StateArgs
- type EtcdV3StateArgs
- type GcsStateArgs
- type HttpStateArgs
- type LocalStateArgs
- type MantaStateArgs
- type OssArgs
- type PostgresStateArgs
- type RemoteBackendStateArgs
- type RemoteStateReference
- type RemoteStateReferenceArgs
- type S3Args
- type SwiftStateArgs
- type WorkspaceStateArgs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArtifactoryArgs ¶
type ArtifactoryArgs struct { // Username is the username to authenticate to Artifactory with. // Sourced from `ARTIFACTORY_USERNAME` environment var if unset. Username pulumi.StringPtrInput // Password is the password to authenticate to Artifactory with. // Sourced from `ARTIFACTORY_PASSWORD` environment var if unset. Password pulumi.StringPtrInput // Url 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. Url pulumi.StringPtrInput // Repo is the repository name Repo pulumi.StringInput // Subpath is the path within the repository Subpath pulumi.StringInput // Workspace is the terraform workspace from which to read state Workspace pulumi.StringPtrInput }
ArtifactoryArgs specifies the configuration options for a Terraform Remote State stored in the Artifactory backend
type AzureRMArgs ¶
type AzureRMArgs struct { // StorageAccountName is the name of the storage account StorageAccountName pulumi.StringInput // ContainerName is the name of the container within the storage account ContainerName pulumi.StringInput // Key is the name of the blob in representing the Terraform State file inside the storage container. Key pulumi.StringPtrInput // Environment is the Azure environment. Possible values are `public` (default), `china`, // `german`, `stack` and `usgovernment`. Sourced from `ARM_ENVIRONMENT`, if unset. Environment pulumi.StringPtrInput // Endpoint is custom endpoint for Azure Resource Manager. Sourced from `ARM_ENDPOINT`, if unset. Endpoint pulumi.StringPtrInput // UseMSI is whether to authenticate using Managed Service Identity (MSI). Sourced from `ARM_USE_MSI` // if unset. Defaults to `false` if no value is specified. UseMSI pulumi.BoolPtrInput // SubscriptionID is 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 SubscriptionID pulumi.StringPtrInput // TenantID is 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. TenantID pulumi.StringPtrInput // MSIEndpoint is 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. MSIEndpoint pulumi.StringPtrInput // SasToken is 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. SasToken pulumi.StringPtrInput // AccessKey is 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. AccessKey pulumi.StringPtrInput // ResourceGroupName is the name of the resource group in which the storage account exists. Used when // authenticating using a service principal. ResourceGroupName pulumi.StringPtrInput // ClientID is client ID of the service principal. Used when authenticating using a service principal. // Sourced from `ARM_CLIENT_ID` in the environment, if unset. ClientID pulumi.StringPtrInput // ClientSecret is client secret of the service principal. Used when authenticating using a service principal. // Sourced from `ARM_CLIENT_SECRET` in the environment, if unset. ClientSecret pulumi.StringPtrInput // Workspace os the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
AzureRMArgs specifies the configuration options for a Terraform Remote State stored in the AzureRM backend
type ConsulArgs ¶
type ConsulArgs struct { // Path is the path in the Consul KV store Path pulumi.StringInput // AccessToken is the Consul Access Token. Sourced from `CONSUL_HTTP_TOKEN` in the environment, if unset. AccessToken pulumi.StringInput // Address is the DNS name and port of the Consul HTTP endpoint specified in the format `dnsname:port`. Defaults // to the local agent HTTP listener. Address pulumi.StringPtrInput // Scheme 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`. Schema pulumi.StringPtrInput // Datacenter is the datacenter to use. Defaults to that of the agent. Datacenter pulumi.StringPtrInput // HttpAuth is the 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. HttpAuth pulumi.StringPtrInput // Gzip is 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. Gzip pulumi.BoolPtrInput // CAFile is the path to a PEM-encoded certificate authority used to verify the remote agent's certificate. // Sourced from `CONSUL_CAFILE` in the environment, if unset. CAFile pulumi.StringPtrInput // CertFile is the 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. CertFile pulumi.StringPtrInput // KeyFile is the path to a PEM-encoded private key, required if cert_file is specified. Sourced from // `CONSUL_CLIENT_KEY` in the environment, if unset. KeyFile pulumi.StringPtrInput // Workspace os the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
ConsulArgs specifies the configuration options for a Terraform Remote State stored in the Consul backend
type EtcdV2StateArgs ¶
type EtcdV2StateArgs struct { // Path at which to store the state. Path pulumi.StringInput // Endpoints is a space-separated list of the etcd endpoints. Endpoints pulumi.StringInput // Username is the username with which to authenticate to etcd. Username pulumi.StringPtrInput // Password is the password with which to authenticate to etcd. Password pulumi.StringPtrInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
EtcdV2StateArgs specifies the configuration options for a Terraform Remote State stored in the etcd v2 backend. Please not there is a separate func for the Etcd v2 backend
type EtcdV3StateArgs ¶
type EtcdV3StateArgs struct { // Path at which to store the state. Path pulumi.StringInput // Endpoints is a list of the etcd endpoints. Endpoints pulumi.StringArrayInput // Username is the username with which to authenticate to etcd. Sourced from `ETCDV3_USERNAME` env var if unset. Username pulumi.StringPtrInput // Password is the password with which to authenticate to etcd. Sourced from `ETCDV3_PASSWORD` env var if unset. Password pulumi.StringPtrInput // Prefix is an optional prefix to be added to keys when storing state in etcd. Prefix pulumi.StringPtrInput // CACertPath is the path to a PEM-encoded certificate authority bundle with which to verify certificates // of TLS-enabled etcd servers. CACertPath pulumi.StringPtrInput // CertPath is the path to a PEM-encoded certificate to provide to etcd for client authentication. CertPath pulumi.StringPtrInput // KeyPath is the path to a PEM-encoded key to use for client authentication. KeyPath pulumi.StringPtrInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
EtcdV3StateArgs specifies the configuration options for a Terraform Remote State stored in the etcd v3 backend. Please not there is a separate func for the Etcd v3 backend
type GcsStateArgs ¶
type GcsStateArgs struct { // Bucket is the name of the Google Cloud Storage bucket. Bucket pulumi.StringInput // Credentials is the 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. Credentials pulumi.StringPtrInput // Prefix is the prefix used inside the Google Cloud Storage bucket. Named states for workspaces // are stored in an object named `<prefix>/<name>.tfstate`. Prefix pulumi.StringPtrInput // EncryptionKey is a 32 byte, base64-encoded customer supplied encryption key used to encrypt the // state. Sourced from `GOOGLE_ENCRYPTION_KEY` in the environment, if unset. EncryptionKey pulumi.StringPtrInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
GcsStateArgs specifies the configuration options for a Terraform Remote State stored in the Google Cloud Storage backend.
type HttpStateArgs ¶
type HttpStateArgs struct { // Address is the address of the HTTP endpoint. Address pulumi.StringInput // UpdateMethod is the HTTP method to use when updating state. Defaults to `POST`. UpdateMethod pulumi.StringPtrInput // LockAddress is the address of the lock REST endpoint. Not setting a value disables locking. LockAddress pulumi.StringPtrInput // LockMethod is the HTTP method to use when locking. Defaults to `LOCK`. LockMethod pulumi.StringPtrInput // UnlockAddress is the address of the unlock REST endpoint. Not setting a value disables locking. UnlockAddress pulumi.StringPtrInput // LockMethod is the HTTP method to use when unlocking. Defaults to `LOCK`. UnlockMethod pulumi.StringPtrInput // Username is the username used for HTTP basic authentication. Username pulumi.StringPtrInput // Password is the password used for HTTP basic authentication. Password pulumi.StringPtrInput // SkipCertVerification is whether to skip TLS verification. Defaults to `false`. SkipCertVerification pulumi.BoolPtrInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
HttpStateArgs specifies the configuration options for a Terraform Remote State stored in the HTTP backend.
type LocalStateArgs ¶
type LocalStateArgs struct { // Path to the Terraform state file Path pulumi.StringInput }
LocalStateArgs specifies the configuration options for a Terraform Remote State stored in the local enhanced backend
type MantaStateArgs ¶
type MantaStateArgs struct { // Account is the name of the Manta account. Sourced from `SDC_ACCOUNT` or `_ACCOUNT` in the environment, if unset. Account pulumi.StringInput // User is the username of the Manta account with which to authenticate. User pulumi.StringPtrInput // Url is the Manta API Endpoint. Sourced from `MANTA_URL` in the environment, if unset. // Defaults to `https://us-east.manta.joyent.com`. Url pulumi.StringPtrInput // KeyMaterial is 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. KeyMaterial pulumi.StringPtrInput // KeyID is the fingerprint of the public key matching the key material specified in // keyMaterial, or in the local SSH agent. KeyID pulumi.StringInput // Path is the path relative to your private storage directory (`/$MANTA_USER/stor`) // where the state file will be stored. Path pulumi.StringInput // InsecureSkipTlsVerify is whether to 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. InsecureSkipTlsVerify pulumi.BoolInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
MantaStateArgs specifies the configuration options for a Terraform Remote State stored in the Postgres backend.
type OssArgs ¶
type OssArgs struct { // Bucket is the name of the OSS bucket. Bucket pulumi.StringInput // AccessKey is the Alibaba Cloud access key. It supports environment variables `ALICLOUD_ACCESS_KEY` and // `ALICLOUD_ACCESS_KEY_ID` AccessKey pulumi.StringPtrInput // SecurityKey is the Alibaba Cloud secret access key. It supports environment variables `ALICLOUD_SECRET_KEY` // and `ALICLOUD_ACCESS_KEY_SECRET`. SecretKey pulumi.StringPtrInput // SecurityToken is the STS access token. It supports environment variable `ALICLOUD_SECURITY_TOKEN`. SecurityToken pulumi.StringPtrInput // EcsRoleName is the RAM Role Name attached on a ECS instance for API operations. You can retrieve this from the // 'Access Control' section of the Alibaba Cloud console. EcsRoleName pulumi.StringPtrInput // Region is the region of the OSS bucket. It supports environment variables `ALICLOUD_REGION` and //`ALICLOUD_DEFAULT_REGION`. Region pulumi.StringPtrInput // Endpoint is a custom endpoint for the OSS API. It supports environment variables `ALICLOUD_OSS_ENDPOINT` // and `OSS_ENDPOINT`. Endpoint pulumi.StringPtrInput // Prefix is the path directory of the state file will be stored. Default to `env:`. Prefix pulumi.StringPtrInput // Key is the name of the state file. Defaults to `terraform.tfstate`. Key pulumi.StringPtrInput // Profile is the Alibaba Cloud profile name as set in the shared credentials file. It can also be sourced from // the `ALICLOUD_PROFILE` environment variable. Profile pulumi.StringPtrInput // `ALICLOUD_SHARED_CREDENTIALS_FILE` environment variable. If this is not set and a profile is // specified, `~/.aliyun/config.json` will be used. SharedCredentialsFile pulumi.StringPtrInput // RoleArn is the ARN of the role to assume. If ARN is set to an empty string, it does not perform role switching. RoleArn pulumi.StringPtrInput // Policy is a more restrictive policy to apply to the temporary credentials. This gives you a way to further // restrict the permissions for the resulting temporary security credentials. You cannot use this policy to grant // permissions which exceed those of the role that is being assumed. Policy pulumi.StringPtrInput // SessionName is the session name to use when assuming the role. It supports environment variable // `ALICLOUD_ASSUME_ROLE_SESSION_NAME` SessonName pulumi.StringPtrInput // SessionExpiration is the time after which the established session for assuming role expires. Valid value range: // [900-3600] seconds. Default to `3600`. It supports environment variable `ALICLOUD_ASSUME_ROLE_SESSION_EXPIRATION` SessionExpiration pulumi.StringPtrInput }
OssArgs specifies the configuration options for a Terraform Remote State stored in the Oss backend
type PostgresStateArgs ¶
type PostgresStateArgs struct { // Bucket is the Postgres connection string; a `postgres://` URL. ConnStr pulumi.StringInput // SchemaName is the name of the automatically-managed Postgres schema. Defaults to `terraform_remote_state`. SchemaName pulumi.StringPtrInput // Workspace is the Terraform workspace from which to read state. Workspace pulumi.StringPtrInput }
PostgresStateArgs specifies the configuration options for a Terraform Remote State stored in the Postgres backend.
type RemoteBackendStateArgs ¶
type RemoteBackendStateArgs struct { // Organization is the name of the organization containing the targeted workspace(s). Organization pulumi.StringInput // Hostname is the remote backend hostname to which to connect. Defaults to `app.terraform.io`. Hostname pulumi.StringPtrInput // Token is the token used to authenticate with the remote backend. Token pulumi.StringPtrInput // Workspace is a struct specifying which remote workspace(s) to use. Workspaces WorkspaceStateArgs }
RemoteBackendStateArgs specifies the configuration options for a Terraform Remote State stored in the remote backend.
type RemoteStateReference ¶
type RemoteStateReference struct { pulumi.CustomResourceState // Outputs is a map of the outputs from the Terraform state file Outputs pulumi.MapOutput `pulumi:"outputs"` }
RemoteStateReference is a resource which allows reading the output from local or remote Terraform state files
func NewRemoteStateReference ¶
func NewRemoteStateReference(ctx *pulumi.Context, name string, args RemoteStateReferenceArgs, opts ...pulumi.ResourceOption) (*RemoteStateReference, error)
NewRemoteStateReference manages a reference to a Terraform Remote State. The root outputs of the remote state are available via the `Outputs` property
type RemoteStateReferenceArgs ¶
type RemoteStateReferenceArgs interface {
// contains filtered or unexported methods
}
RemoteStateReferenceArgs is an interface implemented by all valid backend type Arg structs
type S3Args ¶
type S3Args struct { // Bucket is the name of the S3 Bucket Bucket pulumi.StringInput // Key is the path to the statefile inside the bucket When using a non-default // workspace, the statepath will be `/workspace_key_prefix/workspace_name/key`. Key pulumi.StringInput // Regions of the S3 bucket. Sourced from `AWS_DEFAULT_REGION` environment var if unset. Region pulumi.StringPtrInput // Endpoint is a custom endpoint for the S3 API. // Sourced from `AWS_S3_ENDPOINT` environment var if unset. Endpoint pulumi.StringPtrInput // AccessKey is AWS Access Key ID. Sourced from the standard credentials pipeline if unset. AccessKey pulumi.StringPtrInput // SecretKey is AWS Secret Access Key. Sourced from the standard credentials pipeline if unset. SecretKey pulumi.StringPtrInput // Profile is AWS Profile name as set in the shared credentials file. Profile pulumi.StringPtrInput // specified, `~/.aws/credentials` will be used by default. SharedCredentialsFile pulumi.StringPtrInput // Token is a MFA token. Sourced from `AWS_SESSION_TOKEN` environment var if unset. Token pulumi.StringPtrInput // RoleArn is an IAM Role ARN to be assumed in order to read the state from S3. RoleArn pulumi.StringPtrInput // ExternalID is the external ID to use when assuming the IAM Role ExternalID pulumi.StringPtrInput // SessionName is the session name to use when assuming the IAM Role SessonName pulumi.StringPtrInput // WorkspaceKeyPrefix is the prefix applied to the state path inside the bucket. This is only // relevant when using a non-default workspace and defaults to `env:`. WorkspaceKeyPrefix pulumi.StringPtrInput // IAMEndpoint is a custom endpoint for the IAM API. Sources from `AWS_IAM_ENDPOINT` if unset. IAMEndpoint pulumi.StringPtrInput // STSEndpoint is a custom endpoint for the STS API. Sources from `AWS_STS_ENDPOINT` if unset. STSEndpoint pulumi.StringPtrInput // SkipRegionValidation skips static validation of region name. SkipRegionValidation pulumi.BoolPtrInput // SkipCredentialsValidation skips the credentials validation via STS API. SkipCredentialsValidation pulumi.BoolPtrInput // SkipMetadataApiCheck skips the AWS Metadata API check. SkipMetadataApiCheck pulumi.BoolPtrInput // ForcePathStyle forces s3 to use path style api. ForcePathStyle pulumi.BoolPtrInput // Workspace is the Terraform workspace from which to read state Workspace pulumi.StringPtrInput }
S3Args specifies the configuration options for a Terraform Remote State stored in the S3 backend
type SwiftStateArgs ¶
type SwiftStateArgs struct { // AuthUrl is the Identity authentication URL. Sourced from `OS_AUTH_URL` in the environment, if unset. AuthUrl pulumi.StringInput // Container is the name of the container in which the Terraform state file is stored. Container pulumi.StringInput // UserName is the username with which to log in. Sourced from `OS_USERNAME` in the environment, if unset UserName pulumi.StringPtrInput // UserID is the user ID with which to log in. Sourced from `OS_USER_ID` in the environment, if unset UserID pulumi.StringPtrInput // Password is the password with which to log in. Sourced from `OS_PASSWORD` in the environment, if unset Password pulumi.StringPtrInput // Token is the access token with which to log in in stead of a username and password. Sourced from // `OS_AUTH_TOKEN` in the environment, if unset. Token pulumi.StringPtrInput // RegionName is the region in which the state file is stored. Sourced from `OS_REGION_NAME`, if unset RegionName pulumi.StringInput // TenantID is 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. TenantID pulumi.StringPtrInput // TenantName is 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. TenantName pulumi.StringPtrInput // DomainName is 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. DomainName pulumi.StringPtrInput // DomainID is 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. DomainID pulumi.StringPtrInput // Insecure is whether to disable verification of the server TLS certificate. Sourced from // `OS_INSECURE` in the environment, if unset. Insecure pulumi.BoolPtrInput // CACertFile is the path to a CA root certificate for verifying the server TLS certificate. Sourced from // `OS_CACERT` in the environment, if unset. CACertFile pulumi.StringPtrInput // Cert is the path to a client certificate for TLS client authentication. Sourced from `OS_CERT` // in the environment, if unset. Cert pulumi.StringPtrInput // Key is the path to the private key corresponding to the client certificate for TLS client // authentication. Sourced from `OS_KEY` in the environment, if unset. Key pulumi.StringPtrInput }
SwiftStateArgs specifies the configuration options for a Terraform Remote State stored in the swift backend.
type WorkspaceStateArgs ¶
type WorkspaceStateArgs struct { // Name is the full name of one remote workspace. When configured, only the default workspace // can be used. This option conflicts with prefix. Name pulumi.StringPtrInput // Prefix is the 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 Prefix pulumi.StringPtrInput }
WorkspaceStateArgs specifies the configuration options for a workspace for use with the remote enhanced backend.