terra_boi 0.0.12 → 1.0.1

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 +86 -157
  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 +60 -31
  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.12'
2
+ VERSION = '1.0.1'
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.12
4
+ version: 1.0.1
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-22 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,13 +30,26 @@ dependencies:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
32
  version: 6.0.0
33
- description: 'This gem was created to get rails applications deployed into production
34
- as quickly and easily as possible. It contains generators that create infrastructure
35
- code for load balancing / auto scaling / zero-downtime deployments, (rails) web
36
- apps (EC2 instances), DBs, and S3 buckets. List of items created by this gem''s
37
- generators: Dockerfile, Rails initializer file (for setting up config.hosts), Packer
38
- repository (for creating AWS EC2 AMIs), and Terraform repository (for creating infrastructure
39
- as code to immediately deploy staging / prod infrastructure).'
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'
47
+ description: |-
48
+ Deploy your rails application to AWS with `rake deploy`.
49
+
50
+ This ruby / rails gem was created by Charlie Reese (charliereese.ca/about) for Clientelify. It creates AWS infrastructure for your rails application and deploys it in 5 steps (3 installation steps and 2 rake tasks). It is free to use.
51
+
52
+ Out of the box, terra_boi provides remote state locking, load-balancing, simple scaling, zero-downtime deployments, CloudWatch logging, DBs, and S3 buckets for multiple infrastructure environments: by default, terra_boi creates staging and prod environments for your web app.
40
53
  email:
41
54
  - j.charles.reese@gmail.com
42
55
  executables: []
@@ -49,29 +62,45 @@ files:
49
62
  - lib/generators/extensions.rb
50
63
  - lib/generators/terra_boi/boilerplate_generator.rb
51
64
  - lib/generators/terra_boi/data_config_generator.rb
52
- - lib/generators/terra_boi/data_generator.rb
53
65
  - lib/generators/terra_boi/db_config_generator.rb
54
66
  - lib/generators/terra_boi/dockerfile_generator.rb
55
67
  - 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
68
  - 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
69
+ - lib/generators/terra_boi/templates/cert/main.tf.erb
70
+ - lib/generators/terra_boi/templates/cert/var.tf.erb
62
71
  - lib/generators/terra_boi/templates/data_storage_config.erb
63
72
  - lib/generators/terra_boi/templates/db_config.erb
73
+ - lib/generators/terra_boi/templates/ecr/ecs_role.tf.erb
74
+ - lib/generators/terra_boi/templates/ecr/main.tf.erb
75
+ - lib/generators/terra_boi/templates/ecr/output.tf.erb
76
+ - lib/generators/terra_boi/templates/ecr/var.tf.erb
77
+ - lib/generators/terra_boi/templates/env/data/main.tf.erb
78
+ - lib/generators/terra_boi/templates/env/data/output.tf.erb
79
+ - lib/generators/terra_boi/templates/env/ecs_cluster/ecs_cluster.tf.erb
80
+ - lib/generators/terra_boi/templates/env/head_worker/ecs.tf.erb
81
+ - lib/generators/terra_boi/templates/env/web_app/ecs.tf.erb
64
82
  - 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
83
+ - lib/generators/terra_boi/templates/lib/scripts/push_to_ecr.sh.erb
84
+ - lib/generators/terra_boi/templates/lib/scripts/update_service_pull_from_ecr.sh.erb
85
+ - lib/generators/terra_boi/templates/lib/task_templates/head_worker.json.erb
86
+ - lib/generators/terra_boi/templates/lib/task_templates/web_app.json.erb
87
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/main.tf.erb
88
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_cluster/var.tf.erb
89
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/ecs_role.tf.erb
90
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/load_balancer.tf.erb
91
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/main.tf.erb
92
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/output.tf.erb
93
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_web_app/var.tf.erb
94
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/ecs_role.tf.erb
95
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/main.tf.erb
96
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/output.tf.erb
97
+ - lib/generators/terra_boi/templates/lib/terraform_modules/ecs_worker/var.tf.erb
70
98
  - 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
99
+ - lib/generators/terra_boi/tf_cert_generator.rb
100
+ - lib/generators/terra_boi/tf_ecr_generator.rb
101
+ - lib/generators/terra_boi/tf_env_generator.rb
102
+ - lib/generators/terra_boi/tf_lib_generator.rb
103
+ - lib/generators/terra_boi/tf_state_generator.rb
75
104
  - lib/tasks/terra_boi_tasks.rake
76
105
  - lib/terra_boi.rb
77
106
  - lib/terra_boi/railtie.rb
@@ -80,7 +109,7 @@ homepage: https://github.com/charliereese/terra_boi
80
109
  licenses:
81
110
  - MIT
82
111
  metadata: {}
83
- post_install_message:
112
+ post_install_message:
84
113
  rdoc_options: []
85
114
  require_paths:
86
115
  - lib
@@ -95,10 +124,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
124
  - !ruby/object:Gem::Version
96
125
  version: '0'
97
126
  requirements: []
98
- rubyforge_project:
99
- rubygems_version: 2.7.7
100
- signing_key:
127
+ rubygems_version: 3.1.2
128
+ signing_key:
101
129
  specification_version: 4
102
- summary: Generators to help you get rails applications deployed into production as
103
- quickly and easily as possible.
130
+ summary: Deploy your rails application to AWS with `rake deploy`. terra_boi generates
131
+ AWS infrastructure as code, provisions AWS infrastructure, and then deploys your
132
+ application to it using Terraform, rails generators, and rake tasks.
104
133
  test_files: []
@@ -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.24"
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
- }