chef 12.21.26-universal-mingw32 → 12.21.31-universal-mingw32

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
  SHA1:
3
- metadata.gz: 0ac644008e124d28a2c538c172e6fd21a25bfec5
4
- data.tar.gz: afe1b67828c28446ec4a4532e0249980f45a3ee5
3
+ metadata.gz: aa080c1bbd9e2b4df2ffb1bbbd2c832e2da69f37
4
+ data.tar.gz: '0842b89ef02885c1df1101ddd889edf1af21f024'
5
5
  SHA512:
6
- metadata.gz: 05bf91b461045a36fa51dada88afe37344e434f328aa68cf88b48076075075843fd2ed0abf6d927dd7ecda0670714cfdaabe7c45974b7847504cc5aed0704c58
7
- data.tar.gz: 28915ac94354c2279101edd735ae4b536d95b302fe7847ed5480b1b8a9d9a0a62adb3d00087ba22664588830e553dcb4b1a1967964023804b0f6bbe59041a56a
6
+ metadata.gz: c30feccb3836210edca422a18aa273b78a6518eb481a003a9c802ac36d4bdeca1dcff86af368f17d32837ecf211acc89f35dcf9e385652bd5a4486419cbaf360
7
+ data.tar.gz: fa6d1049404a895bc9595c0d579818f4211b3e93f796a08ea524c7d9c7325e50d6d5b8f91eecf316939c60e600cee881a68d282724e0f679acc64582397a1de3
data/VERSION CHANGED
@@ -1 +1 @@
1
- 12.21.26
1
+ 12.21.31
@@ -6,12 +6,6 @@ class TopCookbooks < Chef::Resource
6
6
  # Disabling all windows tests until winrm issue is properly settled.
7
7
  #
8
8
  action :run do
9
- cookbook_kitchen "#{command} docker" do
10
- end
11
-
12
- cookbook_kitchen "#{command} git" do
13
- end
14
-
15
9
  cookbook_kitchen "#{command} learn-the-basics-ubuntu" do
16
10
  repository "learn-chef/learn-chef-acceptance"
17
11
  cookbook_relative_dir "cookbooks/learn-the-basics-ubuntu"
@@ -63,30 +63,98 @@ class Chef
63
63
  @ifconfig_success = true
64
64
  @interfaces = {}
65
65
 
66
- @status = shell_out("ifconfig")
67
- @status.stdout.each_line do |line|
68
- if !line[0..9].strip.empty?
69
- @int_name = line[0..9].strip
70
- @interfaces[@int_name] = { "hwaddr" => (line =~ /(HWaddr)/ ? ($') : "nil").strip.chomp }
71
- else
72
- @interfaces[@int_name]["inet_addr"] = (line =~ /inet addr:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /inet addr:/
73
- @interfaces[@int_name]["bcast"] = (line =~ /Bcast:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Bcast:/
74
- @interfaces[@int_name]["mask"] = (line =~ /Mask:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Mask:/
75
- @interfaces[@int_name]["mtu"] = (line =~ /MTU:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /MTU:/
76
- @interfaces[@int_name]["metric"] = (line =~ /Metric:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Metric:/
66
+ @ifconfig_version = nil
67
+
68
+ @net_tools_version = shell_out("ifconfig --version")
69
+ @net_tools_version.stderr.each_line do |line|
70
+ if line =~ /^net-tools (\d+.\d+)/
71
+ @ifconfig_version = line.match(/^net-tools (\d+.\d+)/)[1]
72
+ end
73
+ end
74
+
75
+ if @ifconfig_version.nil?
76
+ raise "net-tools not found - this is required for ifconfig"
77
+ elsif @ifconfig_version.to_f < 2.0
78
+ # Example output for 1.60 is as follows: (sanitized but format intact)
79
+ # eth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
80
+ # inet addr:192.168.1.1 Bcast:192.168.0.1 Mask:255.255.248.0
81
+ # inet6 addr: 0000::00:0000:0000:0000/64 Scope:Link
82
+ # UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
83
+ # RX packets:65158911 errors:0 dropped:0 overruns:0 frame:0
84
+ # TX packets:41723949 errors:0 dropped:0 overruns:0 carrier:0
85
+ # collisions:0 txqueuelen:1000
86
+ # RX bytes:42664658792 (39.7 GiB) TX bytes:52722603938 (49.1 GiB)
87
+ # Interrupt:30
88
+ @status = shell_out("ifconfig")
89
+ @status.stdout.each_line do |line|
90
+ if !line[0..9].strip.empty?
91
+ @int_name = line[0..9].strip
92
+ @interfaces[@int_name] = { "hwaddr" => (line =~ /(HWaddr)/ ? ($') : "nil").strip.chomp }
93
+ else
94
+ @interfaces[@int_name]["inet_addr"] = (line =~ /inet addr:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /inet addr:/
95
+ @interfaces[@int_name]["bcast"] = (line =~ /Bcast:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Bcast:/
96
+ @interfaces[@int_name]["mask"] = (line =~ /Mask:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Mask:/
97
+ @interfaces[@int_name]["mtu"] = (line =~ /MTU:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /MTU:/
98
+ @interfaces[@int_name]["metric"] = (line =~ /Metric:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Metric:/
99
+ end
100
+
101
+ next unless @interfaces.key?(new_resource.device)
102
+ @interface = @interfaces.fetch(new_resource.device)
103
+
104
+ current_resource.target(new_resource.target)
105
+ current_resource.device(new_resource.device)
106
+ current_resource.inet_addr(@interface["inet_addr"])
107
+ current_resource.hwaddr(@interface["hwaddr"])
108
+ current_resource.bcast(@interface["bcast"])
109
+ current_resource.mask(@interface["mask"])
110
+ current_resource.mtu(@interface["mtu"])
111
+ current_resource.metric(@interface["metric"])
77
112
  end
113
+ elsif @ifconfig_version.to_f >= 2.0
114
+ # Example output for 2.10-alpha is as follows: (sanitized but format intact)
115
+ # eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
116
+ # inet 192.168.1.1 netmask 255.255.240.0 broadcast 192.168.0.1
117
+ # inet6 0000::0000:000:0000:0000 prefixlen 64 scopeid 0x20<link>
118
+ # ether 00:00:00:00:00:00 txqueuelen 1000 (Ethernet)
119
+ # RX packets 2383836 bytes 1642630840 (1.5 GiB)
120
+ # RX errors 0 dropped 0 overruns 0 frame 0
121
+ # TX packets 1244218 bytes 977339327 (932.0 MiB)
122
+ # TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
123
+ @status = shell_out("ifconfig")
124
+ @status.stdout.each_line do |line|
125
+ addr_regex = /^(\w+):?(\d*):?\ .+$/
126
+ if line =~ addr_regex
127
+ if line.match(addr_regex).nil?
128
+ @int_name = "nil"
129
+ elsif line.match(addr_regex)[2] == ""
130
+ @int_name = line.match(addr_regex)[1]
131
+ @interfaces[@int_name] = Hash.new
132
+ @interfaces[@int_name]["mtu"] = (line =~ /mtu (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /mtu/ && @interfaces[@int_name]["mtu"].nil?
133
+ else
134
+ @int_name = "#{line.match(addr_regex)[1]}:#{line.match(addr_regex)[2]}"
135
+ @interfaces[@int_name] = Hash.new
136
+ @interfaces[@int_name]["mtu"] = (line =~ /mtu (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /mtu/ && @interfaces[@int_name]["mtu"].nil?
137
+ end
138
+ else
139
+ @interfaces[@int_name]["inet_addr"] = (line =~ /inet (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /inet/ && @interfaces[@int_name]["inet_addr"].nil?
140
+ @interfaces[@int_name]["bcast"] = (line =~ /broadcast (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /broadcast/ && @interfaces[@int_name]["bcast"].nil?
141
+ @interfaces[@int_name]["mask"] = (line =~ /netmask (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /netmask/ && @interfaces[@int_name]["mask"].nil?
142
+ @interfaces[@int_name]["hwaddr"] = (line =~ /ether (\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /ether/ && @interfaces[@int_name]["hwaddr"].nil?
143
+ @interfaces[@int_name]["metric"] = (line =~ /Metric:(\S+)/ ? Regexp.last_match(1) : "nil") if line =~ /Metric:/ && @interfaces[@int_name]["metric"].nil?
144
+ end
78
145
 
79
- next unless @interfaces.key?(new_resource.device)
80
- @interface = @interfaces.fetch(new_resource.device)
81
-
82
- current_resource.target(new_resource.target)
83
- current_resource.device(new_resource.device)
84
- current_resource.inet_addr(@interface["inet_addr"])
85
- current_resource.hwaddr(@interface["hwaddr"])
86
- current_resource.bcast(@interface["bcast"])
87
- current_resource.mask(@interface["mask"])
88
- current_resource.mtu(@interface["mtu"])
89
- current_resource.metric(@interface["metric"])
146
+ next unless @interfaces.key?(new_resource.device)
147
+ @interface = @interfaces.fetch(new_resource.device)
148
+
149
+ current_resource.target(new_resource.target)
150
+ current_resource.device(new_resource.device)
151
+ current_resource.inet_addr(@interface["inet_addr"])
152
+ current_resource.hwaddr(@interface["hwaddr"])
153
+ current_resource.bcast(@interface["bcast"])
154
+ current_resource.mask(@interface["mask"])
155
+ current_resource.mtu(@interface["mtu"])
156
+ current_resource.metric(@interface["metric"])
157
+ end
90
158
  end
91
159
  current_resource
92
160
  end
@@ -21,7 +21,7 @@
21
21
 
22
22
  class Chef
23
23
  CHEF_ROOT = File.expand_path("../..", __FILE__)
24
- VERSION = "12.21.26"
24
+ VERSION = "12.21.31"
25
25
  end
26
26
 
27
27
  #
@@ -20,7 +20,7 @@ require "functional/resource/base"
20
20
  require "chef/mixin/shell_out"
21
21
 
22
22
  # run this test only for following platforms.
23
- include_flag = !(%w{ubuntu centos aix}.include?(ohai[:platform]))
23
+ include_flag = !(%w{amazon debian aix}.include?(ohai[:platform_family]) || (ohai[:platform_family] == "rhel" && ohai[:platform_version].to_i < 7))
24
24
 
25
25
  describe Chef::Resource::Ifconfig, :requires_root, :skip_travis, :external => include_flag do
26
26
  # This test does not work in travis because there is no eth0
@@ -22,7 +22,7 @@ require "chef/mixin/shell_out"
22
22
  require "tmpdir"
23
23
 
24
24
  # run this test only for following platforms.
25
- include_flag = !(%w{ubuntu centos aix solaris2}.include?(ohai[:platform]))
25
+ include_flag = !(%w{debian rhel amazon aix solaris2}.include?(ohai[:platform_family]))
26
26
 
27
27
  describe Chef::Resource::Mount, :requires_root, :skip_travis, :external => include_flag do
28
28
  # Disabled in travis because it refuses to let us mount a ramdisk. /dev/ramX does not
@@ -35,15 +35,19 @@ describe Chef::Resource::Mount, :requires_root, :skip_travis, :external => inclu
35
35
  def setup_device_for_mount
36
36
  # use ramdisk for creating a test device for mount.
37
37
  # This can cleaner if we have chef resource/provider for ramdisk.
38
- case ohai[:platform]
38
+ case ohai[:platform_family]
39
39
  when "aix"
40
40
  # On AIX, we can't create a ramdisk inside a WPAR, so we use
41
41
  # a "namefs" mount against / to test
42
42
  # https://www-304.ibm.com/support/knowledgecenter/ssw_aix_71/com.ibm.aix.performance/namefs_file_sys.htm
43
43
  device = "/"
44
44
  fstype = "namefs"
45
- when "ubuntu", "centos"
45
+ when "debian", "rhel", "amazon"
46
46
  device = "/dev/ram1"
47
+ unless File.exist?(device)
48
+ shell_out("mknod -m 660 #{device} b 1 0")
49
+ shell_out("chown root:disk #{device}")
50
+ end
47
51
  shell_out("ls -1 /dev/ram*").stdout.each_line do |d|
48
52
  if shell_out("mount | grep #{d}").exitstatus == "1"
49
53
  # this device is not mounted, so use it.
@@ -646,10 +646,10 @@ describe Chef::Provider::User::Useradd, metadata do
646
646
  expect(@error.message).to include("Cannot unlock the password")
647
647
  end
648
648
  elsif %w{rhel}.include?(OHAI_SYSTEM["platform_family"]) &&
649
- OHAI_SYSTEM["platform_version"].to_f == 6.8
650
- # usermod -U returns following message for rhel68 on s390x platforms
651
- # usermod: unlocking the user's password would result in a passwordless account.
652
- #You should set a password with usermod -p to unlock this user's password.
649
+ (Chef::VersionConstraint.new("~> 6.8").include?(OHAI_SYSTEM["platform_version"].to_f) || Chef::VersionConstraint.new("~> 7.3").include?(OHAI_SYSTEM["platform_version"].to_f))
650
+ # RHEL 6.8 and 7.3 ship with a fixed `usermod` command
651
+ # Reference: https://access.redhat.com/errata/RHBA-2016:0864
652
+ # Reference: https://access.redhat.com/errata/RHBA-2016:2322
653
653
  it "errors out trying to unlock the user" do
654
654
  expect(@error).to be_a(Mixlib::ShellOut::ShellCommandFailed)
655
655
  expect(@error.message).to include("You should set a password")
@@ -42,16 +42,11 @@ describe Chef::Provider::Ifconfig do
42
42
  end
43
43
  describe Chef::Provider::Ifconfig, "load_current_resource" do
44
44
  before do
45
- @status = double(stdout: "", exitstatus: 1)
46
- allow(@provider).to receive(:shell_out).and_return(@status)
47
- @provider.load_current_resource
48
- end
49
- it "should track state of ifconfig failure" do
50
- expect(@provider.instance_variable_get("@status").exitstatus).not_to eq(0)
45
+ mixlib = Mixlib::ShellOut.new
46
+ allow(@provider).to receive(:shell_out).and_return(mixlib)
51
47
  end
52
48
  it "should thrown an exception when ifconfig fails" do
53
- @provider.define_resource_requirements
54
- expect { @provider.process_resource_requirements }.to raise_error Chef::Exceptions::Ifconfig
49
+ expect { @provider.load_current_resource }.to raise_error
55
50
  end
56
51
  end
57
52
  describe Chef::Provider::Ifconfig, "action_add" do
@@ -2,7 +2,7 @@ require "bundler"
2
2
  require "shellwords"
3
3
 
4
4
  module BundleUtil
5
- PLATFORMS = { "windows" => %w{ruby x86-mingw32} }
5
+ PLATFORMS = { "windows" => %w{ruby x64-mingw32 x86-mingw32} }
6
6
 
7
7
  def project_root
8
8
  File.expand_path("../..", __FILE__)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef
3
3
  version: !ruby/object:Gem::Version
4
- version: 12.21.26
4
+ version: 12.21.31
5
5
  platform: universal-mingw32
6
6
  authors:
7
7
  - Adam Jacob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-27 00:00:00.000000000 Z
11
+ date: 2017-12-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef-config
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 12.21.26
19
+ version: 12.21.31
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 12.21.26
26
+ version: 12.21.31
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: mixlib-cli
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -684,8 +684,6 @@ files:
684
684
  - acceptance/top-cookbooks/.acceptance/acceptance-cookbook/recipes/verify.rb
685
685
  - acceptance/top-cookbooks/.gitignore
686
686
  - acceptance/top-cookbooks/.kitchen.chocolatey.yml
687
- - acceptance/top-cookbooks/.kitchen.docker.yml
688
- - acceptance/top-cookbooks/.kitchen.git.yml
689
687
  - acceptance/top-cookbooks/.kitchen.iis.yml
690
688
  - acceptance/top-cookbooks/.kitchen.learn-the-basics-rhel.yml
691
689
  - acceptance/top-cookbooks/.kitchen.learn-the-basics-ubuntu.yml
@@ -1,9 +0,0 @@
1
- suites:
2
- - name: docker-default
3
- attributes:
4
- docker:
5
- version: 1.10.0
6
- run_list:
7
- - recipe[apt]
8
- - recipe[chef-apt-docker]
9
- includes: [ubuntu-14.04]
@@ -1,11 +0,0 @@
1
- suites:
2
- - name: git-default
3
- # Ubuntu images need to run apt update
4
- run_list: ["recipe[apt]","recipe[git]"]
5
- includes: [ubuntu-14.04]
6
- - name: git-source
7
- run_list: ["recipe[git::source]"]
8
- includes: [nonexistent]
9
- - name: git-default-windows
10
- run_list: ["recipe[git]"]
11
- includes: [windows-2012r2]