chef 18.10.17 → 18.11.11

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.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +15 -7
  3. data/README.md +0 -1
  4. data/chef-universal-mingw-ucrt.gemspec +4 -2
  5. data/chef.gemspec +15 -12
  6. data/lib/chef/compliance/runner.rb +19 -1
  7. data/lib/chef/dsl/rest_resource.rb +223 -16
  8. data/lib/chef/formatters/error_description.rb +8 -1
  9. data/lib/chef/http/authenticator.rb +17 -4
  10. data/lib/chef/mixin/template.rb +24 -2
  11. data/lib/chef/monkey_patches/reline-windows.rb +116 -0
  12. data/lib/chef/provider/file/content.rb +3 -2
  13. data/lib/chef/provider/file.rb +1 -1
  14. data/lib/chef/provider/ifconfig/redhat.rb +1 -1
  15. data/lib/chef/provider/package/dnf/dnf_helper.py +355 -65
  16. data/lib/chef/provider/package/dnf/python_helper.rb +7 -4
  17. data/lib/chef/provider/package/dnf.rb +25 -6
  18. data/lib/chef/provider/package/yum.rb +1 -1
  19. data/lib/chef/resource/_rest_resource.rb +4 -2
  20. data/lib/chef/resource/archive_file.rb +52 -18
  21. data/lib/chef/resource/chef_client_config.rb +185 -19
  22. data/lib/chef/resource/chef_vault_secret.rb +1 -1
  23. data/lib/chef/resource/chocolatey_installer.rb +31 -13
  24. data/lib/chef/resource/chocolatey_package.rb +1 -1
  25. data/lib/chef/resource/habitat/habitat_package.rb +1 -1
  26. data/lib/chef/resource/habitat/habitat_sup.rb +2 -2
  27. data/lib/chef/resource/habitat_config.rb +1 -1
  28. data/lib/chef/resource/habitat_service.rb +1 -1
  29. data/lib/chef/resource/openssl_ec_private_key.rb +1 -1
  30. data/lib/chef/resource/openssl_ec_public_key.rb +2 -2
  31. data/lib/chef/resource/openssl_rsa_private_key.rb +1 -1
  32. data/lib/chef/resource/openssl_rsa_public_key.rb +2 -2
  33. data/lib/chef/resource/openssl_x509_certificate.rb +1 -1
  34. data/lib/chef/resource/openssl_x509_request.rb +1 -1
  35. data/lib/chef/resource/powershell_package_source.rb +1 -1
  36. data/lib/chef/resource/rhsm_register.rb +1 -1
  37. data/lib/chef/resource/windows_ad_join.rb +1 -1
  38. data/lib/chef/resource/windows_certificate.rb +1 -1
  39. data/lib/chef/resource/windows_service.rb +1 -1
  40. data/lib/chef/resource/windows_task.rb +1 -1
  41. data/lib/chef/resource/yum_package.rb +1 -1
  42. data/lib/chef/resource/yum_repository.rb +2 -2
  43. data/lib/chef/shell.rb +7 -0
  44. data/lib/chef/version.rb +1 -1
  45. metadata +59 -34
@@ -57,10 +57,10 @@ class Chef
57
57
  property :private_key_path, String,
58
58
  description: "The path to the private key file."
59
59
 
60
- property :private_key_content, String,
60
+ property :private_key_content, String, sensitive: true,
61
61
  description: "The content of the private key, including new lines. This property is used in place of private_key_path in instances where you want to avoid having to first write the private key to disk."
62
62
 
63
- property :private_key_pass, String,
63
+ property :private_key_pass, String, sensitive: true,
64
64
  description: "The passphrase of the provided private key."
65
65
 
66
66
  property :owner, [String, Integer],
@@ -115,7 +115,7 @@ class Chef
115
115
  property :key_file, String,
116
116
  description: "The path to a certificate key file on the filesystem. If the key_file property is specified, the resource will attempt to source a key from this location. If no key file is found, the resource will generate a new key file at this location. If the key_file property is not specified, the resource will generate a key file in the same directory as the generated certificate, with the same name as the generated certificate."
117
117
 
118
- property :key_pass, String,
118
+ property :key_pass, String, sensitive: true,
119
119
  description: "The passphrase for an existing key's passphrase."
120
120
 
121
121
  property :key_type, String,
@@ -102,7 +102,7 @@ class Chef
102
102
  property :key_file, String,
103
103
  description: "The path to a certificate key file on the filesystem. If the `key_file` property is specified, the resource will attempt to source a key from this location. If no key file is found, the resource will generate a new key file at this location. If the `key_file` property is not specified, the resource will generate a key file in the same directory as the generated certificate, with the same name as the generated certificate."
104
104
 
105
- property :key_pass, String,
105
+ property :key_pass, String, sensitive: true,
106
106
  description: "The passphrase for an existing key's passphrase."
107
107
 
108
108
  property :key_type, String,
@@ -143,7 +143,7 @@ class Chef
143
143
  introduced: "17.6",
144
144
  description: "A username that, as part of a credential object, is used to register a repository or other package source with."
145
145
 
146
- property :password, String,
146
+ property :password, String, sensitive: true,
147
147
  introduced: "17.6",
148
148
  description: "A password that, as part of a credential object, is used to register a repository or other package source with."
149
149
 
@@ -53,7 +53,7 @@ class Chef
53
53
  property :username, String,
54
54
  description: "The username to use when registering. This property is not applicable if using an activation key. If specified, password and environment properties are also required."
55
55
 
56
- property :password, String,
56
+ property :password, String, sensitive: true,
57
57
  description: "The password to use when registering. This property is not applicable if using an activation key. If specified, username and environment are also required."
58
58
 
59
59
  property :system_name, String,
@@ -65,7 +65,7 @@ class Chef
65
65
  description: "The domain user that will be used to join the domain.",
66
66
  required: true
67
67
 
68
- property :domain_password, String,
68
+ property :domain_password, String, sensitive: true,
69
69
  description: "The password for the domain user. Note that this resource is set to hide sensitive information by default. ",
70
70
  required: true
71
71
 
@@ -65,7 +65,7 @@ class Chef
65
65
  description: "The source file (for `create` and `acl_add`), thumbprint (for `delete`, `export`, and `acl_add`), or subject (for `delete` or `export`) if it differs from the resource block's name.",
66
66
  name_property: true
67
67
 
68
- property :pfx_password, String,
68
+ property :pfx_password, String, sensitive: true,
69
69
  description: "The password to access the object with if it is a PFX file."
70
70
 
71
71
  property :private_key_acl, Array,
@@ -228,7 +228,7 @@ class Chef
228
228
  default: "localsystem",
229
229
  coerce: proc(&:downcase)
230
230
 
231
- property :run_as_password, String,
231
+ property :run_as_password, String, sensitive: true,
232
232
  description: "The password for the user specified by `run_as_user`.",
233
233
  default: ""
234
234
  end
@@ -164,7 +164,7 @@ class Chef
164
164
  default: lazy { Chef::ReservedNames::Win32::Security::SID.LocalSystem.account_simple_name if ChefUtils.windows_ruby? },
165
165
  default_description: "The localized SYSTEM user for the node."
166
166
 
167
- property :password, String,
167
+ property :password, String, sensitive: true,
168
168
  description: "The user's password. The user property must be set if using this property."
169
169
 
170
170
  property :run_level, Symbol, equal_to: %i{highest limited},
@@ -24,7 +24,7 @@ class Chef
24
24
  class YumPackage < Chef::Resource::Package
25
25
 
26
26
  provides :yum_package
27
- provides :package, platform_family: "fedora_derived"
27
+ provides :package, platform_family: %w{fedora rhel amazon}
28
28
 
29
29
  description "Use the **yum_package** resource to install, upgrade, and remove packages with Yum for the Red Hat and CentOS platforms. The yum_package resource is able to resolve `provides` data for packages much like Yum can do when it is run from the command line. This allows a variety of options for installing packages, like minimum versions, virtual provides, and library names. Note: Support for using file names to install packages (as in `yum_package '/bin/sh'`) is not available because the volume of data required to parse for this is excessive."
30
30
  examples <<~DOC
@@ -146,14 +146,14 @@ class Chef
146
146
  property :options, Hash,
147
147
  description: "Specifies the repository options."
148
148
 
149
- property :password, String,
149
+ property :password, String, sensitive: true,
150
150
  description: "Password to use with the username for basic authentication."
151
151
 
152
152
  property :priority, String, regex: /^(\d?[1-9]|[0-9][0-9])$/,
153
153
  description: "Assigns a priority to a repository where the priority value is between `1` and `99` inclusive. Priorities are used to enforce ordered protection of repositories. Packages from repositories with a lower priority (higher numerical value) will never be used to upgrade packages that were installed from a repository with a higher priority (lower numerical value). The repositories with the lowest numerical priority number have the highest priority.",
154
154
  validation_message: "The priority property must be a numeric value from 1-99!"
155
155
 
156
- property :proxy_password, String,
156
+ property :proxy_password, String, sensitive: true,
157
157
  description: "Password for this proxy."
158
158
 
159
159
  property :proxy_username, String,
data/lib/chef/shell.rb CHANGED
@@ -72,6 +72,13 @@ module Shell
72
72
  # to get access to the main object before irb starts.
73
73
  ::IRB.setup(nil)
74
74
 
75
+ # Apply Windows AltGr input fix for affected Reline versions (< 0.3.2).
76
+ # European keyboard layouts (e.g. German) use AltGr (Ctrl+Alt) to produce
77
+ # characters such as { } [ ]. Without this patch Reline emits a spurious ESC
78
+ # prefix making chef-shell unusable for those users. Safe no-op on non-Windows
79
+ # and on Reline versions where the upstream fix is already present.
80
+ require_relative "monkey_patches/reline-windows"
81
+
75
82
  irb_conf[:USE_COLORIZE] = options.config[:use_colorize]
76
83
  irb_conf[:USE_SINGLELINE] = options.config[:use_singleline]
77
84
  irb_conf[:USE_MULTILINE] = options.config[:use_multiline]
data/lib/chef/version.rb CHANGED
@@ -23,7 +23,7 @@ require_relative "version_string"
23
23
 
24
24
  class Chef
25
25
  CHEF_ROOT = File.expand_path("..", __dir__)
26
- VERSION = Chef::VersionString.new("18.10.17")
26
+ VERSION = Chef::VersionString.new("18.11.11")
27
27
  end
28
28
 
29
29
  #
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: 18.10.17
4
+ version: 18.11.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Jacob
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-02-25 00:00:00.000000000 Z
11
+ date: 2026-07-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: chef-config
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 18.10.17
19
+ version: 18.11.11
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: 18.10.17
26
+ version: 18.11.11
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: chef-utils
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 18.10.17
33
+ version: 18.11.11
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 18.10.17
40
+ version: 18.11.11
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: train-core
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -229,7 +229,7 @@ dependencies:
229
229
  version: '5'
230
230
  - - "<"
231
231
  - !ruby/object:Gem::Version
232
- version: '6'
232
+ version: '8'
233
233
  type: :runtime
234
234
  prerelease: false
235
235
  version_requirements: !ruby/object:Gem::Requirement
@@ -239,7 +239,7 @@ dependencies:
239
239
  version: '5'
240
240
  - - "<"
241
241
  - !ruby/object:Gem::Version
242
- version: '6'
242
+ version: '8'
243
243
  - !ruby/object:Gem::Dependency
244
244
  name: ffi
245
245
  requirement: !ruby/object:Gem::Requirement
@@ -264,16 +264,22 @@ dependencies:
264
264
  name: ffi-yajl
265
265
  requirement: !ruby/object:Gem::Requirement
266
266
  requirements:
267
- - - "~>"
267
+ - - ">="
268
268
  - !ruby/object:Gem::Version
269
269
  version: '2.2'
270
+ - - "<"
271
+ - !ruby/object:Gem::Version
272
+ version: '4.0'
270
273
  type: :runtime
271
274
  prerelease: false
272
275
  version_requirements: !ruby/object:Gem::Requirement
273
276
  requirements:
274
- - - "~>"
277
+ - - ">="
275
278
  - !ruby/object:Gem::Version
276
279
  version: '2.2'
280
+ - - "<"
281
+ - !ruby/object:Gem::Version
282
+ version: '4.0'
277
283
  - !ruby/object:Gem::Dependency
278
284
  name: net-sftp
279
285
  requirement: !ruby/object:Gem::Requirement
@@ -334,7 +340,7 @@ dependencies:
334
340
  version: 1.4.0
335
341
  - - "<"
336
342
  - !ruby/object:Gem::Version
337
- version: 1.6.0
343
+ version: 2.1.0
338
344
  type: :runtime
339
345
  prerelease: false
340
346
  version_requirements: !ruby/object:Gem::Requirement
@@ -347,7 +353,7 @@ dependencies:
347
353
  version: 1.4.0
348
354
  - - "<"
349
355
  - !ruby/object:Gem::Version
350
- version: 1.6.0
356
+ version: 2.1.0
351
357
  - !ruby/object:Gem::Dependency
352
358
  name: ffi-libarchive
353
359
  requirement: !ruby/object:Gem::Requirement
@@ -372,22 +378,16 @@ dependencies:
372
378
  name: chef-zero
373
379
  requirement: !ruby/object:Gem::Requirement
374
380
  requirements:
375
- - - ">="
376
- - !ruby/object:Gem::Version
377
- version: 15.0.21
378
- - - "<"
381
+ - - "~>"
379
382
  - !ruby/object:Gem::Version
380
- version: '15.2'
383
+ version: 15.1.11
381
384
  type: :runtime
382
385
  prerelease: false
383
386
  version_requirements: !ruby/object:Gem::Requirement
384
387
  requirements:
385
- - - ">="
386
- - !ruby/object:Gem::Version
387
- version: 15.0.21
388
- - - "<"
388
+ - - "~>"
389
389
  - !ruby/object:Gem::Version
390
- version: '15.2'
390
+ version: 15.1.11
391
391
  - !ruby/object:Gem::Dependency
392
392
  name: chef-vault
393
393
  requirement: !ruby/object:Gem::Requirement
@@ -467,7 +467,7 @@ dependencies:
467
467
  version: 2.1.5
468
468
  - - "<"
469
469
  - !ruby/object:Gem::Version
470
- version: '3.0'
470
+ version: '4.0'
471
471
  type: :runtime
472
472
  prerelease: false
473
473
  version_requirements: !ruby/object:Gem::Requirement
@@ -477,35 +477,47 @@ dependencies:
477
477
  version: 2.1.5
478
478
  - - "<"
479
479
  - !ruby/object:Gem::Version
480
- version: '3.0'
480
+ version: '4.0'
481
481
  - !ruby/object:Gem::Dependency
482
482
  name: unf_ext
483
483
  requirement: !ruby/object:Gem::Requirement
484
484
  requirements:
485
- - - "~>"
485
+ - - ">="
486
486
  - !ruby/object:Gem::Version
487
487
  version: 0.0.8.2
488
+ - - "<"
489
+ - !ruby/object:Gem::Version
490
+ version: 0.0.10.0
488
491
  type: :runtime
489
492
  prerelease: false
490
493
  version_requirements: !ruby/object:Gem::Requirement
491
494
  requirements:
492
- - - "~>"
495
+ - - ">="
493
496
  - !ruby/object:Gem::Version
494
497
  version: 0.0.8.2
498
+ - - "<"
499
+ - !ruby/object:Gem::Version
500
+ version: 0.0.10.0
495
501
  - !ruby/object:Gem::Dependency
496
502
  name: uri
497
503
  requirement: !ruby/object:Gem::Requirement
498
504
  requirements:
499
- - - "~>"
505
+ - - ">="
500
506
  - !ruby/object:Gem::Version
501
507
  version: 1.0.4
508
+ - - "<"
509
+ - !ruby/object:Gem::Version
510
+ version: 1.2.0
502
511
  type: :runtime
503
512
  prerelease: false
504
513
  version_requirements: !ruby/object:Gem::Requirement
505
514
  requirements:
506
- - - "~>"
515
+ - - ">="
507
516
  - !ruby/object:Gem::Version
508
517
  version: 1.0.4
518
+ - - "<"
519
+ - !ruby/object:Gem::Version
520
+ version: 1.2.0
509
521
  - !ruby/object:Gem::Dependency
510
522
  name: corefoundation
511
523
  requirement: !ruby/object:Gem::Requirement
@@ -538,16 +550,22 @@ dependencies:
538
550
  name: aws-sdk-s3
539
551
  requirement: !ruby/object:Gem::Requirement
540
552
  requirements:
541
- - - "~>"
553
+ - - ">="
542
554
  - !ruby/object:Gem::Version
543
- version: '1.91'
555
+ version: 1.218.0
556
+ - - "<"
557
+ - !ruby/object:Gem::Version
558
+ version: 1.219.0
544
559
  type: :runtime
545
560
  prerelease: false
546
561
  version_requirements: !ruby/object:Gem::Requirement
547
562
  requirements:
548
- - - "~>"
563
+ - - ">="
549
564
  - !ruby/object:Gem::Version
550
- version: '1.91'
565
+ version: 1.218.0
566
+ - - "<"
567
+ - !ruby/object:Gem::Version
568
+ version: 1.219.0
551
569
  - !ruby/object:Gem::Dependency
552
570
  name: aws-sdk-secretsmanager
553
571
  requirement: !ruby/object:Gem::Requirement
@@ -566,16 +584,22 @@ dependencies:
566
584
  name: vault
567
585
  requirement: !ruby/object:Gem::Requirement
568
586
  requirements:
569
- - - "~>"
587
+ - - ">="
570
588
  - !ruby/object:Gem::Version
571
589
  version: 0.18.2
590
+ - - "<"
591
+ - !ruby/object:Gem::Version
592
+ version: 0.21.0
572
593
  type: :runtime
573
594
  prerelease: false
574
595
  version_requirements: !ruby/object:Gem::Requirement
575
596
  requirements:
576
- - - "~>"
597
+ - - ">="
577
598
  - !ruby/object:Gem::Version
578
599
  version: 0.18.2
600
+ - - "<"
601
+ - !ruby/object:Gem::Version
602
+ version: 0.21.0
579
603
  description: A systems integration framework, built to bring the benefits of configuration
580
604
  management to your entire infrastructure.
581
605
  email: adam@chef.io
@@ -896,6 +920,7 @@ files:
896
920
  - lib/chef/mixin/xml_escape.rb
897
921
  - lib/chef/mixins.rb
898
922
  - lib/chef/monkey_patches/net-http.rb
923
+ - lib/chef/monkey_patches/reline-windows.rb
899
924
  - lib/chef/monkey_patches/webrick-utils.rb
900
925
  - lib/chef/monkey_patches/win32/registry.rb
901
926
  - lib/chef/monologger.rb