| Both sides previous revisionPrevious revisionNext revision | Previous revision |
| terraform [2020/02/18 09:22] – jsanders | terraform [2020/02/19 09:33] (current) – jsanders |
|---|
| ==== Provider Configuration ==== | ==== Provider Configuration ==== |
| === Generic Provider === | === Generic Provider === |
| //see:// [[https://www.terraform.io/docs/configuration/providers.html|Providers - Configuration Language - Terraform by Hashicorp]]\\ | //see also:// [[https://www.terraform.io/docs/configuration/providers.html|Providers - Configuration Language - Terraform by Hashicorp]]\\ |
| \\ | \\ |
| === AWS === | === AWS === |
| } | } |
| If specifying the profile through the ''AWS_PROFILE'' environment variable, you may also need to set ''AWS_SDK_LOAD_CONFIG'' to a truthy value (e.g. ''AWS_SDK_LOAD_CONFIG=1'') for advanced AWS client configurations, such as profiles that use the ''source_profile'' or ''role_arn'' configurations. | If specifying the profile through the ''AWS_PROFILE'' environment variable, you may also need to set ''AWS_SDK_LOAD_CONFIG'' to a truthy value (e.g. ''AWS_SDK_LOAD_CONFIG=1'') for advanced AWS client configurations, such as profiles that use the ''source_profile'' or ''role_arn'' configurations. |
| \\ | ==== Adding User Data in Configs ==== |
| | To add a user data file into a startup/config script, first store your script in a server-accessible location, then create a file named ''userdata.txt'' using the following template: |
| | <powershell> |
| | C:\\Path\\To\\Your\\Launch\\Scripts\\InitializeInstance.ps1 -Schedule |
| | </powershell> |
| | You can then launch the instance by specifying the text file containing pointers to your script(s): |
| | resource "aws_instance" "my-test-instance" { |
| | ami = "${data.aws_ami.ec2-worker-initial-encrypted-ami.id}" |
| | instance_type = "t2.micro" |
| | |
| | tags { |
| | Name = "my-test-instance" |
| | } |
| | |
| | user_data = "${file(userdata.txt)}" |
| | } |
| ==== Selected Documentation ==== | ==== Selected Documentation ==== |
| - [[https://www.terraform.io/docs/providers/aws/index.html#argument-reference|Provider: AWS - Argument Reference]] - These arguments, along with the [[terraform#generic_provider|generic provider arguments]], are supported in the AWS Provider block | - [[https://www.terraform.io/docs/providers/aws/index.html#argument-reference|Provider: AWS - Argument Reference]] - These arguments, along with the [[terraform#generic_provider|generic provider arguments]], are supported in the AWS Provider block |