mirror of
https://github.com/sidpalas/devops-directive-terraform-course.git
synced 2025-12-10 12:51:14 +00:00
Updates from bitrot livestream
This commit is contained in:
@@ -44,7 +44,7 @@ resource "aws_instance" "instance_2" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resource "aws_s3_bucket" "bucket" {
|
resource "aws_s3_bucket" "bucket" {
|
||||||
bucket = "devops-directive-web-app-data"
|
bucket_prefix = "devops-directive-web-app-data"
|
||||||
force_destroy = true
|
force_destroy = true
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,7 +56,7 @@ resource "aws_s3_bucket_versioning" "bucket_versioning" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resource "aws_s3_bucket_server_side_encryption_configuration" "bucket_crypto_conf" {
|
resource "aws_s3_bucket_server_side_encryption_configuration" "bucket_crypto_conf" {
|
||||||
bucket = aws_s3_bucket.bucket.bucket
|
bucket = aws_s3_bucket.bucket.bucket
|
||||||
rule {
|
rule {
|
||||||
apply_server_side_encryption_by_default {
|
apply_server_side_encryption_by_default {
|
||||||
sse_algorithm = "AES256"
|
sse_algorithm = "AES256"
|
||||||
@@ -203,7 +203,7 @@ resource "aws_route53_record" "root" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resource "aws_db_instance" "db_instance" {
|
resource "aws_db_instance" "db_instance" {
|
||||||
allocated_storage = 20
|
allocated_storage = 20
|
||||||
# This allows any minor version within the major engine_version
|
# This allows any minor version within the major engine_version
|
||||||
# defined below, but will also result in allowing AWS to auto
|
# defined below, but will also result in allowing AWS to auto
|
||||||
# upgrade the minor version of your DB. This may be too risky
|
# upgrade the minor version of your DB. This may be too risky
|
||||||
|
|||||||
@@ -37,7 +37,7 @@ resource "aws_db_instance" "db_instance" {
|
|||||||
allocated_storage = 20
|
allocated_storage = 20
|
||||||
storage_type = "gp2"
|
storage_type = "gp2"
|
||||||
engine = "postgres"
|
engine = "postgres"
|
||||||
engine_version = "12.4"
|
engine_version = "12"
|
||||||
instance_class = "db.t2.micro"
|
instance_class = "db.t2.micro"
|
||||||
name = "mydb"
|
name = "mydb"
|
||||||
username = var.db_user
|
username = var.db_user
|
||||||
|
|||||||
@@ -45,17 +45,22 @@ resource "aws_instance" "instance_2" {
|
|||||||
}
|
}
|
||||||
|
|
||||||
resource "aws_s3_bucket" "bucket" {
|
resource "aws_s3_bucket" "bucket" {
|
||||||
bucket = var.bucket_name
|
bucket_prefix = var.bucket_prefix
|
||||||
force_destroy = true
|
force_destroy = true
|
||||||
versioning {
|
}
|
||||||
enabled = true
|
|
||||||
}
|
|
||||||
|
|
||||||
server_side_encryption_configuration {
|
resource "aws_s3_bucket_versioning" "bucket_versioning" {
|
||||||
rule {
|
bucket = aws_s3_bucket.bucket.id
|
||||||
apply_server_side_encryption_by_default {
|
versioning_configuration {
|
||||||
sse_algorithm = "AES256"
|
status = "Enabled"
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_s3_bucket_server_side_encryption_configuration" "bucket_crypto_conf" {
|
||||||
|
bucket = aws_s3_bucket.bucket.bucket
|
||||||
|
rule {
|
||||||
|
apply_server_side_encryption_by_default {
|
||||||
|
sse_algorithm = "AES256"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -202,7 +207,7 @@ resource "aws_db_instance" "db_instance" {
|
|||||||
allocated_storage = 20
|
allocated_storage = 20
|
||||||
storage_type = "standard"
|
storage_type = "standard"
|
||||||
engine = "postgres"
|
engine = "postgres"
|
||||||
engine_version = "12.5"
|
engine_version = "12"
|
||||||
instance_class = "db.t2.micro"
|
instance_class = "db.t2.micro"
|
||||||
name = var.db_name
|
name = var.db_name
|
||||||
username = var.db_user
|
username = var.db_user
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
bucket_name = "devops-directive-web-app-data"
|
bucket_prefix = "devops-directive-web-app-data"
|
||||||
domain = "devopsdeployed.com"
|
domain = "devopsdeployed.com"
|
||||||
db_name = "mydb"
|
db_name = "mydb"
|
||||||
db_user = "foo"
|
db_user = "foo"
|
||||||
# db_pass = "foobarbaz"
|
# db_pass = "foobarbaz"
|
||||||
|
|||||||
@@ -22,8 +22,8 @@ variable "instance_type" {
|
|||||||
|
|
||||||
# S3 Variables
|
# S3 Variables
|
||||||
|
|
||||||
variable "bucket_name" {
|
variable "bucket_prefix" {
|
||||||
description = "name of s3 bucket for app data"
|
description = "prefix of s3 bucket for app data"
|
||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ resource "aws_db_instance" "db_instance" {
|
|||||||
allocated_storage = 20
|
allocated_storage = 20
|
||||||
storage_type = "standard"
|
storage_type = "standard"
|
||||||
engine = "postgres"
|
engine = "postgres"
|
||||||
engine_version = "12.5"
|
engine_version = "12"
|
||||||
instance_class = "db.t2.micro"
|
instance_class = "db.t2.micro"
|
||||||
name = var.db_name
|
name = var.db_name
|
||||||
username = var.db_user
|
username = var.db_user
|
||||||
|
|||||||
@@ -1,15 +1,20 @@
|
|||||||
resource "aws_s3_bucket" "bucket" {
|
resource "aws_s3_bucket" "bucket" {
|
||||||
bucket = var.bucket_name
|
bucket_prefix = var.bucket_prefix
|
||||||
force_destroy = true
|
force_destroy = true
|
||||||
versioning {
|
}
|
||||||
enabled = true
|
|
||||||
}
|
|
||||||
|
|
||||||
server_side_encryption_configuration {
|
resource "aws_s3_bucket_versioning" "bucket_versioning" {
|
||||||
rule {
|
bucket = aws_s3_bucket.bucket.id
|
||||||
apply_server_side_encryption_by_default {
|
versioning_configuration {
|
||||||
sse_algorithm = "AES256"
|
status = "Enabled"
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
resource "aws_s3_bucket_server_side_encryption_configuration" "bucket_crypto_conf" {
|
||||||
|
bucket = aws_s3_bucket.bucket.bucket
|
||||||
|
rule {
|
||||||
|
apply_server_side_encryption_by_default {
|
||||||
|
sse_algorithm = "AES256"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,8 +34,8 @@ variable "instance_type" {
|
|||||||
|
|
||||||
# S3 Variables
|
# S3 Variables
|
||||||
|
|
||||||
variable "bucket_name" {
|
variable "bucket_prefix" {
|
||||||
description = "name of s3 bucket for app data"
|
description = "prefix of s3 bucket for app data"
|
||||||
type = string
|
type = string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -37,11 +37,11 @@ module "web_app_1" {
|
|||||||
source = "../web-app-module"
|
source = "../web-app-module"
|
||||||
|
|
||||||
# Input Variables
|
# Input Variables
|
||||||
bucket_name = "web-app-1-devops-directive-web-app-data"
|
bucket_prefix = "web-app-1-data"
|
||||||
domain = "devopsdeployed.com"
|
domain = "devopsdeployed.com"
|
||||||
app_name = "web-app-1"
|
app_name = "web-app-1"
|
||||||
environment_name = "production"
|
environment_name = "production"
|
||||||
instance_type = "t2.small"
|
instance_type = "t2.micro"
|
||||||
create_dns_zone = true
|
create_dns_zone = true
|
||||||
db_name = "webapp1db"
|
db_name = "webapp1db"
|
||||||
db_user = "foo"
|
db_user = "foo"
|
||||||
@@ -52,11 +52,11 @@ module "web_app_2" {
|
|||||||
source = "../web-app-module"
|
source = "../web-app-module"
|
||||||
|
|
||||||
# Input Variables
|
# Input Variables
|
||||||
bucket_name = "web-app-2-devops-directive-web-app-data"
|
bucket_prefix = "web-app-2-data"
|
||||||
domain = "anotherdevopsdeployed.com"
|
domain = "anotherdevopsdeployed.com"
|
||||||
app_name = "web-app-2"
|
app_name = "web-app-2"
|
||||||
environment_name = "production"
|
environment_name = "production"
|
||||||
instance_type = "t2.small"
|
instance_type = "t2.micro"
|
||||||
create_dns_zone = true
|
create_dns_zone = true
|
||||||
db_name = "webapp2db"
|
db_name = "webapp2db"
|
||||||
db_user = "bar"
|
db_user = "bar"
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ module "web_app" {
|
|||||||
source = "../../../06-organization-and-modules/web-app-module"
|
source = "../../../06-organization-and-modules/web-app-module"
|
||||||
|
|
||||||
# Input Variables
|
# Input Variables
|
||||||
bucket_name = "devops-directive-web-app-data-${local.environment_name}"
|
bucket_prefix = "web-app-data-${local.environment_name}"
|
||||||
domain = "devopsdeployed.com"
|
domain = "devopsdeployed.com"
|
||||||
environment_name = local.environment_name
|
environment_name = local.environment_name
|
||||||
instance_type = "t2.small"
|
instance_type = "t2.micro"
|
||||||
create_dns_zone = false
|
create_dns_zone = false
|
||||||
db_name = "${local.environment_name}mydb"
|
db_name = "${local.environment_name}mydb"
|
||||||
db_user = "foo"
|
db_user = "foo"
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ module "web_app" {
|
|||||||
source = "../../../06-organization-and-modules/web-app-module"
|
source = "../../../06-organization-and-modules/web-app-module"
|
||||||
|
|
||||||
# Input Variables
|
# Input Variables
|
||||||
bucket_name = "devops-directive-web-app-data-${local.environment_name}"
|
bucket_prefix = "web-app-data-${local.environment_name}"
|
||||||
domain = "devopsdeployed.com"
|
domain = "devopsdeployed.com"
|
||||||
environment_name = local.environment_name
|
environment_name = local.environment_name
|
||||||
instance_type = "t2.micro"
|
instance_type = "t2.micro"
|
||||||
|
|||||||
@@ -35,10 +35,10 @@ module "web_app" {
|
|||||||
source = "../../06-organization-and-modules/web-app-module"
|
source = "../../06-organization-and-modules/web-app-module"
|
||||||
|
|
||||||
# Input Variables
|
# Input Variables
|
||||||
bucket_name = "devops-directive-web-app-data-${local.environment_name}"
|
bucket_prefix = "web-app-data-${local.environment_name}"
|
||||||
domain = "devopsdeployed.com"
|
domain = "devopsdeployed.com"
|
||||||
environment_name = local.environment_name
|
environment_name = local.environment_name
|
||||||
instance_type = "t2.small"
|
instance_type = "t2.micro"
|
||||||
create_dns_zone = terraform.workspace == "production" ? true : false
|
create_dns_zone = terraform.workspace == "production" ? true : false
|
||||||
db_name = "${local.environment_name}mydb"
|
db_name = "${local.environment_name}mydb"
|
||||||
db_user = "foo"
|
db_user = "foo"
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
How to run this test?
|
How to run this test?
|
||||||
|
|
||||||
Build, then run...
|
download dependencies, then run the tests...
|
||||||
|
```
|
||||||
`go test -v timeout 10m`
|
go mod download
|
||||||
|
go test -v --timeout 10m
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user