capistrano-decompose 0.1.3 → 0.2.0

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: d91c458605764c5a3e4fdfd90f8270db4942af89
4
- data.tar.gz: 496b05134043a068662614cc82928da6e5020764
3
+ metadata.gz: a00dce5cf2eff5e6bee0e26434281603a3cdaa8b
4
+ data.tar.gz: 179b904bf1e7f9d1670706c09289cd91869194e9
5
5
  SHA512:
6
- metadata.gz: 39a912090e9336aaaaaa7bc841f9b042fef21c5dd1411da0bbdce56355419f7107d96087867e5c54ab385de4cdf537aa8462065d9a0f75f0fa84cbb4ee076e77
7
- data.tar.gz: 1879b07caf6c8bb6c781994afd7def32b3488d6e5e237230e54159827ecb6c885c88ba85bf8e86216b95ef5ff2cb4dc8dd21c9f612bef1e639967be9ccd19a7c
6
+ metadata.gz: 4ab9de128f762e5625194db567286eb48fdfec8f57ea3f7b65dab85392a898a441a6d9280fac42427949a35eb803b9e2af6724e6767620d5ccb9f857d060e58e
7
+ data.tar.gz: d63765374cd3504011069f55830a2654f0b2f8018065e5c6925e32b08012f48778b5d7299b2337f9f02010fe35a83f08bd9290d5ee56e07ccf7884f9cf1246e9
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- capistrano-decompose (0.1.3)
4
+ capistrano-decompose (0.2.0)
5
5
  capistrano (~> 3.5)
6
6
 
7
7
  GEM
@@ -9,17 +9,19 @@ GEM
9
9
  specs:
10
10
  airbrussh (1.3.0)
11
11
  sshkit (>= 1.6.1, != 1.7.0)
12
- capistrano (3.9.1)
12
+ capistrano (3.10.0)
13
13
  airbrussh (>= 1.0.0)
14
14
  i18n
15
15
  rake (>= 10.0.0)
16
16
  sshkit (>= 1.9.0)
17
- i18n (0.8.6)
17
+ concurrent-ruby (1.0.5)
18
+ i18n (0.9.1)
19
+ concurrent-ruby (~> 1.0)
18
20
  net-scp (1.2.1)
19
21
  net-ssh (>= 2.6.5)
20
22
  net-ssh (4.2.0)
21
- rake (12.1.0)
22
- sshkit (1.14.0)
23
+ rake (12.2.1)
24
+ sshkit (1.15.0)
23
25
  net-scp (>= 1.1.2)
24
26
  net-ssh (>= 2.8.0)
25
27
 
@@ -30,4 +32,4 @@ DEPENDENCIES
30
32
  capistrano-decompose!
31
33
 
32
34
  BUNDLED WITH
33
- 1.15.1
35
+ 1.16.0
data/README.md CHANGED
@@ -49,7 +49,7 @@ You can specify the following options in you `deploy.rb` script or the environme
49
49
 
50
50
  * **decompose_restart**: An array of services that should be restarted each deployment, if not specified decompose will restart all services
51
51
  * **decompose_web_service**: The web service that will be used to execute commands inside like `rake` or any interactive command from `decompose:run`, default value: :web
52
- * **decompose_rake_tasks**: A set of rake tasks to execute after each deploy, default value is `nil`
52
+ * **decompose_rake_tasks**: An array of rake tasks to execute after each deploy on the web_service or a Hash of `service_name => [task1, task2...]`, default value is `nil`
53
53
 
54
54
  For a typical rails application the previous options should be as follows, given that the application container service name is `web`:
55
55
 
@@ -1,5 +1,5 @@
1
1
  module Capistrano
2
2
  module Decompose
3
- VERSION = '0.1.3'
3
+ VERSION = '0.2.0'
4
4
  end
5
5
  end
@@ -57,7 +57,14 @@ namespace :decompose do
57
57
  task :rake_tasks do
58
58
  on roles(:app) do
59
59
  within release_path do
60
- docker_rake(*fetch(:decompose_rake_tasks)) if fetch(:decompose_rake_tasks)
60
+ case fetch(:decompose_rake_tasks)
61
+ when Array
62
+ docker_rake_in_web_service(*fetch(:decompose_rake_tasks))
63
+ when Hash
64
+ fetch(:decompose_rake_tasks).each do |service, tasks|
65
+ docker_rake(service, *tasks)
66
+ end
67
+ end
61
68
  end
62
69
  end
63
70
  end
@@ -80,8 +87,12 @@ namespace :decompose do
80
87
  end
81
88
  end
82
89
 
83
- def docker_rake(*args)
84
- docker_execute('run', '--rm', fetch(:decompose_web_service), 'rake', *args)
90
+ def docker_rake_in_web_service(*args)
91
+ docker_execute(fetch(:decompose_web_service), *args)
92
+ end
93
+
94
+ def docker_rake(container, *args)
95
+ docker_execute('run', '--rm', container, 'rake', *args)
85
96
  end
86
97
 
87
98
  def docker_execute(*args)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-decompose
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Emad Elsaid
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-29 00:00:00.000000000 Z
11
+ date: 2017-11-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano