chef-config 15.4.45 → 15.5.9

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: 16d40b49537155945f51eda6a762b794f00a82c9dff824b0dabbb58fcabd3e0b
4
- data.tar.gz: f07e392b7ce953e6c71121099c39512d6a1902c8f350a748e2484a7890861e14
3
+ metadata.gz: f91e769432580aaa6c4c2b62564b354c848ece00d6cf2fe587f9cf96d7f27fca
4
+ data.tar.gz: a11b03cfe07fb1d428adeed60f9577532ec56f8330d15cbdc52c35b74dfe6a3a
5
5
  SHA512:
6
- metadata.gz: c3291e0dba33d3eecf69fe9e201290b13c3e4c4ade964c7bf6d38836f84f6235cf5b21f18bd43d5671d8998d31c107705acf49565669cc1f9f5b6f19082cf1bf
7
- data.tar.gz: 2a6ab1f73ea1ada4ef3be785d8eec3036eba88f087b6b50eb153f8bcd9dd8f31f036cac3a68ab80dfe5dc98529fed3d373e58d54290d1483d9d1265419813ac5
6
+ metadata.gz: 4aed9e8baaed79001003ae6424fe7e1eb84f0ab28d06ee6ce66af1aaaddf2758f9f983c2d469ea7686c58ec025d361939bd3f434e077374ab5fc0f5d3573ec4e
7
+ data.tar.gz: 5ddd80cf0ac7fc5b1fd7f546b8cc7fe5a593c921b3d773ef993f802b9b34b5ecc7b31b8fe82e624cf474b1cd9679cdb0a5bdb0b52079bfc05ed9d51e48e490a0
@@ -15,6 +15,7 @@ Gem::Specification.new do |spec|
15
15
 
16
16
  spec.require_paths = ["lib"]
17
17
 
18
+ spec.add_dependency "chef-utils", "= #{ChefConfig::VERSION}"
18
19
  spec.add_dependency "mixlib-shellout", ">= 2.0", "< 4.0"
19
20
  spec.add_dependency "mixlib-config", ">= 2.2.12", "< 4.0"
20
21
  spec.add_dependency "fuzzyurl"
@@ -21,6 +21,7 @@
21
21
 
22
22
  require "mixlib/config" unless defined?(Mixlib::Config)
23
23
  require "pathname" unless defined?(Pathname)
24
+ require "chef-utils" unless defined?(ChefUtils::CANARY)
24
25
 
25
26
  require_relative "fips"
26
27
  require_relative "logger"
@@ -60,7 +61,7 @@ module ChefConfig
60
61
  # @return [String] a platform specific path
61
62
  def self.platform_specific_path(path)
62
63
  path = PathHelper.cleanpath(path)
63
- if ChefConfig.windows?
64
+ if ChefUtils.windows?
64
65
  # turns \etc\chef\client.rb and \var\chef\client.rb into C:/chef/client.rb
65
66
  # Some installations will be on different drives so use the drive that
66
67
  # the expanded path to __FILE__ is found.
@@ -78,7 +79,7 @@ module ChefConfig
78
79
  #
79
80
  # @return [String] the drive letter
80
81
  def self.windows_installation_drive
81
- if ChefConfig.windows?
82
+ if ChefUtils.windows?
82
83
  drive = File.expand_path(__FILE__).split("/", 2)[0]
83
84
  drive = ENV["SYSTEMDRIVE"] if drive.to_s == ""
84
85
  drive
@@ -573,7 +574,7 @@ module ChefConfig
573
574
  # Path to the default CA bundle files.
574
575
  default :ssl_ca_path, nil
575
576
  default(:ssl_ca_file) do
576
- if ChefConfig.windows? && embedded_dir
577
+ if ChefUtils.windows? && embedded_dir
577
578
  cacert_path = File.join(embedded_dir, "ssl/certs/cacert.pem")
578
579
  cacert_path if File.exist?(cacert_path)
579
580
  else
@@ -841,7 +842,7 @@ module ChefConfig
841
842
 
842
843
  # Those lists of regular expressions define what chef considers a
843
844
  # valid user and group name
844
- if ChefConfig.windows?
845
+ if ChefUtils.windows?
845
846
  set_defaults_for_windows
846
847
  else
847
848
  set_defaults_for_nix
@@ -1138,7 +1139,7 @@ module ChefConfig
1138
1139
  end
1139
1140
  end
1140
1141
  rescue
1141
- if ChefConfig.windows?
1142
+ if ChefUtils.windows?
1142
1143
  ChefConfig.logger.trace "Defaulting to locale en_US.UTF-8 on Windows, until it matters that we do something else."
1143
1144
  else
1144
1145
  ChefConfig.logger.trace "No usable locale -a command found, assuming you have en_US.UTF-8 installed."
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2015-2016, Chef Software, Inc.
2
+ # Copyright:: Copyright 2015-2019, Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Matt Wrock (<matt@mattwrock.com>)
3
- # Copyright:: Copyright (c) 2016 Chef Software, Inc.
3
+ # Copyright:: Copyright (c) 2016-2018, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,10 +16,12 @@
16
16
  # limitations under the License.
17
17
  #
18
18
 
19
+ require "chef-utils" unless defined?(ChefUtils::CANARY)
20
+
19
21
  module ChefConfig
20
22
 
21
23
  def self.fips?
22
- if ChefConfig.windows?
24
+ if ChefUtils.windows?
23
25
  begin
24
26
  require "win32/registry" unless defined?(Win32::Registry)
25
27
  rescue LoadError
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Bryan McLellan <btm@loftninjas.org>
3
- # Copyright:: Copyright 2014-2018, Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2019, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,6 +16,7 @@
16
16
  # limitations under the License.
17
17
  #
18
18
 
19
+ require "chef-utils" unless defined?(ChefUtils::CANARY)
19
20
  require_relative "windows"
20
21
  require_relative "logger"
21
22
  require_relative "exceptions"
@@ -26,7 +27,7 @@ module ChefConfig
26
27
  WIN_MAX_PATH = 259
27
28
 
28
29
  def self.dirname(path)
29
- if ChefConfig.windows?
30
+ if ChefUtils.windows?
30
31
  # Find the first slash, not counting trailing slashes
31
32
  end_slash = path.size
32
33
  loop do
@@ -47,7 +48,7 @@ module ChefConfig
47
48
  BACKSLASH = '\\'.freeze
48
49
 
49
50
  def self.path_separator
50
- if ChefConfig.windows?
51
+ if ChefUtils.windows?
51
52
  File::ALT_SEPARATOR || BACKSLASH
52
53
  else
53
54
  File::SEPARATOR
@@ -71,7 +72,7 @@ module ChefConfig
71
72
  end
72
73
 
73
74
  def self.validate_path(path)
74
- if ChefConfig.windows?
75
+ if ChefUtils.windows?
75
76
  unless printable?(path)
76
77
  msg = "Path '#{path}' contains non-printable characters. Check that backslashes are escaped with another backslash (e.g. C:\\\\Windows) in double-quoted strings."
77
78
  ChefConfig.logger.error(msg)
@@ -114,7 +115,7 @@ module ChefConfig
114
115
  # First remove extra separators and resolve any relative paths
115
116
  abs_path = File.absolute_path(path)
116
117
 
117
- if ChefConfig.windows?
118
+ if ChefUtils.windows?
118
119
  # Add the \\?\ API prefix on Windows unless add_prefix is false
119
120
  # Downcase on Windows where paths are still case-insensitive
120
121
  abs_path.gsub!(::File::SEPARATOR, path_separator)
@@ -142,7 +143,7 @@ module ChefConfig
142
143
  def self.cleanpath(path)
143
144
  path = Pathname.new(path).cleanpath.to_s
144
145
  # ensure all forward slashes are backslashes
145
- if ChefConfig.windows?
146
+ if ChefUtils.windows?
146
147
  path = path.gsub(File::SEPARATOR, path_separator)
147
148
  end
148
149
  path
@@ -219,7 +220,7 @@ module ChefConfig
219
220
  paths = []
220
221
  paths << ENV[@@per_tool_home_environment] if defined?(@@per_tool_home_environment) && @@per_tool_home_environment && ENV[@@per_tool_home_environment]
221
222
  paths << ENV["CHEF_HOME"] if ENV["CHEF_HOME"]
222
- if ChefConfig.windows?
223
+ if ChefUtils.windows?
223
224
  # By default, Ruby uses the the following environment variables to determine Dir.home:
224
225
  # HOME
225
226
  # HOMEDRIVE HOMEPATH
@@ -1,4 +1,4 @@
1
- # Copyright:: Copyright 2010-2016, Chef Software, Inc.
1
+ # Copyright:: Copyright 2010-2018, Chef Software Inc.
2
2
  # License:: Apache License, Version 2.0
3
3
  #
4
4
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -13,22 +13,7 @@
13
13
  # See the License for the specific language governing permissions and
14
14
  # limitations under the License.
15
15
 
16
- # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
17
- # NOTE: This file is generated by running `rake version` in the top level of
18
- # this repo. Do not edit this manually. Edit the VERSION file and run the rake
19
- # task instead.
20
- # !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
21
-
22
16
  module ChefConfig
23
17
  CHEFCONFIG_ROOT = File.expand_path("../..", __FILE__)
24
- VERSION = "15.4.45".freeze
18
+ VERSION = "15.5.9".freeze
25
19
  end
26
-
27
- #
28
- # NOTE: the Chef::Version class is defined in version_class.rb
29
- #
30
- # NOTE: DO NOT Use the Chef::Version class on ChefConfig::VERSIONs. The
31
- # Chef::Version class is for _cookbooks_ only, and cannot handle
32
- # pre-release versions like "10.14.0.rc.2". Please use Rubygem's
33
- # Gem::Version class instead.
34
- #
@@ -1,5 +1,5 @@
1
1
  #
2
- # Copyright:: Copyright 2015-2016, Chef Software, Inc.
2
+ # Copyright:: Copyright 2015-2018, Chef Software Inc.
3
3
  # License:: Apache License, Version 2.0
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -15,14 +15,10 @@
15
15
  # limitations under the License.
16
16
  #
17
17
 
18
- module ChefConfig
18
+ require "chef-utils" unless defined?(ChefUtils::CANARY)
19
19
 
20
+ module ChefConfig
20
21
  def self.windows?
21
- if RUBY_PLATFORM =~ /mswin|mingw|windows/
22
- true
23
- else
24
- false
25
- end
22
+ ChefUtils.windows?
26
23
  end
27
-
28
24
  end
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Daniel DeLeo (<dan@chef.io>)
3
- # Copyright:: Copyright 2014-2016, Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2019, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -16,6 +16,7 @@
16
16
  # limitations under the License.
17
17
  #
18
18
 
19
+ require "chef-utils" unless defined?(ChefUtils::CANARY)
19
20
  require_relative "config"
20
21
  require_relative "exceptions"
21
22
  require_relative "logger"
@@ -139,7 +140,7 @@ module ChefConfig
139
140
  end
140
141
 
141
142
  def working_directory
142
- a = if ChefConfig.windows?
143
+ a = if ChefUtils.windows?
143
144
  env["CD"]
144
145
  else
145
146
  env["PWD"]
@@ -1,4 +1,4 @@
1
- require "chef-config/windows"
1
+ require "chef-utils"
2
2
 
3
3
  # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
4
4
  RSpec.configure do |config|
@@ -32,8 +32,8 @@ RSpec.configure do |config|
32
32
  config.filter_run :focus
33
33
  config.run_all_when_everything_filtered = true
34
34
 
35
- config.filter_run_excluding windows_only: true unless ChefConfig.windows?
36
- config.filter_run_excluding unix_only: true if ChefConfig.windows?
35
+ config.filter_run_excluding windows_only: true unless ChefUtils.windows?
36
+ config.filter_run_excluding unix_only: true if ChefUtils.windows?
37
37
 
38
38
  # Limits the available syntax to the non-monkey patched syntax that is
39
39
  # recommended. For more details, see:
@@ -201,7 +201,7 @@ RSpec.describe ChefConfig::Config do
201
201
  end
202
202
 
203
203
  before :each do
204
- allow(ChefConfig).to receive(:windows?).and_return(is_windows)
204
+ allow(ChefUtils).to receive(:windows?).and_return(is_windows)
205
205
  end
206
206
  describe "class method: windows_installation_drive" do
207
207
  before do
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Matt Wrock (<matt@mattwrock.com>)
3
- # Copyright:: Copyright (c) 2016-2017, Chef Software Inc.
3
+ # Copyright:: Copyright (c) 2016-2018, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -32,7 +32,7 @@ RSpec.describe "ChefConfig.fips?" do
32
32
  let(:fips_path) { "/proc/sys/crypto/fips_enabled" }
33
33
 
34
34
  before(:each) do
35
- allow(ChefConfig).to receive(:windows?).and_return(false)
35
+ allow(ChefUtils).to receive(:windows?).and_return(false)
36
36
  allow(::File).to receive(:exist?).with(fips_path).and_return(true)
37
37
  allow(::File).to receive(:read).with(fips_path).and_return(enabled)
38
38
  end
@@ -69,7 +69,7 @@ RSpec.describe "ChefConfig.fips?" do
69
69
  let(:win_reg_entry) { { "Enabled" => enabled } }
70
70
 
71
71
  before(:each) do
72
- allow(ChefConfig).to receive(:windows?).and_return(true)
72
+ allow(ChefUtils).to receive(:windows?).and_return(true)
73
73
  allow(Win32::Registry::HKEY_LOCAL_MACHINE).to receive(:open).with(fips_key, arch).and_yield(win_reg_entry)
74
74
  end
75
75
 
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # Author:: Bryan McLellan <btm@loftninjas.org>
3
- # Copyright:: Copyright 2014-2016, Chef Software, Inc.
3
+ # Copyright:: Copyright 2014-2018, Chef Software Inc.
4
4
  # License:: Apache License, Version 2.0
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
@@ -58,7 +58,7 @@ RSpec.describe ChefConfig::PathHelper do
58
58
  context "on windows" do
59
59
 
60
60
  before(:each) do
61
- allow(ChefConfig).to receive(:windows?).and_return(true)
61
+ allow(ChefUtils).to receive(:windows?).and_return(true)
62
62
  end
63
63
 
64
64
  include_examples("common_functionality")
@@ -106,7 +106,7 @@ RSpec.describe ChefConfig::PathHelper do
106
106
  context "on unix" do
107
107
 
108
108
  before(:each) do
109
- allow(ChefConfig).to receive(:windows?).and_return(false)
109
+ allow(ChefUtils).to receive(:windows?).and_return(false)
110
110
  end
111
111
 
112
112
  include_examples("common_functionality")
@@ -144,7 +144,7 @@ RSpec.describe ChefConfig::PathHelper do
144
144
  context "on windows" do
145
145
  before(:each) do
146
146
  # pass by default
147
- allow(ChefConfig).to receive(:windows?).and_return(true)
147
+ allow(ChefUtils).to receive(:windows?).and_return(true)
148
148
  allow(path_helper).to receive(:printable?).and_return(true)
149
149
  allow(path_helper).to receive(:windows_max_length_exceeded?).and_return(false)
150
150
  end
@@ -254,7 +254,7 @@ RSpec.describe ChefConfig::PathHelper do
254
254
  context "when given more than one argument" do
255
255
  it "joins, cleanpaths, and escapes characters reserved by glob" do
256
256
  args = ["this/*path", "[needs]", "escaping?"]
257
- escaped_path = if ChefConfig.windows?
257
+ escaped_path = if ChefUtils.windows?
258
258
  "this\\\\\\*path\\\\\\[needs\\]\\\\escaping\\?"
259
259
  else
260
260
  "this/\\*path/\\[needs\\]/escaping\\?"
@@ -286,7 +286,7 @@ RSpec.describe ChefConfig::PathHelper do
286
286
  describe "all_homes" do
287
287
  before do
288
288
  stub_const("ENV", env)
289
- allow(ChefConfig).to receive(:windows?).and_return(is_windows)
289
+ allow(ChefUtils).to receive(:windows?).and_return(is_windows)
290
290
  end
291
291
 
292
292
  context "on windows" do
@@ -20,7 +20,7 @@ require "spec_helper"
20
20
  require "tempfile"
21
21
 
22
22
  require "chef-config/exceptions"
23
- require "chef-config/windows"
23
+ require "chef-utils"
24
24
  require "chef-config/workstation_config_loader"
25
25
 
26
26
  RSpec.describe ChefConfig::WorkstationConfigLoader do
@@ -98,7 +98,7 @@ RSpec.describe ChefConfig::WorkstationConfigLoader do
98
98
  let(:env_pwd) { "/path/to/cwd" }
99
99
 
100
100
  before do
101
- if ChefConfig.windows?
101
+ if ChefUtils.windows?
102
102
  env["CD"] = env_pwd
103
103
  else
104
104
  env["PWD"] = env_pwd
@@ -431,7 +431,7 @@ RSpec.describe ChefConfig::WorkstationConfigLoader do
431
431
  end
432
432
 
433
433
  describe "when loading a credentials file" do
434
- if ChefConfig.windows?
434
+ if ChefUtils.windows?
435
435
  let(:home) { "C:/Users/example.user" }
436
436
  else
437
437
  let(:home) { "/Users/example.user" }
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chef-config
3
3
  version: !ruby/object:Gem::Version
4
- version: 15.4.45
4
+ version: 15.5.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Jacob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-10-15 00:00:00.000000000 Z
11
+ date: 2019-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: chef-utils
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '='
18
+ - !ruby/object:Gem::Version
19
+ version: 15.5.9
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '='
25
+ - !ruby/object:Gem::Version
26
+ version: 15.5.9
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: mixlib-shellout
15
29
  requirement: !ruby/object:Gem::Requirement