taperole 2.0.0 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 82c0a82eb80be81e11f2b2db205d80fdd40d6200
4
- data.tar.gz: 5c2d11343fdf6c22a69b6e463cffcf21506e091a
3
+ metadata.gz: 83b21a958fbe42d78a79e6b657a19cf12102a481
4
+ data.tar.gz: c058812fc04a8c08572e145d115bf2e1809eb246
5
5
  SHA512:
6
- metadata.gz: 68efdeb3ead8f15b062ec668913a914eb542273d9bc0718cf841f145f2808b147d73cf6659f482ed2fc9b49fa9bb133f2df5136f8bf754e78491ac78c7c60577
7
- data.tar.gz: 07eb11f3f75dafd885402ca764134cc2e074e54c2a4372fee4d56246a8b0565b9185ab157b4dbf0ff181445931964c898c3ef5d4e7d0467140d7b6825e1b4781
6
+ metadata.gz: 91c4f02dc834d98cdf7a495abc30d4ddffaf6ae1f976048259ae78a4dcaef56bad97cd1ccc0801c3df20a9e936958aced72c332ff2643b4cc41d999681345dce
7
+ data.tar.gz: 15c9cd1a743eeac4b9a2433d1f448f75bccd6c10fe3045d560042981def4ab895ddab458c3334702f8e0efc8d8beb487aaccff0c5322eca12942ffbf293444d7
data/CHANGELOG.md CHANGED
@@ -4,6 +4,7 @@
4
4
  * Supports Rails 5
5
5
  * Use letsencrypt for HTTPS configuration
6
6
  * `tape ansible everything` is now `tape ansible deploy`
7
+ * Configure NGINX to use GZip
7
8
 
8
9
  ### 1.8.2 (also 1.8.1)
9
10
  * Updates ANXS PG Galaxy role
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- taperole (1.8.2)
4
+ taperole (2.0.0)
5
5
  colorize (~> 0.8.1)
6
6
  slack-notifier (~> 1.5)
7
7
  thor (~> 0.19.1)
data/README.md CHANGED
@@ -44,7 +44,7 @@ tape installer install
44
44
  All default configurations found in `vars/defaults.yml` can be overridden in your local `taperole/tape_vars.yml` file
45
45
 
46
46
  **Default Node Version**: 4.2.x
47
- **Default Ruby Version** 2.3.0
47
+ **Default Ruby Version** 2.4.0
48
48
 
49
49
  ### Backups
50
50
  Backups are handled via [duply](http://duply.net/) and are configured via the [Stouts.backup](https://github.com/Stouts/Stouts.backup) ansible galaxy role. Bacups occur every night at 4am under the root user. You can configure your backup schedule and target where you want your backups stored at within your `taperole/tape_vars.yml` file.
@@ -100,6 +100,27 @@ Then use the `-l` option to specify the stage/environment
100
100
  tape ansible deploy -l staging
101
101
  ```
102
102
 
103
+ ### Configure LetsEncrypt
104
+ As of 2.0, Tape can automatically configure HTTPS with LetsEncrypt
105
+ You will need to set the following configs:
106
+
107
+ In your `hosts` file add a hostname variable
108
+ ```
109
+ [production]
110
+ 0.0.0.0 be_app_env=production be_app_branch=SOME_BRANCH hostname=project-production.example.com
111
+
112
+ [staging]
113
+ 0.0.0.0 be_app_env=staging be_app_branch=SOME_BRANCH hostname=project-staging.example.com
114
+ ```
115
+
116
+ In your `tape_vars.yml`
117
+ ```
118
+ letsencrypt:
119
+ enabled: true
120
+ hostname: "{{hostname}}"
121
+ email: some_email@example.com
122
+ ```
123
+
103
124
  ## Testing
104
125
  ### With vagrant
105
126
 
@@ -1,3 +1,3 @@
1
1
  module Taperole
2
- VERSION = '2.0.0'.freeze
2
+ VERSION = '2.0.1'.freeze
3
3
  end
@@ -1,9 +1,11 @@
1
1
  - name: Install letsencrypt
2
- apt: name=letsencrypt state=present
2
+ command: bash -lc "git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt"
3
+ args:
4
+ creates: /opt/letsencrypt
3
5
  when: letsencrypt.enabled == true
4
6
 
5
7
  - name: Get letsencrypt cert
6
- command: bash -lc "letsencrypt certonly --standalone --rsa-key-size 4096 --force-renew --agree-tos --email {{ letsencrypt.email }} --text --non-interactive -d {{ letsencrypt.hostname }}"
8
+ command: bash -lc "/opt/letsencrypt/letsencrypt-auto certonly --standalone --rsa-key-size 4096 --force-renew --agree-tos --email {{ letsencrypt.email }} --text --non-interactive -d {{ letsencrypt.hostname }}"
7
9
  args:
8
10
  creates: "/etc/letsencrypt/live/{{ letsencrypt.hostname }}/privkey.pem"
9
11
  when: letsencrypt.enabled == true
@@ -14,6 +16,6 @@
14
16
  weekday: 1
15
17
  hour: 2
16
18
  minute: 30
17
- job: /usr/bin/letsencrypt renew --rsa-key-size 4096 >> /var/log/le-renew.log
19
+ job: /opt/letsencrypt/letsencrypt-auto renew --rsa-key-size 4096 --renew-hook "/usr/bin/monit restart nginx" >> /var/log/le-renew.log
18
20
  user: root
19
21
  when: letsencrypt.enabled == true
@@ -81,6 +81,7 @@ server {
81
81
  try_files $uri/index.html $uri @puma;
82
82
  location @puma {
83
83
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
84
+ proxy_set_header X-Forwarded-Proto $scheme;
84
85
  proxy_set_header Host $http_host;
85
86
  proxy_redirect off;
86
87
  proxy_pass http://puma;
@@ -2,8 +2,8 @@
2
2
  file: path={{be_app_path}}/log state=directory owner=deployer
3
3
 
4
4
  - name: Install Puma config
5
- template: src=puma.rb.j2
6
- dest={{be_app_path}}/config/puma.rb
5
+ template: src=puma.production.rb.j2
6
+ dest={{be_app_path}}/config/puma.production.rb
7
7
 
8
8
  - name: Set up Puma pids dir
9
9
  file:
@@ -6,7 +6,7 @@
6
6
  RAILS_ENV={{ be_app_env }}
7
7
  USER={{ deployer_user.name }}
8
8
  APP_DIR={{ be_app_path }}
9
- PUMA_CONFIG_FILE=$APP_DIR/config/puma.rb
9
+ PUMA_CONFIG_FILE=$APP_DIR/config/puma.production.rb
10
10
  PUMA_PID_FILE={{ puma_pidfile }}
11
11
  PUMA_SOCKET={{ puma_sockfile }}
12
12
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: taperole
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jack Forrest
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2017-03-17 00:00:00.000000000 Z
13
+ date: 2017-04-17 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: slack-notifier
@@ -173,7 +173,7 @@ files:
173
173
  - roles/postgres/meta/main.yml
174
174
  - roles/puma_activate/tasks/main.yml
175
175
  - roles/puma_install/tasks/main.yml
176
- - roles/puma_install/templates/puma.rb.j2
176
+ - roles/puma_install/templates/puma.production.rb.j2
177
177
  - roles/puma_install/templates/puma_init.j2
178
178
  - roles/puma_install/templates/puma_monit.j2
179
179
  - roles/redis/meta/main.yml
@@ -364,7 +364,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
364
364
  version: '0'
365
365
  requirements: []
366
366
  rubyforge_project:
367
- rubygems_version: 2.6.2
367
+ rubygems_version: 2.6.4
368
368
  signing_key:
369
369
  specification_version: 4
370
370
  summary: A tool for provisioning and deploying boxes for hosting Rails apps