capistrano-nodenv 0.0.1 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b5ea87d56b1b281249803bb05273a80d4bf9b411
4
- data.tar.gz: 28c7ff7eabadb3b96db39fb39bfc80335a1026ac
3
+ metadata.gz: aec274bb18a78c7dcaa8f2e08fb9e807293f7b32
4
+ data.tar.gz: 09aa30e24538e95eb5cbfa99f8d528a687026998
5
5
  SHA512:
6
- metadata.gz: 28a97706c96d2fc97b6203fdfbca046dd5c977c5f13ccba696703cf7511ce21742cbf427e43fb054942490214b71f820947f9009bbcfadcef837f5f2c8014df5
7
- data.tar.gz: b664d777037a520b29e7f382338a2814d2d1d1321190f898c7efa3643c6927eb241fab9610ca2653a93417e67579cebee23d0f9a86edd7e16451890b72a18873
6
+ metadata.gz: a62d08c6a5f918ca5230dc70fee6a01c1d982c524b2b578be267e0bcbbe25d6128c08d3d78d84b2cda3bcbcfc8575f200fa63a586319a322c2b178fe7179c898
7
+ data.tar.gz: e3db5fc126f8f4abc96c897b7fa55749773fd196002ad87a6c44f5e88f617eb746cbc8e7cb63199af2000827c68c4c8106e75e4a839e6cac8d3d641a7912646d
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
@@ -0,0 +1,3 @@
1
+ # 1.0.0
2
+
3
+ * Added ability to setup custom `nodenv_roles` variable (default: :all).
data/README.md CHANGED
@@ -4,8 +4,8 @@
4
4
 
5
5
  Add this line to your application's Gemfile:
6
6
 
7
- gem 'capistrano', github: 'capistrano/capistrano', branch: 'v3'
8
- gem 'capistrano-nodenv', github: "platanus/nodenv"
7
+ gem 'capistrano', '~> 3.1'
8
+ gem 'capistrano-nodenv', '~> 1.0'
9
9
 
10
10
  And then execute:
11
11
 
@@ -20,6 +20,9 @@ And then execute:
20
20
 
21
21
  set :nodenv_type, :user # or :system, depends on your nodenv setup
22
22
  set :nodenv_node, '0.10.3'
23
+ set :nodenv_prefix, "NODENV_ROOT=#{fetch(:nodenv_path)} NODENV_VERSION=#{fetch(:nodenv_ruby)} #{fetch(:nodenv_path)}/bin/nodenv exec"
24
+ set :nodenv_map_bins, %w{node npm}
25
+ set :nodenv_roles, :all # default value
23
26
 
24
27
  If your nodenv is located in some custom path, you can use `nodenv_custom_path` to set it.
25
28
 
@@ -4,17 +4,17 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "capistrano-nodenv"
7
- gem.version = '0.0.1'
7
+ gem.version = '1.0.0'
8
8
  gem.authors = ["Juan Ignacio Donoso"]
9
9
  gem.email = ["jidonoso@gmail.com"]
10
10
  gem.description = %q{nodenv integration for Capistrano}
11
11
  gem.summary = %q{nodenv integration for Capistrano}
12
- gem.homepage = "https://github.com/capistrano/nodenv"
12
+ gem.homepage = "https://github.com/platanus/capistrano-nodenv"
13
13
 
14
14
  gem.files = `git ls-files`.split($/)
15
15
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
16
16
  gem.require_paths = ["lib"]
17
17
 
18
- gem.add_dependency 'capistrano'
19
-
18
+ gem.add_dependency 'capistrano', '~> 3.1'
19
+ gem.add_dependency 'sshkit', '~> 1.3'
20
20
  end
@@ -1,21 +1,6 @@
1
- SSHKit.config.command_map = Hash.new do |hash, key|
2
- if fetch(:nodenv_map_bins).include?(key.to_s)
3
- prefix = "NODENV_ROOT=#{fetch(:nodenv_path)} NODENV_VERSION=#{fetch(:nodenv_node)} #{fetch(:nodenv_path)}/bin/nodenv exec"
4
- hash[key] = "#{prefix} #{key}"
5
- else
6
- hash[key] = key
7
- end
8
- end
9
-
10
- namespace :deploy do
11
- before :starting, :hook_nodenv_bins do
12
- invoke :'nodenv:check'
13
- end
14
- end
15
-
16
1
  namespace :nodenv do
17
- task :check do
18
- on roles(:all) do
2
+ task :validate do
3
+ on roles(fetch(:nodenv_roles)) do
19
4
  nodenv_node = fetch(:nodenv_node)
20
5
  if nodenv_node.nil?
21
6
  error "nodenv: nodenv_node is not set"
@@ -28,11 +13,25 @@ namespace :nodenv do
28
13
  end
29
14
  end
30
15
  end
16
+
17
+ task :map_bins do
18
+ SSHKit.config.default_env.merge!({ nodenv_root: fetch(:nodenv_path), nodenv_version: fetch(:nodenv_ruby) })
19
+ nodenv_prefix = fetch(:nodenv_prefix, proc { "#{fetch(:nodenv_path)}/bin/nodenv exec" })
20
+ SSHKit.config.command_map[:nodenv] = "#{fetch(:nodenv_path)}/bin/nodenv"
21
+
22
+ fetch(:nodenv_map_bins).each do |command|
23
+ SSHKit.config.command_map.prefix[command.to_sym].unshift(nodenv_prefix)
24
+ end
25
+ end
26
+ end
27
+
28
+ Capistrano::DSL.stages.each do |stage|
29
+ after stage, 'nodenv:validate'
30
+ after stage, 'nodenv:map_bins'
31
31
  end
32
32
 
33
33
  namespace :load do
34
34
  task :defaults do
35
-
36
35
  set :nodenv_path, -> {
37
36
  nodenv_path = fetch(:nodenv_custom_path)
38
37
  nodenv_path ||= if fetch(:nodenv_type, :user) == :system
@@ -42,6 +41,8 @@ namespace :load do
42
41
  end
43
42
  }
44
43
 
44
+ set :nodenv_roles, fetch(:nodenv_roles, :all)
45
+
45
46
  set :nodenv_node_dir, -> { "#{fetch(:nodenv_path)}/versions/#{fetch(:nodenv_node)}" }
46
47
  set :nodenv_map_bins, %w{node npm}
47
48
  end
metadata CHANGED
@@ -1,29 +1,43 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capistrano-nodenv
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Ignacio Donoso
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-02 00:00:00.000000000 Z
11
+ date: 2014-03-19 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
- version: '0'
19
+ version: '3.1'
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
- version: '0'
26
+ version: '3.1'
27
+ - !ruby/object:Gem::Dependency
28
+ name: sshkit
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '1.3'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '1.3'
27
41
  description: nodenv integration for Capistrano
28
42
  email:
29
43
  - jidonoso@gmail.com
@@ -31,6 +45,8 @@ executables: []
31
45
  extensions: []
32
46
  extra_rdoc_files: []
33
47
  files:
48
+ - ".gitignore"
49
+ - CHANGELOG.md
34
50
  - Gemfile
35
51
  - README.md
36
52
  - Rakefile
@@ -38,7 +54,7 @@ files:
38
54
  - lib/capistrano-nodenv.rb
39
55
  - lib/capistrano/nodenv.rb
40
56
  - lib/capistrano/tasks/nodenv.rake
41
- homepage: https://github.com/capistrano/nodenv
57
+ homepage: https://github.com/platanus/capistrano-nodenv
42
58
  licenses: []
43
59
  metadata: {}
44
60
  post_install_message:
@@ -47,17 +63,17 @@ require_paths:
47
63
  - lib
48
64
  required_ruby_version: !ruby/object:Gem::Requirement
49
65
  requirements:
50
- - - '>='
66
+ - - ">="
51
67
  - !ruby/object:Gem::Version
52
68
  version: '0'
53
69
  required_rubygems_version: !ruby/object:Gem::Requirement
54
70
  requirements:
55
- - - '>='
71
+ - - ">="
56
72
  - !ruby/object:Gem::Version
57
73
  version: '0'
58
74
  requirements: []
59
75
  rubyforge_project:
60
- rubygems_version: 2.0.2
76
+ rubygems_version: 2.0.14
61
77
  signing_key:
62
78
  specification_version: 4
63
79
  summary: nodenv integration for Capistrano