knife-zero 2.3.2 → 2.4.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
  SHA256:
3
- metadata.gz: a62b7b04af9df122f587f761f40f5b648a1302561c441545b3655cb7ae350d93
4
- data.tar.gz: 3afcb78f362a483216f9a19239c03ab3f36c482d9423d7d4277dc92fec7470ad
3
+ metadata.gz: ec45a99b4e00747009e914be5be5e53ca9ee490bbb4213ae97a9da1a585f7e51
4
+ data.tar.gz: c3750a145a402bfe5eaa96bb5fc1d0fdbcddfa0fc087cfcf25f67d46815739fc
5
5
  SHA512:
6
- metadata.gz: 697c2636b742cb7256043904704fa139748cc881bbce0f96e9ecd443d468ac41bddd5a91175cf364f883f245a3d1012725d669f2f4c1f29afc71fa90621b5148
7
- data.tar.gz: '0089e7a25b9ef24f9f00b16ca3c16a40fc773e9efb9a9b0ee0435b8ef3685560636acb69856bba160ea6daef25157f63d1dc17003208bf8003174b90b24b0b37'
6
+ metadata.gz: 12c381d16c23b23b83e7f3891d1d54e43205bdcbf034e675da43466a085999227c555b8bb76230363d3bf10490766046fd9523093faf0520fa080586447a1ba8
7
+ data.tar.gz: 6bd256d008478efec34fd27cb353fcd7712ffd2875d52875f1ef0b2944243aac31c8b7b490eb6a1cca702f02c4f2f5dc2119f4327b9dde324ddfe83ff654248d
data/CHANGELOG.md CHANGED
@@ -4,6 +4,11 @@
4
4
 
5
5
  none.
6
6
 
7
+ ## v2.4.0
8
+
9
+ - follow core changes.
10
+ - ssh_command changed at chef-17.3.27
11
+
7
12
  ## v2.3.2
8
13
 
9
14
  - follow core changes, they uses autoload.
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Knife-Plugin Zero
2
2
 
3
- - current_master: [![Circle CI](https://circleci.com/gh/higanworks/knife-zero/tree/master.svg?style=svg)](https://circleci.com/gh/higanworks/knife-zero/tree/master)
3
+ - current_main: [![Circle CI](https://circleci.com/gh/higanworks/knife-zero/tree/main.svg?style=svg)](https://circleci.com/gh/higanworks/knife-zero/tree/main)
4
4
  - integration_with_edge_chef: [![Circle CI](https://circleci.com/gh/higanworks/knife-zero/tree/integration_testedge.svg?style=svg)](https://circleci.com/gh/higanworks/knife-zero/tree/integration_testedge)
5
5
 
6
6
  [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/higanworks/knife-zero?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
@@ -17,7 +17,7 @@ Run chef-client at remote node with chef-zero(local-mode) via HTTP over SSH port
17
17
  - [Knife-Zero Document](https://knife-zero.github.io)
18
18
  - [Knife-Zero Document(Ja)](https://knife-zero.github.io/ja/)
19
19
 
20
- - [CHANGELOG](https://github.com/higanworks/knife-zero/blob/master/CHANGELOG.md)
20
+ - [CHANGELOG](https://github.com/higanworks/knife-zero/blob/main/CHANGELOG.md)
21
21
 
22
22
  ## Requirements
23
23
 
data/knife-zero.gemspec CHANGED
@@ -29,4 +29,5 @@ Gem::Specification.new do |spec|
29
29
  spec.add_development_dependency 'test-unit-rr'
30
30
 
31
31
  spec.add_runtime_dependency 'chef', '>= 15.0'
32
+ spec.add_runtime_dependency 'knife', '>= 17.0'
32
33
  end
@@ -1,4 +1,5 @@
1
1
  require 'chef/knife/ssh'
2
+ require 'chef/version'
2
3
 
3
4
  class Chef
4
5
  class Knife
@@ -9,6 +10,7 @@ class Chef
9
10
  require 'knife-zero/helper'
10
11
  end
11
12
 
13
+ if Gem::Version.new(Chef::VERSION) < Gem::Version.new("17.3.27")
12
14
  def ssh_command(command, subsession = nil) # rubocop:disable Metrics/PerceivedComplexity, Metrics/AbcSize, Metrics/CyclomaticComplexity
13
15
  if config[:client_version]
14
16
  case config[:alter_project]
@@ -40,6 +42,40 @@ class Chef
40
42
  ui.error e.backtrace.join("\n")
41
43
  exit 1
42
44
  end
45
+ else
46
+ # def ssh_command(command, subsession = nil) # rubocop:disable Metrics/PerceivedComplexity, Metrics/AbcSize, Metrics/CyclomaticComplexity
47
+ def ssh_command(command, session_list = session) # rubocop:disable Metrics/PerceivedComplexity, Metrics/AbcSize, Metrics/CyclomaticComplexity
48
+ if config[:client_version]
49
+ case config[:alter_project]
50
+ when 'cinc'
51
+ super(%{/opt/cinc/embedded/bin/ruby -ropen-uri -e 'puts open("https://omnitruck.cinc.sh/install.sh").read' | sudo sh -s -- -v #{config[:client_version]}})
52
+ else
53
+ super(%{/opt/chef/embedded/bin/ruby -ropen-uri -e 'puts open("https://omnitruck.chef.io/chef/install.sh").read' | sudo sh -s -- -v #{config[:client_version]}})
54
+ end
55
+ end
56
+
57
+ if config[:json_attribs]
58
+ Chef::Log.info "Onetime Attributes: #{config[:chef_client_json]}"
59
+ super(build_client_json)
60
+ end
61
+
62
+ chef_zero_port = config[:chef_zero_port] ||
63
+ Chef::Config[:knife][:chef_zero_port] ||
64
+ URI.parse(Chef::Config.chef_server_url).port
65
+ chef_zero_host = config[:chef_zero_host] ||
66
+ Chef::Config[:knife][:chef_zero_host] ||
67
+ '127.0.0.1'
68
+ session_list.servers.each do |server|
69
+ session = server.session(true)
70
+ session.forward.remote(chef_zero_port, chef_zero_host, ::Knife::Zero::Helper.zero_remote_port)
71
+ end
72
+ super
73
+ rescue => e # rubocop:disable Style/RescueStandardError
74
+ ui.error(e.class.to_s + e.message)
75
+ ui.error e.backtrace.join("\n")
76
+ exit 1
77
+ end
78
+ end
43
79
 
44
80
  def build_client_json
45
81
  <<-SCRIPT
@@ -1,6 +1,6 @@
1
1
  module Knife
2
2
  module Zero
3
- VERSION = '2.3.2'.freeze
3
+ VERSION = '2.4.0'.freeze
4
4
  MAJOR, MINOR, TINY = VERSION.split('.')
5
5
  end
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: knife-zero
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.3.2
4
+ version: 2.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - sawanoboly
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-10 00:00:00.000000000 Z
11
+ date: 2021-07-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -150,6 +150,20 @@ dependencies:
150
150
  - - ">="
151
151
  - !ruby/object:Gem::Version
152
152
  version: '15.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: knife
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '17.0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '17.0'
153
167
  description: Run chef-client at remote node with chef-zero(local-mode) via HTTP over
154
168
  SSH port fowarding.
155
169
  email:
@@ -192,7 +206,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
192
206
  - !ruby/object:Gem::Version
193
207
  version: '0'
194
208
  requirements: []
195
- rubygems_version: 3.1.2
209
+ rubygems_version: 3.2.22
196
210
  signing_key:
197
211
  specification_version: 4
198
212
  summary: Run chef-client at remote node with chef-zero(local-mode) via HTTP over SSH