mirror of
https://github.com/farcasclaudiu/terraform-course.git
synced 2026-06-22 07:01:56 +03:00
+11
-9
@@ -1,26 +1,28 @@
|
||||
resource "aws_key_pair" "mykey" {
|
||||
key_name = "mykey"
|
||||
public_key = "${file("${var.PATH_TO_PUBLIC_KEY}")}"
|
||||
key_name = "mykey"
|
||||
public_key = file(var.PATH_TO_PUBLIC_KEY)
|
||||
}
|
||||
|
||||
resource "aws_instance" "example" {
|
||||
ami = "${lookup(var.AMIS, var.AWS_REGION)}"
|
||||
ami = var.AMIS[var.AWS_REGION]
|
||||
instance_type = "t2.micro"
|
||||
key_name = "${aws_key_pair.mykey.key_name}"
|
||||
key_name = aws_key_pair.mykey.key_name
|
||||
|
||||
provisioner "file" {
|
||||
source = "script.sh"
|
||||
source = "script.sh"
|
||||
destination = "/tmp/script.sh"
|
||||
}
|
||||
provisioner "remote-exec" {
|
||||
inline = [
|
||||
"chmod +x /tmp/script.sh",
|
||||
"sudo /tmp/script.sh"
|
||||
"sudo /tmp/script.sh",
|
||||
]
|
||||
}
|
||||
connection {
|
||||
host = "${self.public_ip}"
|
||||
user = "${var.INSTANCE_USERNAME}"
|
||||
private_key = "${file("${var.PATH_TO_PRIVATE_KEY}")}"
|
||||
host = coalesce(self.public_ip, self.private_ip)
|
||||
type = "ssh"
|
||||
user = var.INSTANCE_USERNAME
|
||||
private_key = file(var.PATH_TO_PRIVATE_KEY)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
provider "aws" {
|
||||
access_key = "${var.AWS_ACCESS_KEY}"
|
||||
secret_key = "${var.AWS_SECRET_KEY}"
|
||||
region = "${var.AWS_REGION}"
|
||||
access_key = var.AWS_ACCESS_KEY
|
||||
secret_key = var.AWS_SECRET_KEY
|
||||
region = var.AWS_REGION
|
||||
}
|
||||
|
||||
|
||||
+11
-3
@@ -1,10 +1,15 @@
|
||||
variable "AWS_ACCESS_KEY" {}
|
||||
variable "AWS_SECRET_KEY" {}
|
||||
variable "AWS_ACCESS_KEY" {
|
||||
}
|
||||
|
||||
variable "AWS_SECRET_KEY" {
|
||||
}
|
||||
|
||||
variable "AWS_REGION" {
|
||||
default = "eu-west-1"
|
||||
}
|
||||
|
||||
variable "AMIS" {
|
||||
type = "map"
|
||||
type = map(string)
|
||||
default = {
|
||||
us-east-1 = "ami-13be557e"
|
||||
us-west-2 = "ami-06b94666"
|
||||
@@ -15,9 +20,12 @@ variable "AMIS" {
|
||||
variable "PATH_TO_PRIVATE_KEY" {
|
||||
default = "mykey"
|
||||
}
|
||||
|
||||
variable "PATH_TO_PUBLIC_KEY" {
|
||||
default = "mykey.pub"
|
||||
}
|
||||
|
||||
variable "INSTANCE_USERNAME" {
|
||||
default = "ubuntu"
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,4 @@
|
||||
|
||||
terraform {
|
||||
required_version = ">= 0.12"
|
||||
}
|
||||
Reference in New Issue
Block a user