hocho 0.2.1 → 0.2.2

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
- SHA1:
3
- metadata.gz: 5e04e75ca8c584dd773cfb620201e0eb5989d941
4
- data.tar.gz: c173c92864d2958c60d2081850b5e4b5aa991378
2
+ SHA256:
3
+ metadata.gz: b86467c121e99a2b09b6a09ea852aaa61edcf3cd0ced7f068184284950d5bd8b
4
+ data.tar.gz: e9c851f4e6d6d7040c3455c21d91e5e674a7abe95fecd352a2b1319701e65da5
5
5
  SHA512:
6
- metadata.gz: ea419648b307939144ab3824aa838ec6a85158118cfcc6457ed043d4cc52fa2378e89fa70e34e6c4b10be89b7ad35f88e2d11bb0e0b53d17cf8371a579ed5e0d
7
- data.tar.gz: a9f1bbab979b86ad077af2b8e661840db73c70b852aa330b2fb13648aa78164bbb453cfee5b89ec59e8b5b73b60f08d09b415289d80f0593017f0785995d8569
6
+ metadata.gz: 6b94585fa2224c38601e50173206fc35499f6e810817491ce0c556e9dfe55bbbc62b309d81139a4d40855c12c19be05cc51deb7cf265bd8970e20e466cae45a2
7
+ data.tar.gz: 7ce19d7a13bb657ab41b511eb290306980d1fba32b3b7c8e7011f8a12696bfcfca030ef0c3d2c17c8699a6495f38a61b7147f322b421f82bde98bb66bda762f5
@@ -51,7 +51,7 @@ module Hocho
51
51
 
52
52
  desc "apply HOST", "run itamae"
53
53
  method_option :sudo, type: :boolean, default: false
54
- method_option :dry_run, type: :boolean, default: false, alias: %w(-n)
54
+ method_option :dry_run, type: :boolean, default: false, aliases: %w(-n)
55
55
  method_option :driver, type: :string
56
56
  def apply(name)
57
57
  host = inventory.filter(name: name).first
@@ -53,7 +53,12 @@ module Hocho
53
53
  private
54
54
 
55
55
  def prepare_sudo(password = host.sudo_password)
56
- raise "sudo password not present" if !host.nopasswd_sudo? && password.nil?
56
+ raise "sudo password not present" if host.sudo_required? && !host.nopasswd_sudo? && password.nil?
57
+
58
+ unless host.sudo_required?
59
+ yield nil, nil, ""
60
+ return
61
+ end
57
62
 
58
63
  if host.nopasswd_sudo?
59
64
  yield nil, nil, "sudo "
@@ -70,6 +70,10 @@ module Hocho
70
70
  @sudo_password || properties[:sudo_password] || ENV['SUDO_PASSWORD']
71
71
  end
72
72
 
73
+ def sudo_required?
74
+ properties.fetch(:sudo_required, true)
75
+ end
76
+
73
77
  def nopasswd_sudo?
74
78
  !!properties[:nopasswd_sudo]
75
79
  end
@@ -22,7 +22,7 @@ module Hocho
22
22
 
23
23
  def filter(filters)
24
24
  filters = filters.map do |name, value|
25
- [name.to_s, value.to_s.split(?,) { |_| /#{Regexp.escape(_).gsub(/\\*/,'.*')}/ }]
25
+ [name.to_s, value.to_s.split(?,).map! { |_| /#{Regexp.escape(_).gsub(/\\*/,'.*')}/ }]
26
26
  end.to_h
27
27
 
28
28
  hosts.select do |host|
@@ -1,3 +1,3 @@
1
1
  module Hocho
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hocho
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - sorah (Shota Fukumori)
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-08 00:00:00.000000000 Z
11
+ date: 2018-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -168,7 +168,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
168
168
  version: '0'
169
169
  requirements: []
170
170
  rubyforge_project:
171
- rubygems_version: 2.6.8
171
+ rubygems_version: 2.7.6
172
172
  signing_key:
173
173
  specification_version: 4
174
174
  summary: Server provisioning tool with itamae