Difference between revisions of "Terraform data source: terraform remote state"
Jump to navigation
Jump to search
m (Welcome moved page Terraform remote state to Terraform data source: terraform remote state) |
|||
(20 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | + | <code>terraform_remote_state</code> | |
− | + | * https://developer.hashicorp.com/terraform/language/state/remote-state-data | |
− | *<code>[[Controlled Remote State Access]] feature in [[Terraform Cloud]] and Terraform Enterprise, users now have a new way to establish granular controls for state accessibility.</code> | + | * <code>[[Controlled Remote State Access]] feature in [[Terraform Cloud]] and Terraform Enterprise, users now have a new way to establish granular controls for state accessibility.</code> |
+ | == Example Usage (remote Backend) == | ||
+ | |||
+ | data "terraform_remote_state" "vpc" { | ||
+ | [[backend]] = "remote" | ||
+ | |||
+ | config = { | ||
+ | organization = "hashicorp" | ||
+ | workspaces = { | ||
+ | name = "vpc-prod" | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | |||
+ | # Terraform >= 0.12 | ||
+ | resource "aws_instance" "foo" { | ||
+ | # ... | ||
+ | subnet_id = data.terraform_remote_state.vpc.outputs.subnet_id | ||
+ | } | ||
+ | |||
+ | # Terraform <= 0.11 | ||
+ | resource "aws_instance" "foo" { | ||
+ | # ... | ||
+ | subnet_id = "${data.terraform_remote_state.vpc.subnet_id}" | ||
+ | } | ||
+ | |||
+ | == Example Usage (local Backend)== | ||
+ | |||
+ | <pre> | ||
+ | data "terraform_remote_state" "vpc" { | ||
+ | backend = "local" | ||
+ | |||
+ | config = { | ||
+ | path = "..." | ||
+ | } | ||
+ | } | ||
+ | |||
+ | # Terraform >= 0.12 | ||
+ | resource "aws_instance" "foo" { | ||
+ | # ... | ||
+ | subnet_id = data.terraform_remote_state.vpc.outputs.subnet_id | ||
+ | } | ||
+ | |||
+ | # Terraform <= 0.11 | ||
+ | resource "aws_instance" "foo" { | ||
+ | # ... | ||
+ | subnet_id = "${data.terraform_remote_state.vpc.subnet_id}" | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | == Errors == | ||
+ | * <code>[[Error: AccessDenied: Access Denied]]</code> | ||
+ | * <code>[[Error: Unable to find remote state]]</code> | ||
+ | |||
+ | == Activities == | ||
+ | * [[Explain the benefits of state]] | ||
+ | |||
+ | == Related == | ||
+ | * <code>[[terraform.tfstate]]</code> | ||
+ | * Buildin [[provider]] | ||
== See also == | == See also == | ||
− | * {{Terraform | + | * {{tf state}} |
− | * {{Terraform}} | + | * {{terraform state cmd}} |
+ | * {{Terraform data sources}} | ||
+ | * {{Terraform state}} | ||
[[Category:Terraform]] | [[Category:Terraform]] |
Latest revision as of 16:57, 19 April 2023
terraform_remote_state
Controlled Remote State Access feature in Terraform Cloud and Terraform Enterprise, users now have a new way to establish granular controls for state accessibility.
Contents
Example Usage (remote Backend)[edit]
data "terraform_remote_state" "vpc" { backend = "remote" config = { organization = "hashicorp" workspaces = { name = "vpc-prod" } } }
# Terraform >= 0.12 resource "aws_instance" "foo" { # ... subnet_id = data.terraform_remote_state.vpc.outputs.subnet_id } # Terraform <= 0.11 resource "aws_instance" "foo" { # ... subnet_id = "${data.terraform_remote_state.vpc.subnet_id}" }
Example Usage (local Backend)[edit]
data "terraform_remote_state" "vpc" { backend = "local" config = { path = "..." } } # Terraform >= 0.12 resource "aws_instance" "foo" { # ... subnet_id = data.terraform_remote_state.vpc.outputs.subnet_id } # Terraform <= 0.11 resource "aws_instance" "foo" { # ... subnet_id = "${data.terraform_remote_state.vpc.subnet_id}" }
Errors[edit]
Activities[edit]
Related[edit]
terraform.tfstate
- Buildin provider
See also[edit]
terraform state [ list ]
- Terraform state:
terraform state
[list
|mv
|show
|pull
|push
|rm
|replace-provider
],terraform state show module.alb.aws lb.this
- Terraform data sources:
aws_vpc
,template_file
,aws_subnet_ids
,terraform remote state
,aws_eks_cluster
,aws_ami, aws_availability_zones, aws_partition, archive_file
- Terraform state:
terraform [ state | replace-provider | mv ]
,backend.tf
, Remote state backends to manage Terraform state, State locking,terraform force-unlock
Advertising: