Difference between revisions of "Terraform provider: aws"

From wikieduonline
Jump to navigation Jump to search
 
(29 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
* https://registry.terraform.io/providers/hashicorp/aws/latest/docs
 
* https://registry.terraform.io/providers/hashicorp/aws/latest/docs
 +
* <code>[[profile]]</code>, <code>[[shared_config_files]]</code>, <code>[[shared_credentials_files]]</code>
  
 +
== Configuration examples ==
 +
{{basic tf aws profile}}
  
  provider "aws" {
+
  [[provider]] "aws" {
   version = "~> 3.38.0"
+
   [[version =]] "~> 3.38.0"
 
   [[region]] = "[[us-east-1]]"
 
   [[region]] = "[[us-east-1]]"
 
   [[profile]] = "your_profile_name"
 
   [[profile]] = "your_profile_name"
 
  }
 
  }
 
  
 
  provider "aws" {
 
  provider "aws" {
   region    = var.region
+
   region    = [[var.region]]
 
   version    = ">= 0.13"
 
   version    = ">= 0.13"
 
   [[assume_role]] {
 
   [[assume_role]] {
 
     [[role_arn]] = "arn:aws:iam::01234567890:role/role_in_account_b"
 
     [[role_arn]] = "arn:aws:iam::01234567890:role/role_in_account_b"
 
   }
 
   }
  }  
+
}
 +
 
 +
Including Tags:
 +
{{tf_aws_provider_tags}}
 +
 
 +
[[Dynamic Credentials with the AWS Provider]]:
 +
provider "aws" {
 +
  [[shared_config_files]] = [var.tfc_aws_dynamic_credentials.default.shared_config_file]
 +
  }
  
 +
== Installing ==
 +
Installing hashicorp/aws v4.31.0
 +
Installing [[hashicorp/]]aws v4.29.0...
 +
[[Installing hashicorp]]/aws v4.28.0...
 +
Installing hashicorp/aws v4.15.1...
 +
Installing hashicorp/aws v3.63.0...
  
 
== Resources ==
 
== Resources ==
[[Terraform resoure IAM]]
+
[[Terraform IAM resources]]
  
 
[[Networking]]:
 
[[Networking]]:
Line 51: Line 67:
 
* <code>[[aws_ecs_service]]</code> <ref>https://registry.terraform.io/search/providers?q=aws_ecs_service</ref>
 
* <code>[[aws_ecs_service]]</code> <ref>https://registry.terraform.io/search/providers?q=aws_ecs_service</ref>
  
[[Database]]:
+
[[Terraform RDS resources|RDS]]:
* <code>[[aws_db_instance]]</code>
+
{{tf rds TOC}}
* <code>[[aws_rds_cluster_instance]]</code>
 
* <code>[[aws_rds_cluster]]</code>
 
* <code>[[Terraform resource: aws db proxy|aws_db_proxy]]</code>
 
  
 
[[S3]]:
 
[[S3]]:
Line 89: Line 102:
 
[[ECR]]
 
[[ECR]]
 
* <code>[[aws_ecr_repository]]</code>
 
* <code>[[aws_ecr_repository]]</code>
 +
 +
== Errors ==
 +
* <code>[[Error: Provider produced inconsistent final plan]]</code>
 +
* <code>[[Error: error configuring Terraform AWS Provider: no valid credential sources for Terraform AWS Provider found.]]</code>
 +
* <code>[[Error: configuring Terraform AWS Provider: failed to get shared config profile]]</code>
 +
* <code>[[AWS Error: A Profile was specified along with the environment variables "AWS ACCESS KEY ID" and "AWS SECRET ACCESS KEY". The Profile is now used instead of the environment variable credentials.]]</code>
 +
 +
== Limitation ==
 +
* <code>[[aws account disable-region]]</code> not implemented
  
 
== Related terms ==
 
== Related terms ==
Line 94: Line 116:
 
* [[CloudFormation resource types: (Type:)]]
 
* [[CloudFormation resource types: (Type:)]]
 
* [[Terraform S3 backend]]: <code>[[backends.tf]]</code>
 
* [[Terraform S3 backend]]: <code>[[backends.tf]]</code>
* [[Error: error configuring Terraform AWS Provider: no valid credential sources for Terraform AWS Provider found.]]
 
 
* <code>[[providers.tf]]</code>
 
* <code>[[providers.tf]]</code>
 
* [[Terraform provider: AWS]]
 
* [[Terraform provider: AWS]]
Line 100: Line 121:
 
* [[Terraform AWS data sources]]
 
* [[Terraform AWS data sources]]
 
* <code>[[AWS_DEFAULT_REGION]]</code>
 
* <code>[[AWS_DEFAULT_REGION]]</code>
 +
* [[Terraform modules]]
 +
* [[Terraform provider-level tagging]]
 +
* <code>[[required_version]]</code>
  
 
== Activities / Changelog ==
 
== Activities / Changelog ==

Latest revision as of 17:33, 20 February 2024

Configuration examples[edit]

 provider "aws" {
 profile = "your_profile_name"
}
provider "aws" {
 version = "~> 3.38.0"
 region = "us-east-1"
 profile = "your_profile_name"
}
provider "aws" {
  region     = var.region
  version    = ">= 0.13"
  assume_role {
    role_arn = "arn:aws:iam::01234567890:role/role_in_account_b"
  }
}

Including Tags:

 # Terraform 0.12 (2019) and later syntax
provider "aws" {
  # ... other configuration ...
  default_tags {
    tags = {
      Environment = "Production"
      Owner       = "Ops"
    }
  }
}

Dynamic Credentials with the AWS Provider:

provider "aws" {
  shared_config_files = [var.tfc_aws_dynamic_credentials.default.shared_config_file]
}

Installing[edit]

Installing hashicorp/aws v4.31.0
Installing hashicorp/aws v4.29.0...
Installing hashicorp/aws v4.28.0...
Installing hashicorp/aws v4.15.1...
Installing hashicorp/aws v3.63.0...

Resources[edit]

Terraform IAM resources

Networking:

CloudFront

Networking

Computing:

RDS:

S3:

KMS

CloudWatch

WAF

Route53


CodeBuild

CodeDeploy

ECR

Errors[edit]

Limitation[edit]

Related terms[edit]

Activities / Changelog[edit]

See also[edit]

  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc
  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/appautoscaling_target
  • https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/appautoscaling_policy
  • https://registry.terraform.io/search/providers?q=aws_ecs_service
  • Advertising: