hocho 0.2.1 → 0.2.2

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
- 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