subspace 0.4.11 → 0.4.13

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: a4233f9ea5bf7ba7bde4e47d04327fd2551af7a6
4
- data.tar.gz: ec62afca667788e4a95c6c855f8a6e34b64e6cd0
3
+ metadata.gz: e871a91295786359532725b3d6bdc522698368c0
4
+ data.tar.gz: 448e4c04278d8338fd0994f8c813e260edeccdf2
5
5
  SHA512:
6
- metadata.gz: c5bd1ad8486199a50244edda4a9830af81d91fb6b6c01791948918976c27ed1f2cf686941d90d2664d6f99cf7384cad120598f38e3b270918155181ef137cffd
7
- data.tar.gz: 613d808a2a064affe9c075d01182f44ccc2ffd4f6101b9ce017bde618b41a8d008eb9b977fdbeaaf8b7bfc46801cc17568069f59f8d29fb966396ed88d1c314d
6
+ metadata.gz: f200b1a04f5ed3454109d09d4e17e68a33f984f4b874c5fb2ebc6309d07c230ee4cf67eb7ca6002f53910d51939cedaf9386bfcf73eb48266b137c7d33b9907d
7
+ data.tar.gz: f5417afbf761ca16b6095da766881dcfedf5d024c0d5a3b6ce7a119dcad5761dd6f0e8a937245f9dea9969f7cfe88b2f3d646f869427ded0d538ecde1c8225f8
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 2.2.5
1
+ 2.4.2
data/README.md CHANGED
@@ -258,6 +258,13 @@ Customize:
258
258
 
259
259
  ## redis
260
260
 
261
+ Installs redis on the server.
262
+
263
+ # Change to * if you want tthis available everywhere.
264
+ redis_bind: 127.0.0.1
265
+
266
+
267
+
261
268
  ## ruby-common
262
269
 
263
270
  Installs ruby on the machine. YOu can set a version by picking off the download url and sha hash from ruby-lang.org
@@ -269,6 +276,16 @@ Installs ruby on the machine. YOu can set a version by picking off the download
269
276
 
270
277
  ## sidekiq
271
278
 
279
+ This will install a monit script that keeps sidekiq running. We spawn one sidekiq instance that manages as many queues as you need. Varaibles of note:
280
+
281
+ job_queues:
282
+ - default
283
+ - mailers
284
+
285
+ * Note that as of v0.4.13, we now also add a unique job queue for each host with its hostname. This is handy if you need to assign a job to a specific host. In general you should use named queues, but occasionally this is useful and there's no harm in having it there unused.
286
+
287
+ Sidekiq uses redis by default, and rails connects to a redis running on localhost by default. However, this role does not depend on redis since in production it's likely redis will be running elsewhere. If you're provisioning a standalone server, make sure to include the redis role.
288
+
272
289
 
273
290
  ## Other Internal Roles
274
291
 
@@ -43,12 +43,12 @@
43
43
  template:
44
44
  src: server_status.conf
45
45
  dest: /etc/apache2/conf-available/server_status.conf
46
- sudo: true
46
+ become: true
47
47
 
48
48
  - name: enable server-status conf
49
49
  file:
50
50
  src: /etc/apache2/conf-available/server_status.conf
51
51
  dest: /etc/apache2/conf-enabled/server_status.conf
52
52
  state: link
53
- sudo: true
53
+ become: true
54
54
  notify: apache restart
@@ -45,7 +45,7 @@
45
45
  template:
46
46
  src: apache2.conf
47
47
  dest: /etc/collectd/collectd.conf.d/apache2.conf
48
- sudo: true
48
+ become: true
49
49
  notify: restart collectd
50
50
  when: "'apache' in role_names"
51
51
 
@@ -53,7 +53,7 @@
53
53
  template:
54
54
  src: puma-process.conf
55
55
  dest: /etc/collectd/collectd.conf.d/puma-process.conf
56
- sudo: true
56
+ become: true
57
57
  notify: restart collectd
58
58
  when: puma_installed is defined
59
59
 
@@ -61,14 +61,14 @@
61
61
  template:
62
62
  src: nodejs-process.conf
63
63
  dest: /etc/collectd/collectd.conf.d/nodejs-process.conf
64
- sudo: true
64
+ become: true
65
65
  notify: restart collectd
66
66
 
67
67
  - name: create nginx config
68
68
  template:
69
69
  src: nginx.conf
70
70
  dest: /etc/collectd/collectd.conf.d/nginx.conf
71
- sudo: true
71
+ become: true
72
72
  notify: restart collectd
73
73
  when: "'nginx' in role_names"
74
74
 
@@ -76,7 +76,7 @@
76
76
  template:
77
77
  src: rails_lograge.conf
78
78
  dest: /etc/collectd/collectd.conf.d/rails_lograge.conf
79
- sudo: true
79
+ become: true
80
80
  notify: restart collectd
81
81
  when: rails_lograge is defined
82
82
 
@@ -91,4 +91,4 @@
91
91
  state: directory
92
92
  become: true
93
93
 
94
- - include: swap.yml
94
+ - import_tasks: swap.yml
@@ -1,4 +1,4 @@
1
1
  ---
2
2
  - name: monit reload
3
3
  command: monit reload
4
- sudo: true
4
+ become: true
@@ -5,17 +5,17 @@
5
5
  template:
6
6
  src: delayed-job-monit-rc
7
7
  dest: /etc/monit/conf.d/delayed_job_{{project_name}}_{{rails_env}}
8
- sudo: true
8
+ become: true
9
9
  notify: reload_monit
10
10
 
11
11
  - name: Remove old upstart files
12
12
  file:
13
13
  path: /etc/init/delayed-job.conf
14
14
  state: absent
15
- sudo: true
15
+ become: true
16
16
 
17
17
  - name: Remove old monit files
18
18
  file:
19
19
  path: /etc/monit/conf.d/delayed_job
20
20
  state: absent
21
- sudo: true
21
+ become: true
@@ -1,8 +1,8 @@
1
1
  ---
2
- - include: apt.yml
2
+ - import_tasks: apt.yml
3
3
  tags: passenger_apt
4
- - include: pkg.yml
4
+ - import_tasks: pkg.yml
5
5
  tags: passenger_pkg
6
- - include: service.yml
6
+ - import_tasks: service.yml
7
7
  tags: passenger_service
8
8
  when: passenger_webserver != "standalone"
@@ -16,7 +16,16 @@
16
16
  - name: Install puma monit script
17
17
  template:
18
18
  src: puma-monit-rc
19
- dest: /etc/monit/conf.d/puma_{{project_name}}_{{rails_env}}
20
- sudo: true
21
- notify: restart_monit
19
+ dest: /etc/monit/conf-available/puma_{{project_name}}_{{rails_env}}
20
+
21
+ - name: Clean up old puma monit scripts
22
+ shell: rm -f /etc/monit/conf.d/puma_*
23
+
24
+ - name: Enable puma monit script
25
+ file:
26
+ src: /etc/monit/conf-available/puma_{{project_name}}_{{rails_env}}
27
+ dest: /etc/monit/conf-enabled/puma_{{project_name}}_{{rails_env}}
28
+ state: link
29
+ notify:
30
+ - restart_monit
22
31
 
@@ -1,4 +1,14 @@
1
1
  ---
2
+ - name: Add yarn apt key
3
+ apt_key:
4
+ url: https://dl.yarnpkg.com/debian/pubkey.gpg
5
+ state: present
6
+
7
+ - name: Add yarn apt repo
8
+ apt_repository:
9
+ repo: deb https://dl.yarnpkg.com/debian/ stable main
10
+ state: present
11
+
2
12
  - name: Install rails apt dependencies
3
13
  apt:
4
14
  name: "{{item}}"
@@ -12,6 +22,7 @@
12
22
  - libxslt-dev
13
23
  - nodejs
14
24
  - zlib1g-dev
25
+ - yarn
15
26
  become: true
16
27
 
17
28
  - name: Create /u/apps/{{project_name}}/shared/config
@@ -0,0 +1,2 @@
1
+ ---
2
+ sidekiq_concurrency: 5
@@ -1,8 +1,5 @@
1
1
  ---
2
2
  dependencies:
3
- - {
4
- role: redis
5
- }
6
3
  - {
7
4
  role: monit
8
5
  }
@@ -2,6 +2,17 @@
2
2
  - name: Install sidekiq monit script
3
3
  template:
4
4
  src: sidekiq-monit-rc
5
- dest: /etc/monit/conf.d/sidekiq_{{project_name}}_{{rails_env}}
6
- sudo: true
7
- notify: validate_monit
5
+ dest: /etc/monit/conf-available/sidekiq_{{project_name}}_{{rails_env}}
6
+ become: true
7
+
8
+ - name: Clean up old sidekiq monit scripts
9
+ shell: rm -f /etc/monit/conf.d/sidekiq_*
10
+
11
+ - name: Enable sidekiq monit script
12
+ file:
13
+ src: /etc/monit/conf-available/sidekiq_{{project_name}}_{{rails_env}}
14
+ dest: /etc/monit/conf-enabled/sidekiq_{{project_name}}_{{rails_env}}
15
+ state: link
16
+ notify:
17
+ - restart_monit
18
+
@@ -1,6 +1,4 @@
1
- {% for queue in job_queues %}
2
- check process sidekiq_{{queue}}
3
- with pidfile /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.{{queue}}.pid
4
- start program = "/bin/su - deploy -c 'cd /u/apps/{{project_name}}/current && bundle exec sidekiq --queue {{queue}} --pidfile /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.{{queue}}.pid --environment {{rails_env}} --logfile /u/apps/{{project_name}}/shared/log/sidekiq.{{queue}}.log --daemon'" with timeout 30 seconds
5
- stop program = "/bin/su - deploy -c 'kill -s TERM `cat /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.{{queue}}.pid`'" with timeout 30 seconds
6
- {% endfor %}
1
+ check process sidekiq
2
+ with pidfile /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.pid
3
+ start program = "/bin/su - deploy -c 'cd /u/apps/{{project_name}}/current && bundle exec sidekiq --queue {{hostname}} {{ job_queues | map('regex_replace', '^(.*)$', '--queue \\1') | join(' ') }} --pidfile /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.pid --environment {{rails_env}} --logfile /u/apps/{{project_name}}/shared/log/sidekiq.log --daemon'" with timeout 30 seconds
4
+ stop program = "/bin/su - deploy -c 'kill -s TERM `cat /u/apps/{{project_name}}/shared/tmp/pids/sidekiq.pid`'" with timeout 30 seconds
@@ -1,3 +1,3 @@
1
1
  module Subspace
2
- VERSION = "0.4.11"
2
+ VERSION = "0.4.13"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subspace
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.11
4
+ version: 0.4.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian Samson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-08 00:00:00.000000000 Z
11
+ date: 2018-03-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -219,6 +219,7 @@ files:
219
219
  - ansible/roles/ruby-common/templates/ruby-gc-wrapper.j2
220
220
  - ansible/roles/ruby-common/vars/main.yml
221
221
  - ansible/roles/sidekiq/README.md
222
+ - ansible/roles/sidekiq/defaults/main.yml
222
223
  - ansible/roles/sidekiq/meta/main.yml
223
224
  - ansible/roles/sidekiq/tasks/main.yml
224
225
  - ansible/roles/sidekiq/templates/sidekiq-monit-rc
@@ -292,7 +293,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
292
293
  version: '0'
293
294
  requirements: []
294
295
  rubyforge_project:
295
- rubygems_version: 2.6.13
296
+ rubygems_version: 2.6.14
296
297
  signing_key:
297
298
  specification_version: 4
298
299
  summary: Ansible-based server provisioning for rails projects