terra_boi 0.0.11 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +84 -159
  3. data/lib/generators/extensions.rb +5 -5
  4. data/lib/generators/terra_boi/boilerplate_generator.rb +39 -32
  5. data/lib/generators/terra_boi/dockerfile_generator.rb +19 -18
  6. data/lib/generators/terra_boi/host_initializer_generator.rb +18 -18
  7. data/lib/generators/terra_boi/templates/Dockerfile.erb +4 -23
  8. data/lib/generators/terra_boi/templates/cert/main.tf.erb +32 -0
  9. data/lib/generators/terra_boi/templates/cert/var.tf.erb +15 -0
  10. data/lib/generators/terra_boi/templates/data_storage_config.erb +7 -7
  11. data/lib/generators/terra_boi/templates/ecr/ecs_role.tf.erb +41 -0
  12. data/lib/generators/terra_boi/templates/ecr/main.tf.erb +26 -0
  13. data/lib/generators/terra_boi/templates/ecr/output.tf.erb +11 -0
  14. data/lib/generators/terra_boi/templates/ecr/var.tf.erb +15 -0
  15. data/lib/generators/terra_boi/templates/{data_main.erb → env/data/main.tf.erb} +2 -2
  16. data/lib/generators/terra_boi/templates/{data_output.erb → env/data/output.tf.erb} +1 -1
  17. data/lib/generators/terra_boi/templates/env/ecs_cluster/ecs_cluster.tf.erb +24 -0
  18. data/lib/generators/terra_boi/templates/env/head_worker/ecs.tf.erb +55 -0
  19. data/lib/generators/terra_boi/templates/env/web_app/ecs.tf.erb +59 -0
  20. data/lib/generators/terra_boi/templates/lib/scripts/push_to_ecr.sh.erb +21 -0
  21. data/lib/generators/terra_boi/templates/lib/scripts/update_service_pull_from_ecr.sh.erb +18 -0
  22. data/lib/generators/terra_boi/templates/lib/task_templates/head_worker.json.erb +61 -0
  23. data/lib/generators/terra_boi/templates/lib/task_templates/web_app.json.erb +58 -0
  24. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/main.tf.erb +12 -0
  25. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/var.tf.erb +20 -0
  26. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/ecs_role.tf.erb +7 -0
  27. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/load_balancer.tf.erb +92 -0
  28. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/main.tf.erb +134 -0
  29. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/output.tf.erb +11 -0
  30. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/var.tf.erb +63 -0
  31. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/ecs_role.tf.erb +7 -0
  32. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/main.tf.erb +120 -0
  33. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/output.tf.erb +7 -0
  34. data/lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/var.tf.erb +57 -0
  35. data/lib/generators/terra_boi/templates/state_main.erb +1 -1
  36. data/lib/generators/terra_boi/tf_cert_generator.rb +28 -0
  37. data/lib/generators/terra_boi/tf_ecr_generator.rb +28 -0
  38. data/lib/generators/terra_boi/tf_env_generator.rb +54 -0
  39. data/lib/generators/terra_boi/tf_lib_generator.rb +57 -0
  40. data/lib/generators/terra_boi/tf_state_generator.rb +24 -0
  41. data/lib/tasks/terra_boi_tasks.rake +280 -4
  42. data/lib/terra_boi/railtie.rb +5 -2
  43. data/lib/terra_boi/version.rb +1 -1
  44. metadata +51 -22
  45. data/lib/generators/terra_boi/data_generator.rb +0 -38
  46. data/lib/generators/terra_boi/master_worker_generator.rb +0 -47
  47. data/lib/generators/terra_boi/packer_generator.rb +0 -26
  48. data/lib/generators/terra_boi/state_generator.rb +0 -25
  49. data/lib/generators/terra_boi/templates/master_worker_main.erb +0 -26
  50. data/lib/generators/terra_boi/templates/master_worker_output.erb +0 -14
  51. data/lib/generators/terra_boi/templates/master_worker_user_data.erb +0 -33
  52. data/lib/generators/terra_boi/templates/packer_ami_build.erb +0 -27
  53. data/lib/generators/terra_boi/templates/packer_application.erb +0 -49
  54. data/lib/generators/terra_boi/templates/web_servers_main.erb +0 -31
  55. data/lib/generators/terra_boi/templates/web_servers_output.erb +0 -14
  56. data/lib/generators/terra_boi/templates/web_servers_user_data.erb +0 -29
  57. data/lib/generators/terra_boi/web_servers_generator.rb +0 -48
@@ -1,4 +1,7 @@
1
1
  module TerraBoi
2
- class Railtie < ::Rails::Railtie
3
- end
2
+ class Railtie < ::Rails::Railtie
3
+ rake_tasks do
4
+ load 'tasks/terra_boi_tasks.rake'
5
+ end
6
+ end
4
7
  end
@@ -1,3 +1,3 @@
1
1
  module TerraBoi
2
- VERSION = '0.0.11'
2
+ VERSION = '1.0.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: terra_boi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charlie Reese
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-20 00:00:00.000000000 Z
11
+ date: 2020-08-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -30,6 +30,20 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 6.0.0
33
+ - !ruby/object:Gem::Dependency
34
+ name: colorize
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
33
47
  description: 'This gem was created to get rails applications deployed into production
34
48
  as quickly and easily as possible. It contains generators that create infrastructure
35
49
  code for load balancing / auto scaling / zero-downtime deployments, (rails) web
@@ -49,29 +63,45 @@ files:
49
63
  - lib/generators/extensions.rb
50
64
  - lib/generators/terra_boi/boilerplate_generator.rb
51
65
  - lib/generators/terra_boi/data_config_generator.rb
52
- - lib/generators/terra_boi/data_generator.rb
53
66
  - lib/generators/terra_boi/db_config_generator.rb
54
67
  - lib/generators/terra_boi/dockerfile_generator.rb
55
68
  - lib/generators/terra_boi/host_initializer_generator.rb
56
- - lib/generators/terra_boi/master_worker_generator.rb
57
- - lib/generators/terra_boi/packer_generator.rb
58
- - lib/generators/terra_boi/state_generator.rb
59
69
  - lib/generators/terra_boi/templates/Dockerfile.erb
60
- - lib/generators/terra_boi/templates/data_main.erb
61
- - lib/generators/terra_boi/templates/data_output.erb
70
+ - lib/generators/terra_boi/templates/cert/main.tf.erb
71
+ - lib/generators/terra_boi/templates/cert/var.tf.erb
62
72
  - lib/generators/terra_boi/templates/data_storage_config.erb
63
73
  - lib/generators/terra_boi/templates/db_config.erb
74
+ - lib/generators/terra_boi/templates/ecr/ecs_role.tf.erb
75
+ - lib/generators/terra_boi/templates/ecr/main.tf.erb
76
+ - lib/generators/terra_boi/templates/ecr/output.tf.erb
77
+ - lib/generators/terra_boi/templates/ecr/var.tf.erb
78
+ - lib/generators/terra_boi/templates/env/data/main.tf.erb
79
+ - lib/generators/terra_boi/templates/env/data/output.tf.erb
80
+ - lib/generators/terra_boi/templates/env/ecs_cluster/ecs_cluster.tf.erb
81
+ - lib/generators/terra_boi/templates/env/head_worker/ecs.tf.erb
82
+ - lib/generators/terra_boi/templates/env/web_app/ecs.tf.erb
64
83
  - lib/generators/terra_boi/templates/host_initializer.erb
65
- - lib/generators/terra_boi/templates/master_worker_main.erb
66
- - lib/generators/terra_boi/templates/master_worker_output.erb
67
- - lib/generators/terra_boi/templates/master_worker_user_data.erb
68
- - lib/generators/terra_boi/templates/packer_ami_build.erb
69
- - lib/generators/terra_boi/templates/packer_application.erb
84
+ - lib/generators/terra_boi/templates/lib/scripts/push_to_ecr.sh.erb
85
+ - lib/generators/terra_boi/templates/lib/scripts/update_service_pull_from_ecr.sh.erb
86
+ - lib/generators/terra_boi/templates/lib/task_templates/head_worker.json.erb
87
+ - lib/generators/terra_boi/templates/lib/task_templates/web_app.json.erb
88
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/main.tf.erb
89
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/var.tf.erb
90
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/ecs_role.tf.erb
91
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/load_balancer.tf.erb
92
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/main.tf.erb
93
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/output.tf.erb
94
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/var.tf.erb
95
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/ecs_role.tf.erb
96
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/main.tf.erb
97
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/output.tf.erb
98
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/var.tf.erb
70
99
  - lib/generators/terra_boi/templates/state_main.erb
71
- - lib/generators/terra_boi/templates/web_servers_main.erb
72
- - lib/generators/terra_boi/templates/web_servers_output.erb
73
- - lib/generators/terra_boi/templates/web_servers_user_data.erb
74
- - lib/generators/terra_boi/web_servers_generator.rb
100
+ - lib/generators/terra_boi/tf_cert_generator.rb
101
+ - lib/generators/terra_boi/tf_ecr_generator.rb
102
+ - lib/generators/terra_boi/tf_env_generator.rb
103
+ - lib/generators/terra_boi/tf_lib_generator.rb
104
+ - lib/generators/terra_boi/tf_state_generator.rb
75
105
  - lib/tasks/terra_boi_tasks.rake
76
106
  - lib/terra_boi.rb
77
107
  - lib/terra_boi/railtie.rb
@@ -80,7 +110,7 @@ homepage: https://github.com/charliereese/terra_boi
80
110
  licenses:
81
111
  - MIT
82
112
  metadata: {}
83
- post_install_message:
113
+ post_install_message:
84
114
  rdoc_options: []
85
115
  require_paths:
86
116
  - lib
@@ -95,9 +125,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
125
  - !ruby/object:Gem::Version
96
126
  version: '0'
97
127
  requirements: []
98
- rubyforge_project:
99
- rubygems_version: 2.7.7
100
- signing_key:
128
+ rubygems_version: 3.1.2
129
+ signing_key:
101
130
  specification_version: 4
102
131
  summary: Generators to help you get rails applications deployed into production as
103
132
  quickly and easily as possible.
@@ -1,38 +0,0 @@
1
- require "generators/extensions"
2
-
3
- module TerraBoi
4
- class DataGenerator < Rails::Generators::Base
5
- attr_accessor :application_name, :class_options
6
- source_root File.expand_path('templates', __dir__)
7
-
8
- desc (<<-EOF
9
- Generate staging and production DB and S3 bucket
10
-
11
- To execute, run rails generate terra_boi:data
12
- EOF
13
- .gsub(/\t/, '')
14
- )
15
-
16
- def init
17
- # defined in lib/generators/extensions
18
- self.application_name = generate_application_name
19
- self.class_options = options
20
- end
21
-
22
- def create_main_terraform_file
23
- generate_terraform_files({
24
- template: 'data_main.erb',
25
- file_path: 'data/main.tf',
26
- env: ['staging', 'prod']
27
- })
28
- end
29
-
30
- def create_output_terraform_file
31
- generate_terraform_files({
32
- template: 'data_output.erb',
33
- file_path: 'data/output.tf',
34
- env: ['staging', 'prod']
35
- })
36
- end
37
- end
38
- end
@@ -1,47 +0,0 @@
1
- require "generators/extensions"
2
-
3
- module TerraBoi
4
- class MasterWorkerGenerator < Rails::Generators::Base
5
- attr_accessor :application_name, :id_rsa_pub, :class_options
6
- class_option :domain_name, type: :string
7
- source_root File.expand_path('templates', __dir__)
8
-
9
- desc (<<-EOF
10
- Generate staging and production terraform master worker server files
11
-
12
- To execute, run rails generate terra_boi:master_worker
13
- EOF
14
- .gsub(/\t/, '')
15
- )
16
-
17
- def init
18
- # defined in lib/generators/extensions
19
- self.application_name = generate_application_name
20
- self.id_rsa_pub = open(ENV['HOME'] + "/.ssh/id_rsa.pub").read.chomp
21
- end
22
-
23
- def create_main_terraform_file
24
- generate_terraform_files({
25
- template: 'master_worker_main.erb',
26
- file_path: 'master_worker/main.tf',
27
- env: ['staging', 'prod']
28
- })
29
- end
30
-
31
- def create_output_terraform_file
32
- generate_terraform_files({
33
- template: 'master_worker_output.erb',
34
- file_path: 'master_worker/output.tf',
35
- env: ['staging', 'prod']
36
- })
37
- end
38
-
39
- def create_user_data_terraform_file
40
- generate_terraform_files({
41
- template: 'master_worker_user_data.erb',
42
- file_path: 'master_worker/user-data.sh',
43
- env: ['staging', 'prod']
44
- })
45
- end
46
- end
47
- end
@@ -1,26 +0,0 @@
1
- require "generators/extensions"
2
-
3
- module TerraBoi
4
- class PackerGenerator < Rails::Generators::Base
5
- attr_accessor :application_name
6
- source_root File.expand_path('templates', __dir__)
7
-
8
- desc (<<-EOF
9
- Generate packer files for building AWS EC2 AMI
10
-
11
- To execute, run rails generate terra_boi:packer
12
- EOF
13
- .gsub(/\t/, '')
14
- )
15
-
16
- def init
17
- # defined in lib/generators/extensions
18
- self.application_name = generate_application_name
19
- end
20
-
21
- def create_packer_files
22
- template "packer_ami_build.erb", "packer/ami_build.sh"
23
- template "packer_application.erb", "packer/application.json"
24
- end
25
- end
26
- end
@@ -1,25 +0,0 @@
1
- require "generators/extensions"
2
-
3
- module TerraBoi
4
- class StateGenerator < Rails::Generators::Base
5
- attr_accessor :application_name, :class_options
6
- source_root File.expand_path('templates', __dir__)
7
-
8
- desc (<<-EOF
9
- Generate DB and S3 bucket for storing and locking terraform state
10
-
11
- To execute, run rails generate terra_boi:state
12
- EOF
13
- .gsub(/\t/, '')
14
- )
15
-
16
- def init
17
- self.application_name = generate_application_name
18
- self.class_options = options
19
- end
20
-
21
- def create_main_terraform_file
22
- template "state_main.erb", "terraform/state/main.tf"
23
- end
24
- end
25
- end
@@ -1,26 +0,0 @@
1
- # -------------------------------------------------------------------
2
- # 1. STATE
3
- # -------------------------------------------------------------------
4
-
5
- terraform {
6
- backend "s3" {
7
- bucket = "<%= application_name %>-terraform-state-storage"
8
- key = "terraform/<%= config[:env] %>-state/master-worker"
9
- region = "us-east-2"
10
- dynamodb_table = "<%= application_name %>-terraform-state-lock"
11
- encrypt = true
12
- }
13
- }
14
-
15
- # -------------------------------------------------------------------
16
- # 2. MASTER WORKER MODULE
17
- # -------------------------------------------------------------------
18
-
19
- module "master_worker_cluster" {
20
- source = "github.com/charliereese/terraform_modules//master_worker?ref=v0.0.23"
21
-
22
- instance_type = "t2.micro"
23
- env = "<%= config[:env] %>"
24
- app_name = "<%= application_name %>"
25
- id_rsa_pub = "<%= id_rsa_pub %>"
26
- }
@@ -1,14 +0,0 @@
1
- output "master_worker_ip_address" {
2
- value = module.master_worker_cluster.master_worker_ip_address
3
- description = "The domain name of the application load balancer"
4
- }
5
-
6
- output "master_worker_id" {
7
- value = module.master_worker_cluster.master_worker_id
8
- description = "The ID of the master worker"
9
- }
10
-
11
- output "master_worker_arn" {
12
- value = module.master_worker_cluster.master_worker_arn
13
- description = "The ARN of the master worker"
14
- }
@@ -1,33 +0,0 @@
1
- #!/bin/bash
2
- sleep 5
3
-
4
- # Set ENV vars from terraform
5
- echo "APPLICATION_NAME=${application_name}" >> /etc/environment
6
- echo "DB_HOST=${db_address}" >> /etc/environment
7
- echo "DB_USERNAME=${db_username}" >> /etc/environment
8
- echo "RAILS_ENV=production" >> /etc/environment
9
- echo "INFRASTRUCTURE_ENV=${env}" >> /etc/environment
10
-
11
- # Load ENV vars in current session
12
- for line in $( cat /etc/environment ); do export $line; done
13
-
14
- # Set DB environment variables in docker container and
15
- # start rake jobs:work
16
- # https://medium.com/@oprearocks/how-to-properly-override-the-entrypoint-using-docker-run-2e081e5feb9d
17
- docker container run --entrypoint "rake" -p 3000:3000 --name $APPLICATION_NAME --restart always -d \
18
- -e DB_HOST=$DB_HOST \
19
- -e DB_USERNAME=$DB_USERNAME \
20
- -e DB_PASSWORD=$DB_PASSWORD \
21
- -e RAILS_ENV=$RAILS_ENV \
22
- -e INFRASTRUCTURE_ENV=$INFRASTRUCTURE_ENV \
23
- -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
24
- -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
25
- -e RAILS_MASTER_KEY=$RAILS_MASTER_KEY \
26
- -e RAILS_SERVE_STATIC_FILES=true \
27
- $DOCKERHUB_USERNAME/$APPLICATION_NAME:latest jobs:work
28
-
29
- # Run outstanding DB migrations
30
- docker container exec $APPLICATION_NAME rake db:migrate
31
-
32
- # Update and run cron
33
- docker container exec $APPLICATION_NAME whenever --update-crontab
@@ -1,27 +0,0 @@
1
- #!/bin/bash
2
-
3
- # Update to the latest current version of packages
4
- sudo apt-get update
5
- sudo apt -y install docker.io
6
- docker --version
7
-
8
- # Set DB and DockerHub usernames
9
- RAILS_MASTER_KEY=`sudo cat /tmp/master.key`
10
- sudo bash -c "echo 'RAILS_MASTER_KEY=$RAILS_MASTER_KEY' >> /etc/environment"
11
- sudo bash -c "echo 'DB_PASSWORD=$DB_PASSWORD' >> /etc/environment"
12
- sudo bash -c "echo 'DOCKERHUB_USERNAME=$DOCKERHUB_USERNAME' >> /etc/environment"
13
- sudo bash -c "echo 'AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID' >> /etc/environment"
14
- sudo bash -c "echo 'AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY' >> /etc/environment"
15
-
16
- # # Start the Docker service
17
- sudo service docker start
18
- sudo usermod -aG docker ubuntu
19
-
20
- # # Automatically start Docker service when the system boots, i.e. when the EC2 instance created from this AMI is launched or rebooted
21
- sudo systemctl enable docker
22
-
23
- # Log in
24
- sudo docker login --username $DOCKERHUB_USERNAME -p $DOCKERHUB_ACCESS_TOKEN
25
-
26
- # Pull the container:
27
- sudo docker pull $DOCKERHUB_USERNAME/<%= application_name %>:latest
@@ -1,49 +0,0 @@
1
- {
2
- "variables": {
3
- "DOCKERHUB_ACCESS_TOKEN": "",
4
- "DOCKERHUB_USERNAME": "",
5
- "DB_PASSWORD": ""
6
- },
7
-
8
- "builders": [{
9
- "type": "amazon-ebs",
10
- "region": "us-east-2",
11
- "source_ami_filter": {
12
- "filters": {
13
- "virtualization-type": "hvm",
14
- "name": "ubuntu/images/*ubuntu-disco-19.04-amd64-server-*",
15
- "root-device-type": "ebs"
16
- },
17
- "owners": ["099720109477"],
18
- "most_recent": true
19
- },
20
- "instance_type": "t2.micro",
21
- "ssh_username": "ubuntu",
22
- "ami_name": "<%= application_name %>-ec2 {{timestamp}}",
23
- "tags": {
24
- "application": "<%= application_name %>-web-server"
25
- }
26
- }],
27
-
28
- "provisioners": [{
29
- "type": "file",
30
- "source": "../config/master.key",
31
- "destination": "/tmp/master.key"
32
- },{
33
- "type": "shell",
34
- "inline": [
35
- "sleep 30"
36
- ]
37
- },
38
- {
39
- "type":"shell",
40
- "environment_vars": [
41
- "DOCKERHUB_ACCESS_TOKEN={{user `DOCKERHUB_ACCESS_TOKEN`}}",
42
- "DOCKERHUB_USERNAME={{user `DOCKERHUB_USERNAME`}}",
43
- "DB_PASSWORD={{user `DB_PASSWORD`}}",
44
- "AWS_ACCESS_KEY_ID={{user `AWS_ACCESS_KEY_ID`}}",
45
- "AWS_SECRET_ACCESS_KEY={{user `AWS_SECRET_ACCESS_KEY`}}"
46
- ],
47
- "script": "ami_build.sh"
48
- }]
49
- }
@@ -1,31 +0,0 @@
1
- # ---------------------------------------------------------------------------------------------------------------------
2
- # 1. STATE
3
- # ---------------------------------------------------------------------------------------------------------------------
4
-
5
- terraform {
6
- backend "s3" {
7
- bucket = "<%= application_name %>-terraform-state-storage"
8
- key = "terraform/<%= config[:env] %>-state/web-servers"
9
- region = "us-east-2"
10
- dynamodb_table = "<%= application_name %>-terraform-state-lock"
11
- encrypt = true
12
- }
13
- }
14
-
15
- # ---------------------------------------------------------------------------------------------------------------------
16
- # 2. WEB SERVERS MODULE
17
- # ---------------------------------------------------------------------------------------------------------------------
18
-
19
- module "webserver_cluster" {
20
- source = "github.com/charliereese/terraform_modules//web_servers?ref=v0.0.23"
21
-
22
- instance_type = "t2.micro"
23
- env = "<%= config[:env] %>"
24
- app_name = "<%= application_name %>"
25
- domain_name = "<%= config[:domain_name] %>"
26
- id_rsa_pub = "<%= id_rsa_pub %>"
27
- min_size = 1
28
- max_size = 1
29
- business_hours_size = 1
30
- night_hours_size = 1
31
- }