chef-provisioning 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 +4 -4
- data/CHANGELOG.md +13 -2
- data/README.md +1 -1
- data/chef-provisioning.gemspec +1 -1
- data/lib/chef/provider/machine_file.rb +11 -6
- data/lib/chef/provisioning/convergence_strategy/install_cached.rb +1 -1
- data/lib/chef/provisioning/convergence_strategy/install_msi.rb +1 -1
- data/lib/chef/provisioning/convergence_strategy/install_sh.rb +1 -1
- data/lib/chef/provisioning/machine/unix_machine.rb +3 -0
- data/lib/chef/provisioning/transport/ssh.rb +5 -1
- data/lib/chef/provisioning/version.rb +1 -1
- metadata +11 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 381e65468f3aca78eefc7cb3d1d85b69cfbf3adc
|
4
|
+
data.tar.gz: fb541ffa04e6caf5ad8a6761279ecf4107729d59
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57a63940ce18f5754d0c4724485df86412f8b3b20660db4913ceee7bae8c04637493ecd85613180c1f6cf5d5272383734c1687c34a7f54a2fdef388d21744411
|
7
|
+
data.tar.gz: 590ed99e72fea98d02fcd9fc7370b1ea9914992c8255dbb3d622378c92a10f90d2cd9cd07d6ba1fd227a787eef3e6ebfc2d258d6dd594a7072e8489f39c7ef66
|
data/CHANGELOG.md
CHANGED
@@ -1,7 +1,18 @@
|
|
1
1
|
# Change Log
|
2
2
|
|
3
|
-
## [2.
|
4
|
-
[Full Changelog](https://github.com/chef/chef-provisioning/compare/v2.3.
|
3
|
+
## [2.4.0](https://github.com/chef/chef-provisioning/tree/2.4.0) (2017-06-27)
|
4
|
+
[Full Changelog](https://github.com/chef/chef-provisioning/compare/v2.3.2...2.4.0)
|
5
|
+
|
6
|
+
**Merged pull requests:**
|
7
|
+
|
8
|
+
- allow newer net-ssh-gateway [\#584](https://github.com/chef/chef-provisioning/pull/584) ([jjlimepoint](https://github.com/jjlimepoint))
|
9
|
+
- We can’t forward a socketless Zero server, so show a nice\(ish\) error [\#583](https://github.com/chef/chef-provisioning/pull/583) ([coderanger](https://github.com/coderanger))
|
10
|
+
- Ignore group/owner/mode attrs on Windows machine until implemented [\#582](https://github.com/chef/chef-provisioning/pull/582) ([paustin01](https://github.com/paustin01))
|
11
|
+
- Fix convergence\_options being steamrolled rather than merged [\#581](https://github.com/chef/chef-provisioning/pull/581) ([paustin01](https://github.com/paustin01))
|
12
|
+
- add digest command to unix\_machine.files\_different? [\#570](https://github.com/chef/chef-provisioning/pull/570) ([steversmith](https://github.com/steversmith))
|
13
|
+
|
14
|
+
## [v2.3.2](https://github.com/chef/chef-provisioning/tree/v2.3.2) (2017-04-21)
|
15
|
+
[Full Changelog](https://github.com/chef/chef-provisioning/compare/v2.3.1...v2.3.2)
|
5
16
|
|
6
17
|
**Merged pull requests:**
|
7
18
|
|
data/README.md
CHANGED
@@ -203,7 +203,7 @@ with_machine_options({
|
|
203
203
|
# The following are only available for Linux machines
|
204
204
|
install_sh_url: "https://www.chef.io/chef/install.sh", # <- DEFAULT, overwrite if necessary
|
205
205
|
install_sh_path: "/tmp/chef-install.sh", # <- DEFAULT, overwrite if necessary
|
206
|
-
install_sh_arguments: "-P
|
206
|
+
install_sh_arguments: "-P chefdk", # Additional commands to pass to install.sh
|
207
207
|
# The following are only available for Windows machines
|
208
208
|
install_msi_url: "foo://bar.com"
|
209
209
|
},
|
data/chef-provisioning.gemspec
CHANGED
@@ -16,7 +16,7 @@ Gem::Specification.new do |s|
|
|
16
16
|
|
17
17
|
s.add_dependency 'net-ssh', '>= 2.9', '< 5.0'
|
18
18
|
s.add_dependency 'net-scp', '~> 1.0'
|
19
|
-
s.add_dependency 'net-ssh-gateway', '
|
19
|
+
s.add_dependency 'net-ssh-gateway', '> 1.2', '< 3.0'
|
20
20
|
s.add_dependency 'inifile', '>= 2.0.2'
|
21
21
|
s.add_dependency 'cheffish', '>= 4.0', '< 14.0'
|
22
22
|
s.add_dependency 'winrm', '~> 2.0'
|
@@ -34,12 +34,17 @@ class MachineFile < Chef::Provider::LWRPBase
|
|
34
34
|
machine.upload_file(action_handler, new_resource.local_path, new_resource.path)
|
35
35
|
end
|
36
36
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
37
|
+
# At some point hopefully we will define WindowsMachine.set_attributes
|
38
|
+
# See https://github.com/chef/chef-provisioning/issues/285 for how to get
|
39
|
+
# rid of this unless check
|
40
|
+
unless machine.kind_of?(Chef::Provisioning::Machine::WindowsMachine)
|
41
|
+
attributes = {}
|
42
|
+
attributes[:group] = new_resource.group if new_resource.group
|
43
|
+
attributes[:owner] = new_resource.owner if new_resource.owner
|
44
|
+
attributes[:mode] = new_resource.mode if new_resource.mode
|
45
|
+
|
46
|
+
machine.set_attributes(action_handler, new_resource.path, attributes)
|
47
|
+
end
|
43
48
|
end
|
44
49
|
|
45
50
|
action :download do
|
@@ -22,7 +22,7 @@ module Provisioning
|
|
22
22
|
# - :chef_version, :prerelease, :package_cache_path
|
23
23
|
# - :package_metadata
|
24
24
|
def initialize(convergence_options, config)
|
25
|
-
convergence_options = Cheffish::MergedConfig.new(convergence_options, {
|
25
|
+
convergence_options = Cheffish::MergedConfig.new(convergence_options.to_hash, {
|
26
26
|
:client_rb_path => '/etc/chef/client.rb',
|
27
27
|
:client_pem_path => '/etc/chef/client.pem'
|
28
28
|
})
|
@@ -21,7 +21,7 @@ module Provisioning
|
|
21
21
|
def setup_convergence(action_handler, machine)
|
22
22
|
if !convergence_options.has_key?(:client_rb_path) || !convergence_options.has_key?(:client_pem_path)
|
23
23
|
system_drive = machine.system_drive
|
24
|
-
@convergence_options = Cheffish::MergedConfig.new(convergence_options, {
|
24
|
+
@convergence_options = Cheffish::MergedConfig.new(convergence_options.to_hash, {
|
25
25
|
:client_rb_path => "#{system_drive}\\chef\\client.rb",
|
26
26
|
:client_pem_path => "#{system_drive}\\chef\\client.pem",
|
27
27
|
:install_script_path => "#{system_drive}\\chef\\\install.ps1"
|
@@ -9,7 +9,7 @@ module Provisioning
|
|
9
9
|
@@install_sh_cache = {}
|
10
10
|
|
11
11
|
def initialize(convergence_options, config)
|
12
|
-
convergence_options = Cheffish::MergedConfig.new(convergence_options, {
|
12
|
+
convergence_options = Cheffish::MergedConfig.new(convergence_options.to_hash, {
|
13
13
|
:client_rb_path => '/etc/chef/client.rb',
|
14
14
|
:client_pem_path => '/etc/chef/client.pem'
|
15
15
|
})
|
@@ -46,6 +46,9 @@ module Provisioning
|
|
46
46
|
result = transport.execute("md5sum -b #{path}", :read_only => true)
|
47
47
|
unless result.exitstatus == 0
|
48
48
|
result = transport.execute("md5 -r #{path}", :read_only => true)
|
49
|
+
unless result.exitstatus == 0
|
50
|
+
result = transport.execute("digest -a md5 #{path}", :read_only => true)
|
51
|
+
end
|
49
52
|
end
|
50
53
|
result.error!
|
51
54
|
remote_sum = result.stdout.split(' ')[0]
|
@@ -173,7 +173,11 @@ module Provisioning
|
|
173
173
|
|
174
174
|
def make_url_available_to_remote(local_url)
|
175
175
|
uri = URI(local_url)
|
176
|
-
if
|
176
|
+
if uri.scheme == 'chefzero' && !ChefZero::SocketlessServerMap.server_on_port(uri.port).server
|
177
|
+
# There is no .server for a socketless, for a socket-d server it would
|
178
|
+
# be a WEBrick::HTTPServer object.
|
179
|
+
raise 'Cannot forward a socketless Chef Zero server, see https://docs.chef.io/deprecations_local_listen.html for more information'
|
180
|
+
elsif is_local_machine(uri.host)
|
177
181
|
port, host = forward_port(uri.port, uri.host, uri.port, 'localhost')
|
178
182
|
if !port
|
179
183
|
# Try harder if the port is already taken
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chef-provisioning
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- John Keiser
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: net-ssh
|
@@ -48,16 +48,22 @@ dependencies:
|
|
48
48
|
name: net-ssh-gateway
|
49
49
|
requirement: !ruby/object:Gem::Requirement
|
50
50
|
requirements:
|
51
|
-
- - "
|
51
|
+
- - ">"
|
52
52
|
- !ruby/object:Gem::Version
|
53
53
|
version: '1.2'
|
54
|
+
- - "<"
|
55
|
+
- !ruby/object:Gem::Version
|
56
|
+
version: '3.0'
|
54
57
|
type: :runtime
|
55
58
|
prerelease: false
|
56
59
|
version_requirements: !ruby/object:Gem::Requirement
|
57
60
|
requirements:
|
58
|
-
- - "
|
61
|
+
- - ">"
|
59
62
|
- !ruby/object:Gem::Version
|
60
63
|
version: '1.2'
|
64
|
+
- - "<"
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: '3.0'
|
61
67
|
- !ruby/object:Gem::Dependency
|
62
68
|
name: inifile
|
63
69
|
requirement: !ruby/object:Gem::Requirement
|
@@ -303,7 +309,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
303
309
|
version: '0'
|
304
310
|
requirements: []
|
305
311
|
rubyforge_project:
|
306
|
-
rubygems_version: 2.
|
312
|
+
rubygems_version: 2.6.12
|
307
313
|
signing_key:
|
308
314
|
specification_version: 4
|
309
315
|
summary: A library for creating machines and infrastructures idempotently in Chef.
|