chef-provisioning 2.3.2 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
- 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.
|