mascherano 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- NWJkM2VjYjIwZjgzOGE1M2IzODkyNDA1ZWQzMzkyNjI3ODY2YzYwZA==
5
- data.tar.gz: !binary |-
6
- NzJiMDllYWFkZGUyNjViMDNiNjk3OGZiNDZiNWE2ZjAzYTg4MDJlZA==
2
+ SHA1:
3
+ metadata.gz: cbb4833274538eb82988367e9bcc9b0a92050954
4
+ data.tar.gz: fb5cbd6ccd981da7942ca4f81be6c984d2e91ecb
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MmFmODVkNzQ2YWFkNGI5ZjUwY2VmYjRhNWU5YTExNTJjNTgwMGM2ZWIwNzlj
10
- ZmRkM2Y1MTNiZmY0YTg2MzQ2Mzk0MmU3MTIzYzEyYTA1M2FhOWFiNGE0YjYy
11
- YmU3ZGJiMzIxMzA1OTU4MTQzMmRmNGY3MDVjMjljOTYwZWExYzA=
12
- data.tar.gz: !binary |-
13
- NWE2NTM1M2YyZTI3ZjdmY2Y1OTQ4OTRkODdmYjgyNDZiYjJmN2ZhYWZkYTU0
14
- YjQwN2E5YTI1N2EwOTdiZjU0ZDQ2NjAyZTJmYWRhOGVkMDQ2MzJlZDZkOWUz
15
- ZjYzMTIxNjk1ODc0Y2YyMjlhNDU5MmU2ZWEyYWIzNjQ4NWZlMWI=
6
+ metadata.gz: d0af20d5ed82f15817ba5d83b057c88d1e70162b0fd197c2a6ffb25c254a6aacd7e1e079f7936ee2fc213097f2a1780e0da4f51dd90e9b3297e1ec7d11d2d2c6
7
+ data.tar.gz: 96570333ed18e71d7ba38ac275440ac7c674be13074d6da69a04876d6d5fec5f1115996bf1d829b9141ed0cf6f1cf1b6127c3e24b4024d5835a4202cbe6aaa70
@@ -5,4 +5,5 @@ namespace :noscm do
5
5
  execute :mkdir, '-p', release_path
6
6
  end
7
7
  end
8
+ task :set_current_revision do; end
8
9
  end
@@ -10,7 +10,7 @@ namespace :auth_basic do
10
10
  htpasswd.chomp!
11
11
  end
12
12
 
13
- on roles(fetch(:auth_basic_roles)) do
13
+ on fetch(:auth_basic_servers) do
14
14
  upload! StringIO.new(htpasswd), fetch(:auth_basic_target)
15
15
  execute :chmod, 'o+r', fetch(:auth_basic_target)
16
16
  end
@@ -19,8 +19,9 @@ end
19
19
 
20
20
  namespace :load do
21
21
  task :defaults do
22
- set :auth_basic_user, 'root'
23
- set :auth_basic_roles, :all
24
- set :auth_basic_target, -> { shared_path.join('.htpasswd') }
22
+ set :auth_basic_user, 'root'
23
+ set :auth_basic_roles, :all
24
+ set :auth_basic_servers, -> { release_roles(fetch(:auth_basic_roles)) }
25
+ set :auth_basic_target, -> { shared_path.join('.htpasswd') }
25
26
  end
26
27
  end
@@ -4,12 +4,13 @@ namespace :env do
4
4
 
5
5
  You can override any of these defaults by setting the variables shown below.
6
6
 
7
- set :env_file, ".env"
8
- set :env_roles, :all
9
- set :target_file, -> { shared_path.join('.env') }
7
+ set :env_file, ".env"
8
+ set :env_roles, :all
9
+ set :env_servers, -> { release_roles(fetch(:env_roles)) }
10
+ set :env_target, -> { shared_path.join('.env') }
10
11
  DESC
11
12
  task :upload do
12
- on roles(fetch(:env_roles)) do
13
+ on fetch(:env_servers) do
13
14
  upload! fetch(:env_file), fetch(:env_target)
14
15
  end
15
16
  end
@@ -18,7 +19,7 @@ namespace :env do
18
19
  Symlink the .env file to the release_path
19
20
  DESC
20
21
  task :symlink do
21
- on roles(fetch(:env_roles)) do
22
+ on fetch(:env_servers) do
22
23
  execute :ln, '-sf', fetch(:env_target), release_path.join('.env')
23
24
  end
24
25
  end
@@ -26,9 +27,10 @@ end
26
27
 
27
28
  namespace :load do
28
29
  task :defaults do
29
- set :env_file, ".env"
30
- set :env_roles, :all
31
- set :env_target, -> { shared_path.join('.env') }
30
+ set :env_file, ".env"
31
+ set :env_roles, :all
32
+ set :env_servers, -> { release_roles(fetch(:env_roles)) }
33
+ set :env_target, -> { shared_path.join('.env') }
32
34
  end
33
35
  end
34
36
 
@@ -6,9 +6,11 @@ namespace :figaro do
6
6
 
7
7
  You can override any of these defaults by setting the variables shown below.
8
8
 
9
- set :figaro_target, -> { shared_path.join('application.yml') }
10
- set :figaro_config, -> { release_path.join('config', 'application.yml') }
11
- set :figaro_to_env, false
9
+ set :figaro_target, -> { shared_path.join('application.yml') }
10
+ set :figaro_config, -> { release_path.join('config', 'application.yml') }
11
+ set :figaro_to_env, false
12
+ set :figaro_roles, :app
13
+ set :figaro_servers, -> { release_roles(fetch(:figaro_roles)) }
12
14
  DESC
13
15
  task :upload do
14
16
  figaro_data = nil
@@ -27,7 +29,7 @@ namespace :figaro do
27
29
  end
28
30
 
29
31
  if figaro_data
30
- on roles(fetch(:figaro_roles)) do
32
+ on fetch(:figaro_servers) do
31
33
  upload! StringIO.new(figaro_data), fetch(:figaro_target)
32
34
  end
33
35
  end
@@ -37,7 +39,7 @@ namespace :figaro do
37
39
  Symlink the application config to the release_path
38
40
  DESC
39
41
  task :symlink do
40
- on roles(fetch(:figaro_roles)) do
42
+ on fetch(:figaro_servers) do
41
43
  execute :ln, '-sf', fetch(:figaro_target), fetch(:figaro_config)
42
44
  end
43
45
  end
@@ -45,10 +47,11 @@ end
45
47
 
46
48
  namespace :load do
47
49
  task :defaults do
48
- set :figaro_target, -> { shared_path.join('application.yml') }
49
- set :figaro_config, -> { release_path.join('config', 'application.yml') }
50
- set :figaro_to_env, false
51
- set :figaro_roles, :app
50
+ set :figaro_target, -> { shared_path.join('application.yml') }
51
+ set :figaro_config, -> { release_path.join('config', 'application.yml') }
52
+ set :figaro_to_env, false
53
+ set :figaro_roles, :app
54
+ set :figaro_servers, -> { release_roles(fetch(:figaro_roles)) }
52
55
  end
53
56
  end
54
57
 
@@ -4,65 +4,75 @@ namespace :foreman do
4
4
 
5
5
  You can override any of these defaults by setting the variables shown below.
6
6
 
7
- set :foreman_cmd, "foreman"
8
- set :foreman_format, "upstart"
9
- set :foreman_location, "/etc/init"
10
- set :foreman_port, 5000
11
- set :foreman_root, -> { release_path }
12
- set :foreman_procfile, -> { release_path.join('Procfile') }
13
- set :foreman_app, -> { fetch(:application) }
14
- set :foreman_user, -> { fetch(:user) }
15
- set :foreman_log, -> { shared_path.join('log') }
16
- set :foreman_pids, false
17
- set :foreman_concurrency, false
18
- set :foreman_sudo, false
19
- set :foreman_roles, :all
7
+ set :foreman_cmd, "foreman"
8
+ set :foreman_format, "upstart"
9
+ set :foreman_location, "/etc/init"
10
+ set :foreman_port, 5000
11
+ set :foreman_root, -> { release_path }
12
+ set :foreman_procfile, -> { release_path.join('Procfile') }
13
+ set :foreman_app, -> { fetch(:application) }
14
+ set :foreman_log, -> { shared_path.join('log') }
15
+ set :foreman_pids, false
16
+ set :foreman_concurrency, false
17
+ set :foreman_sudo, false
18
+ set :foreman_roles, :all
19
+ set :foreman_servers, -> { release_roles(fetch(:foreman_roles)) }
20
20
  DESC
21
21
 
22
22
  task :export do
23
- on roles(fetch(:foreman_roles)) do
23
+ on fetch(:foreman_servers) do |host|
24
24
  within release_path do
25
- concurrency = fetch(:foreman_concurrency)
26
- foreman_sudo = fetch(:foreman_sudo)
27
- foreman_pids = fetch(:foreman_pids)
25
+ foreman_cmd = fetch(:foreman_cmd)
26
+ foreman_concurrency = fetch(:foreman_concurrency)
27
+ foreman_format = fetch(:foreman_format)
28
+ foreman_location = fetch(:foreman_location)
29
+ foreman_pids = fetch(:foreman_pids)
30
+ foreman_sudo = fetch(:foreman_sudo)
31
+ foreman_user = fetch(:foreman_user, host.user)
28
32
 
29
- args = [fetch(:foreman_format), fetch(:foreman_location)]
30
- args << %Q(-f #{fetch(:foreman_procfile)})
31
- args << %Q(-p #{fetch(:foreman_port)})
32
- args << %Q(-d #{fetch(:foreman_root)})
33
- args << %Q(-a #{fetch(:foreman_app)})
34
- args << %Q(-u #{fetch(:foreman_user)})
35
- args << %Q(-l #{fetch(:foreman_log)})
36
- args << %Q(-r #{fetch(:foreman_pids)}) if foreman_pids
37
- args << %Q(-c #{concurrency}) if concurrency
33
+ cmd = [foreman_cmd, 'export', foreman_format, foreman_location]
34
+ cmd << %Q(-f #{fetch(:foreman_procfile)})
35
+ cmd << %Q(-p #{fetch(:foreman_port)})
36
+ cmd << %Q(-d #{fetch(:foreman_root)})
37
+ cmd << %Q(-a #{fetch(:foreman_app)})
38
+ cmd << %Q(-u #{foreman_user})
39
+ cmd << %Q(-l #{fetch(:foreman_log)})
40
+ cmd << %Q(-r #{foreman_pids}) if foreman_pids
41
+ cmd << %Q(-c #{foreman_concurrency}) if foreman_concurrency
38
42
 
39
- cmd = "#{fetch(:foreman_cmd)} export #{args.join(' ')}"
40
-
41
- if foreman_sudo
42
- execute "sudo su - -c '#{cmd}'"
43
- else
44
- execute cmd
45
- end
43
+ execute *cmd
46
44
  end
47
45
  end
48
46
  end
47
+
48
+ desc 'Prefixes the foreman command with sudo when :foreman_sudo => true'
49
+ task :configure_sudo do
50
+ if fetch(:foreman_sudo)
51
+ foreman_cmd = fetch(:foreman_cmd).to_s
52
+ SSHKit.config.command_map.prefix[foreman_cmd].push('sudo')
53
+ end
54
+ end
55
+ end
56
+
57
+ Capistrano::DSL.stages.each do |stage|
58
+ after stage, 'foreman:configure_sudo'
49
59
  end
50
60
 
51
61
  namespace :load do
52
62
  task :defaults do
53
- set :foreman_cmd, "foreman"
54
- set :foreman_format, "upstart"
55
- set :foreman_location, "/etc/init"
56
- set :foreman_port, 5000
57
- set :foreman_root, -> { release_path }
58
- set :foreman_procfile, -> { release_path.join('Procfile') }
59
- set :foreman_app, -> { fetch(:application) }
60
- set :foreman_user, -> { fetch(:user) }
61
- set :foreman_log, -> { shared_path.join('log') }
62
- set :foreman_pids, false
63
- set :foreman_concurrency, false
64
- set :foreman_sudo, false
65
- set :foreman_roles, :all
63
+ set :foreman_cmd, "foreman"
64
+ set :foreman_format, "upstart"
65
+ set :foreman_location, "/etc/init"
66
+ set :foreman_port, 5000
67
+ set :foreman_root, -> { release_path }
68
+ set :foreman_procfile, -> { release_path.join('Procfile') }
69
+ set :foreman_app, -> { fetch(:application) }
70
+ set :foreman_log, -> { shared_path.join('log') }
71
+ set :foreman_pids, false
72
+ set :foreman_concurrency, false
73
+ set :foreman_sudo, false
74
+ set :foreman_roles, :all
75
+ set :foreman_servers, -> { release_roles(fetch(:foreman_roles)) }
66
76
  end
67
77
  end
68
78
 
@@ -4,15 +4,16 @@ namespace :go do
4
4
 
5
5
  You can override any of these defaults by setting the variables shown below.
6
6
 
7
- set :go_input, 'api.go'
8
- set :go_output, 'api'
9
- set :go_os, 'linux'
10
- set :go_arch, 'amd64'
11
- set :go_roles, :app
12
- set :go_target, -> { release_path.join(fetch(:go_output)) }
7
+ set :go_input, 'api.go'
8
+ set :go_output, 'api'
9
+ set :go_os, 'linux'
10
+ set :go_arch, 'amd64'
11
+ set :go_roles, :app
12
+ set :go_servers, -> { release_roles(fetch(:go_roles)) }
13
+ set :go_target, -> { release_path.join(fetch(:go_output)) }
13
14
  DESC
14
15
  task :build do
15
- on roles(fetch(:go_roles)) do
16
+ on fetch(:go_servers) do
16
17
  run_locally do
17
18
  go_flags = {
18
19
  'GOOS' => fetch(:go_os),
@@ -28,7 +29,7 @@ namespace :go do
28
29
 
29
30
  desc 'Upload compiled application to the server'
30
31
  task :upload do
31
- on roles(fetch(:go_roles)) do
32
+ on fetch(:go_servers) do
32
33
  upload! fetch(:go_output), fetch(:go_target)
33
34
  end
34
35
  end
@@ -36,11 +37,12 @@ end
36
37
 
37
38
  namespace :load do
38
39
  task :defaults do
39
- set :go_input, 'api.go'
40
- set :go_output, 'api'
41
- set :go_os, 'linux'
42
- set :go_arch, 'amd64'
43
- set :go_roles, :app
44
- set :go_target, -> { release_path.join(fetch(:go_output)) }
40
+ set :go_input, 'api.go'
41
+ set :go_output, 'api'
42
+ set :go_os, 'linux'
43
+ set :go_arch, 'amd64'
44
+ set :go_roles, :app
45
+ set :go_servers, -> { release_roles(fetch(:go_roles)) }
46
+ set :go_target, -> { release_path.join(fetch(:go_output)) }
45
47
  end
46
48
  end
@@ -31,7 +31,7 @@ namespace :supervisor do
31
31
  end
32
32
 
33
33
  if supervisor_config
34
- on roles(fetch(:supervisor_roles)) do
34
+ on fetch(:supervisor_servers) do
35
35
  upload! StringIO.new(supervisor_config), fetch(:supervisor_target)
36
36
  end
37
37
  end
@@ -39,35 +39,35 @@ namespace :supervisor do
39
39
 
40
40
  desc 'Symlink supervisord config to the conf.d'
41
41
  task :symlink do
42
- on roles(fetch(:supervisor_roles)) do
42
+ on fetch(:supervisor_servers) do
43
43
  execute :ln, '-sf', fetch(:supervisor_target), fetch(:supervisor_confd)
44
44
  end
45
45
  end
46
46
 
47
47
  desc 'Reread supervisord'
48
48
  task :reread do
49
- on roles(fetch(:supervisor_roles)) do
49
+ on fetch(:supervisor_servers) do
50
50
  execute :supervisorctl, 'reread'
51
51
  end
52
52
  end
53
53
 
54
54
  desc 'Update supervisord'
55
55
  task :update do
56
- on roles(fetch(:supervisor_roles)) do
56
+ on fetch(:supervisor_servers) do
57
57
  execute :supervisorctl, 'update'
58
58
  end
59
59
  end
60
60
 
61
61
  desc 'Restart application'
62
62
  task :restart do
63
- on roles(fetch(:supervisor_roles)) do
63
+ on fetch(:supervisor_servers) do
64
64
  execute :supervisorctl, 'restart', "#{fetch(:supervisor_application)}:*"
65
65
  end
66
66
  end
67
67
 
68
68
  desc 'Update configuration or restart application'
69
69
  task :refresh do
70
- on roles(fetch(:supervisor_roles)) do
70
+ on fetch(:supervisor_servers) do
71
71
  if test "supervisorctl reread | grep 'No config updates to processes'"
72
72
  execute :supervisorctl, 'restart', "#{fetch(:supervisor_application)}:*"
73
73
  else
@@ -79,12 +79,13 @@ end
79
79
 
80
80
  namespace :load do
81
81
  task :defaults do
82
- set :supervisor_application, -> { fetch(:application) }
83
- set :supervisor_stage, -> { fetch(:stage) }
84
- set :supervisor_template, -> { "config/supervisor/#{fetch(:supervisor_stage)}.conf" }
85
- set :supervisor_target, -> { shared_path.join('supervisord.conf') }
86
- set :supervisor_confd, -> { "/etc/supervisor/conf.d/#{fetch(:supervisor_application)}.conf" }
87
- set :supervisor_roles, :all
82
+ set :supervisor_application, -> { fetch(:application) }
83
+ set :supervisor_stage, -> { fetch(:stage) }
84
+ set :supervisor_template, -> { "config/supervisor/#{fetch(:supervisor_stage)}.conf" }
85
+ set :supervisor_target, -> { shared_path.join('supervisord.conf') }
86
+ set :supervisor_confd, -> { "/etc/supervisor/conf.d/#{fetch(:supervisor_application)}.conf" }
87
+ set :supervisor_roles, :all
88
+ set :supervisor_servers, -> { release_roles(fetch(:supervisor_roles)) }
88
89
  end
89
90
  end
90
91
 
@@ -8,14 +8,14 @@ end
8
8
  namespace :token do
9
9
  desc 'Generate random token'
10
10
  task :generate do
11
- on roles(fetch(:token_roles)) do
11
+ on fetch(:token_servers) do
12
12
  info generate_token(fetch(:token_length))
13
13
  end
14
14
  end
15
15
 
16
16
  desc 'Upload random token as a file on remote server'
17
17
  task :upload do
18
- on roles(fetch(:token_roles)) do
18
+ on fetch(:token_servers) do
19
19
  token = generate_token(fetch(:token_length))
20
20
  io = StringIO.new(token)
21
21
  upload! io, fetch(:token_target)
@@ -28,6 +28,7 @@ namespace :load do
28
28
  set :token_length, 64
29
29
  set :token_target, -> { shared_path.join('.token') }
30
30
  set :token_roles, :app
31
+ set :token_servers, -> { release_roles(fetch(:token_roles)) }
31
32
  end
32
33
  end
33
34
 
@@ -1,41 +1,47 @@
1
- def build_cmd(service_name, action, sudo = false)
2
- cmd = "service #{service_name} #{action}"
3
- cmd = "sudo " + cmd if sudo
4
- cmd
5
- end
6
-
7
1
  namespace :upstart do
8
2
  desc "Start the application services"
9
3
  task :start do
10
- on roles(fetch(:upstart_roles)) do
11
- execute build_cmd(fetch(:upstart_service), 'start', fetch(:upstart_sudo))
4
+ on fetch(:upstart_servers) do
5
+ execute fetch(:upstart_cmd), 'start', fetch(:upstart_service)
12
6
  end
13
7
  end
14
8
 
15
9
  desc "Stop the application services"
16
10
  task :stop do
17
- on roles(fetch(:upstart_roles)) do
18
- execute build_cmd(fetch(:upstart_service), 'stop', fetch(:upstart_sudo))
11
+ on fetch(:upstart_servers) do
12
+ execute fetch(:upstart_cmd), 'stop', fetch(:upstart_service)
19
13
  end
20
14
  end
21
15
 
22
16
  desc "Restart the application services"
23
17
  task :restart do
24
- on roles(fetch(:upstart_roles)) do
25
- cmd_sq = build_cmd(fetch(:upstart_service), 'start', fetch(:upstart_sudo))
26
- cmd_sq += ' || '
27
- cmd_sq += build_cmd(fetch(:upstart_service), 'restart', fetch(:upstart_sudo))
18
+ on fetch(:upstart_servers) do
19
+ unless test(fetch(:upstart_cmd), 'start', fetch(:upstart_service))
20
+ execute fetch(:upstart_cmd), 'restart', fetch(:upstart_service)
21
+ end
22
+ end
23
+ end
28
24
 
29
- execute cmd_sq
25
+ desc "Prefixes the upstart command with sudo when :upstart_sudo => true"
26
+ task :configure_sudo do
27
+ if fetch(:upstart_sudo)
28
+ upstart_cmd = fetch(:upstart_cmd).to_s
29
+ SSHKit.config.command_map.prefix[upstart_cmd].push('sudo')
30
30
  end
31
31
  end
32
32
  end
33
33
 
34
+ Capistrano::DSL.stages.each do |stage|
35
+ after stage, 'upstart:configure_sudo'
36
+ end
37
+
34
38
  namespace :load do
35
39
  task :defaults do
36
- set :upstart_service, -> { fetch(:application) }
37
- set :upstart_sudo, false
38
- set :upstart_roles, :app
40
+ set :upstart_service, -> { fetch(:application) }
41
+ set :upstart_sudo, false
42
+ set :upstart_roles, :app
43
+ set :upstart_servers, -> { release_roles(fetch(:upstart_roles)) }
44
+ set :upstart_cmd, 'initctl'
39
45
  end
40
46
  end
41
47
 
@@ -1,3 +1,3 @@
1
1
  module Mascherano
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
metadata CHANGED
@@ -1,55 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mascherano
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alif Rachmawadi
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-31 00:00:00.000000000 Z
11
+ date: 2016-01-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: capistrano
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '3.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.3'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ! '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ! '>='
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0'
55
55
  description: Capistrano 3.x recipes
@@ -59,7 +59,7 @@ executables: []
59
59
  extensions: []
60
60
  extra_rdoc_files: []
61
61
  files:
62
- - .gitignore
62
+ - ".gitignore"
63
63
  - Gemfile
64
64
  - LICENSE
65
65
  - README.md
@@ -98,18 +98,19 @@ require_paths:
98
98
  - lib
99
99
  required_ruby_version: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ! '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  requirements:
106
- - - ! '>='
106
+ - - ">="
107
107
  - !ruby/object:Gem::Version
108
108
  version: '0'
109
109
  requirements: []
110
110
  rubyforge_project:
111
- rubygems_version: 2.1.9
111
+ rubygems_version: 2.4.5.1
112
112
  signing_key:
113
113
  specification_version: 4
114
114
  summary: Capistrano 3.x recipes
115
115
  test_files: []
116
+ has_rdoc: