summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn McCrae <john.mccrae@progress.com>2022-08-31 02:58:41 -0700
committerGitHub <noreply@github.com>2022-08-31 02:58:41 -0700
commit6aceb4b788845378e286cfaf90e0641ddedea2f8 (patch)
treefa08763216c4d44676eef1c63ba71130ba026077
parent4feba0045b312de61a27ed620a8d6bb04e3126a1 (diff)
parent65e2d57afd116b8e0dc34d617c1ed276b569a597 (diff)
downloadchef-tp/ruby_revert_to_ruby31.tar.gz
Merge branch 'main' into tp/ruby_revert_to_ruby31tp/ruby_revert_to_ruby31
-rw-r--r--.expeditor/config.yml4
-rw-r--r--.expeditor/macos_universal_package.pipeline.yml1
-rw-r--r--CHANGELOG.md13
-rw-r--r--Gemfile.lock58
-rw-r--r--VERSION2
-rw-r--r--chef-bin/lib/chef-bin/version.rb2
-rw-r--r--chef-config/lib/chef-config/version.rb2
-rw-r--r--chef-config/lib/chef-config/workstation_config_loader.rb1
-rw-r--r--chef-utils/lib/chef-utils/version.rb2
-rw-r--r--cspell.json4
-rw-r--r--docs/dev/how_to/adding_documentation_to_infra_resources.md29
-rw-r--r--kitchen-tests/cookbooks/end_to_end/recipes/_chef_client_trusted_certificate.rb16
-rw-r--r--kitchen-tests/cookbooks/end_to_end/recipes/linux.rb11
-rw-r--r--kitchen-tests/cookbooks/end_to_end/recipes/windows.rb53
-rw-r--r--knife/lib/chef/knife/version.rb2
-rw-r--r--lib/chef/resource/chef_client_cron.rb2
-rw-r--r--lib/chef/resource/chef_client_launchd.rb2
-rw-r--r--lib/chef/resource/chef_client_scheduled_task.rb2
-rw-r--r--lib/chef/resource/sysctl.rb2
-rw-r--r--lib/chef/resource/windows_user_privilege.rb2
-rw-r--r--lib/chef/run_context.rb6
-rw-r--r--lib/chef/version.rb2
-rw-r--r--spec/unit/resource/chef_client_cron_spec.rb5
-rw-r--r--spec/unit/resource/chef_client_launchd_spec.rb5
-rw-r--r--spec/unit/resource/chef_client_scheduled_task_spec.rb5
-rw-r--r--spec/unit/resource/chef_client_systemd_timer_spec.rb2
-rw-r--r--spec/unit/resource/sysctl_spec.rb4
27 files changed, 195 insertions, 44 deletions
diff --git a/.expeditor/config.yml b/.expeditor/config.yml
index d249264afa..18f4d859df 100644
--- a/.expeditor/config.yml
+++ b/.expeditor/config.yml
@@ -54,6 +54,9 @@ pipelines:
definition: .expeditor/adhoc-canary.omnibus.yml
env:
- ADHOC: true
+ - macos_universal_package:
+ description: Builds universal macos package using arch specific packages
+ definition: .expeditor/macos_universal_package.pipeline.yml
github:
# This deletes the GitHub PR branch after successfully merged into the release branch
@@ -86,6 +89,7 @@ subscriptions:
- workload: artifact_published:unstable:chef:{{version_constraint}}
actions:
- trigger_pipeline:docker/build
+ - trigger_pipeline:macos_universal_package
- workload: artifact_published:current:chef:{{version_constraint}}
actions:
- bash:.expeditor/promote-docker-images.sh
diff --git a/.expeditor/macos_universal_package.pipeline.yml b/.expeditor/macos_universal_package.pipeline.yml
new file mode 100644
index 0000000000..6fddb90a89
--- /dev/null
+++ b/.expeditor/macos_universal_package.pipeline.yml
@@ -0,0 +1 @@
+# This pipeline is currently under development.
diff --git a/CHANGELOG.md b/CHANGELOG.md
index f308f321fa..01be44c259 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,17 +1,24 @@
<!-- usage documentation: http://expeditor-docs.es.chef.io/configuration/changelog/ -->
This changelog lists individual merged pull requests to Chef Infra Client and geared towards developers. For a list of significant changes per release see the [Chef Infra Client Release Notes](https://docs.chef.io/release_notes_client/).
-<!-- latest_release 18.0.135 -->
-## [v18.0.135](https://github.com/chef/chef/tree/v18.0.135) (2022-07-22)
+<!-- latest_release 18.0.142 -->
+## [v18.0.142](https://github.com/chef/chef/tree/v18.0.142) (2022-08-30)
#### Merged Pull Requests
-- Bump omnibus-software from `a9b13a0` to `1d540dc` in /omnibus [#13089](https://github.com/chef/chef/pull/13089) ([dependabot[bot]](https://github.com/dependabot[bot]))
+- Add empty pipeline for macos universal package [#13152](https://github.com/chef/chef/pull/13152) ([vkarve-chef](https://github.com/vkarve-chef))
<!-- latest_release -->
<!-- release_rollup since=17.9.26 -->
### Changes not yet released to stable
#### Merged Pull Requests
+- Add empty pipeline for macos universal package [#13152](https://github.com/chef/chef/pull/13152) ([vkarve-chef](https://github.com/vkarve-chef)) <!-- 18.0.142 -->
+- Add newline to end of sysctl files [#13118](https://github.com/chef/chef/pull/13118) ([tmccombs](https://github.com/tmccombs)) <!-- 18.0.141 -->
+- fix chef_client_scheduled_task splay to accept 0 [#13095](https://github.com/chef/chef/pull/13095) ([Stromweld](https://github.com/Stromweld)) <!-- 18.0.140 -->
+- add url for principal names [#13104](https://github.com/chef/chef/pull/13104) ([Stromweld](https://github.com/Stromweld)) <!-- 18.0.139 -->
+- Added how to doc with details about documentation for infra client resources [#13046](https://github.com/chef/chef/pull/13046) ([neha-p6](https://github.com/neha-p6)) <!-- 18.0.138 -->
+- Wording change in error for missing recipe dependency (&quot;Obvious Fix&quot;) [#13061](https://github.com/chef/chef/pull/13061) ([c-drive](https://github.com/c-drive)) <!-- 18.0.137 -->
+- Require etc library [#13068](https://github.com/chef/chef/pull/13068) ([curzonj](https://github.com/curzonj)) <!-- 18.0.136 -->
- Bump omnibus-software from `a9b13a0` to `1d540dc` in /omnibus [#13089](https://github.com/chef/chef/pull/13089) ([dependabot[bot]](https://github.com/dependabot[bot])) <!-- 18.0.135 -->
- Re add: Use new msys2 based devkit for windows&quot;&quot; [#13097](https://github.com/chef/chef/pull/13097) ([neha-p6](https://github.com/neha-p6)) <!-- 18.0.134 -->
- Skip tests on FreeBSD-13 [#13079](https://github.com/chef/chef/pull/13079) ([poorndm](https://github.com/poorndm)) <!-- 18.0.133 -->
diff --git a/Gemfile.lock b/Gemfile.lock
index b1a83e6edd..4639bfd339 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -44,13 +44,47 @@ GIT
PATH
remote: .
specs:
- chef (18.0.135)
+ chef (18.0.142)
addressable
aws-sdk-s3 (~> 1.91)
aws-sdk-secretsmanager (~> 1.46)
- chef-config (= 18.0.135)
+ chef-config (= 18.0.142)
+ chef-utils (= 18.0.142)
+ chef-vault
+ chef-zero (>= 14.0.11)
+ corefoundation (~> 0.3.4)
+ diff-lcs (>= 1.2.4, < 1.6.0, != 1.4.0)
+ erubis (~> 2.7)
+ ffi (>= 1.5.0)
+ ffi-libarchive (~> 1.0, >= 1.0.3)
+ ffi-yajl (~> 2.2)
+ iniparse (~> 1.4)
+ inspec-core (~> 4.23)
+ license-acceptance (>= 1.0.5, < 3)
+ mixlib-archive (>= 0.4, < 2.0)
+ mixlib-authentication (>= 2.1, < 4)
+ mixlib-cli (>= 2.1.1, < 3.0)
+ mixlib-log (>= 2.0.3, < 4.0)
+ mixlib-shellout (>= 3.1.1, < 4.0)
+ net-ftp
+ net-sftp (>= 2.1.2, < 4.0)
+ ohai (~> 18.0)
+ plist (~> 3.2)
+ proxifier (~> 1.0)
+ syslog-logger (~> 1.6)
+ train-core (~> 3.2, >= 3.2.28)
+ train-rest (>= 0.4.1)
+ train-winrm (>= 0.2.5)
+ unf_ext (< 0.0.8.1)
+ uuidtools (>= 2.1.5, < 3.0)
+ vault (~> 0.16)
+ chef (18.0.142-universal-mingw32)
+ addressable
+ aws-sdk-s3 (~> 1.91)
+ aws-sdk-secretsmanager (~> 1.46)
+ chef-config (= 18.0.142)
chef-powershell (~> 1.0.12)
- chef-utils (= 18.0.135)
+ chef-utils (= 18.0.142)
chef-vault
chef-zero (>= 14.0.11)
corefoundation (~> 0.3.4)
@@ -94,15 +128,15 @@ PATH
PATH
remote: chef-bin
specs:
- chef-bin (18.0.135)
- chef (= 18.0.135)
+ chef-bin (18.0.142)
+ chef (= 18.0.142)
PATH
remote: chef-config
specs:
- chef-config (18.0.135)
+ chef-config (18.0.142)
addressable
- chef-utils (= 18.0.135)
+ chef-utils (= 18.0.142)
fuzzyurl
mixlib-config (>= 2.2.12, < 4.0)
mixlib-shellout (>= 2.0, < 4.0)
@@ -111,7 +145,7 @@ PATH
PATH
remote: chef-utils
specs:
- chef-utils (18.0.135)
+ chef-utils (18.0.142)
concurrent-ruby
GEM
@@ -124,8 +158,8 @@ GEM
mixlib-shellout (>= 2.0, < 4.0)
ast (2.4.2)
aws-eventstream (1.2.0)
- aws-partitions (1.610.0)
- aws-sdk-core (3.131.3)
+ aws-partitions (1.623.0)
+ aws-sdk-core (3.136.0)
aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.525.0)
aws-sigv4 (~> 1.1)
@@ -137,7 +171,7 @@ GEM
aws-sdk-core (~> 3, >= 3.127.0)
aws-sdk-kms (~> 1)
aws-sigv4 (~> 1.4)
- aws-sdk-secretsmanager (1.64.0)
+ aws-sdk-secretsmanager (1.65.0)
aws-sdk-core (~> 3, >= 3.127.0)
aws-sigv4 (~> 1.1)
aws-sigv4 (1.5.1)
@@ -178,7 +212,7 @@ GEM
domain_name (0.5.20190701)
unf (>= 0.0.5, < 1.0.0)
ed25519 (1.3.0)
- erubi (1.10.0)
+ erubi (1.11.0)
erubis (2.7.0)
faraday (1.4.3)
faraday-em_http (~> 1.0)
diff --git a/VERSION b/VERSION
index 751512b60a..e756675b00 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-18.0.135 \ No newline at end of file
+18.0.142 \ No newline at end of file
diff --git a/chef-bin/lib/chef-bin/version.rb b/chef-bin/lib/chef-bin/version.rb
index 4969fce44f..5f1a2e3211 100644
--- a/chef-bin/lib/chef-bin/version.rb
+++ b/chef-bin/lib/chef-bin/version.rb
@@ -21,7 +21,7 @@
module ChefBin
CHEFBIN_ROOT = File.expand_path("..", __dir__)
- VERSION = "18.0.135".freeze
+ VERSION = "18.0.142".freeze
end
#
diff --git a/chef-config/lib/chef-config/version.rb b/chef-config/lib/chef-config/version.rb
index 6f4b5d1a13..7799607e56 100644
--- a/chef-config/lib/chef-config/version.rb
+++ b/chef-config/lib/chef-config/version.rb
@@ -15,5 +15,5 @@
module ChefConfig
CHEFCONFIG_ROOT = File.expand_path("..", __dir__)
- VERSION = "18.0.135".freeze
+ VERSION = "18.0.142".freeze
end
diff --git a/chef-config/lib/chef-config/workstation_config_loader.rb b/chef-config/lib/chef-config/workstation_config_loader.rb
index ea42211120..a77670ddb2 100644
--- a/chef-config/lib/chef-config/workstation_config_loader.rb
+++ b/chef-config/lib/chef-config/workstation_config_loader.rb
@@ -17,6 +17,7 @@
#
require "chef-utils" unless defined?(ChefUtils::CANARY)
+require "etc" unless defined?(Etc)
require_relative "config"
require_relative "exceptions"
require_relative "logger"
diff --git a/chef-utils/lib/chef-utils/version.rb b/chef-utils/lib/chef-utils/version.rb
index 15dd917a1d..8c867bd068 100644
--- a/chef-utils/lib/chef-utils/version.rb
+++ b/chef-utils/lib/chef-utils/version.rb
@@ -16,5 +16,5 @@
module ChefUtils
CHEFUTILS_ROOT = File.expand_path("..", __dir__)
- VERSION = "18.0.135"
+ VERSION = "18.0.142"
end
diff --git a/cspell.json b/cspell.json
index 889d0a48a2..3bbdfbc5e1 100644
--- a/cspell.json
+++ b/cspell.json
@@ -395,6 +395,7 @@
"fmri",
"fname",
"foorb",
+ "FORCECLOSEAPPLICATIONS",
"FORCEMINIMIZE",
"FORCEOFFFEEDBACK",
"FORCEONFEEDBACK",
@@ -992,6 +993,7 @@
"PRINTPROCESSOR",
"PRINTQ",
"PROCNUM",
+ "processname",
"procs",
"progname",
"PROMPTSTRUCT",
@@ -1215,6 +1217,7 @@
"signedheaderauth",
"SIGQUIT",
"SIGUSR",
+ "silentlycontinue",
"SINGLELINE",
"singleline",
"Singleuser",
@@ -1372,6 +1375,7 @@
"unformatter",
"unhold",
"unignored",
+ "unins",
"uninst",
"unintuitive",
"unixy",
diff --git a/docs/dev/how_to/adding_documentation_to_infra_resources.md b/docs/dev/how_to/adding_documentation_to_infra_resources.md
new file mode 100644
index 0000000000..7a333fa35f
--- /dev/null
+++ b/docs/dev/how_to/adding_documentation_to_infra_resources.md
@@ -0,0 +1,29 @@
+# Adding documentation to resources:
+The documentation for Infra Client resources resides at [chef-wed-docs repository](https://github.com/chef/chef-web-docs/).
+Currently in order to reflect the documentation added to Infra Client resources on the [website](https://docs.chef.io/) we need to follow some manual steps.
+
+# Prerequisite:
+Clone [chef-wed-docs repository](https://github.com/chef/chef-web-docs/). Install Hugo, npm, go.
+
+`brew tap go-swagger/go-swagger && brew install go-swagger hugo node go jq`
+
+# Generating YAML files:
+The YAML data is generated using a [rake](https://github.com/chef/chef/blob/main/tasks/docs.rb) task in the `chef/chef` repository.
+
+`rake docs_site:resources`
+
+The YAML files will be created under `docs_site` directory. Copy the corresponding file(s) for the resource(s) for which documentation is updated to [chef-web-docs/data/infra/resources](https://github.com/chef/chef-web-docs/tree/main/data/infra/resources).
+(NOTE: The data file(.yaml) should be verified and edited manually to remove any inaccuracies.)
+
+# Generating mark down(.md) files:
+Go to the [chef-web-docs](https://github.com/chef/chef-web-docs/) repository, where we copied the YAML file(s).
+Using the YAML file(s) create corresponding markdown(.md) file(s).
+
+`hugo new -k resource content/resources/RESOURCE_NAME.md`
+
+# Verifying changes locally:
+Run server locally and verify the changes in your browser at http://localhost:1313
+
+`make serve`
+
+Once changes are verified, create a PR at [chef-web-docs](https://github.com/chef/chef-web-docs/) repository. \ No newline at end of file
diff --git a/kitchen-tests/cookbooks/end_to_end/recipes/_chef_client_trusted_certificate.rb b/kitchen-tests/cookbooks/end_to_end/recipes/_chef_client_trusted_certificate.rb
index e719a01837..e085519c4a 100644
--- a/kitchen-tests/cookbooks/end_to_end/recipes/_chef_client_trusted_certificate.rb
+++ b/kitchen-tests/cookbooks/end_to_end/recipes/_chef_client_trusted_certificate.rb
@@ -1,10 +1,10 @@
chef_client_trusted_certificate "self-signed.badssl.com" do
certificate <<~CERT
-----BEGIN CERTIFICATE-----
-MIIDeTCCAmGgAwIBAgIJALvxdCPEMG1VMA0GCSqGSIb3DQEBCwUAMGIxCzAJBgNV
+MIIDeTCCAmGgAwIBAgIJAMtEwC/G1C5xMA0GCSqGSIb3DQEBCwUAMGIxCzAJBgNV
BAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQHDA1TYW4gRnJhbmNp
c2NvMQ8wDQYDVQQKDAZCYWRTU0wxFTATBgNVBAMMDCouYmFkc3NsLmNvbTAeFw0y
-MjA1MTcyMTE1MjVaFw0yNDA1MTYyMTE1MjVaMGIxCzAJBgNVBAYTAlVTMRMwEQYD
+MjA4MTIxNTU5MTBaFw0yNDA4MTExNTU5MTBaMGIxCzAJBgNVBAYTAlVTMRMwEQYD
VQQIDApDYWxpZm9ybmlhMRYwFAYDVQQHDA1TYW4gRnJhbmNpc2NvMQ8wDQYDVQQK
DAZCYWRTU0wxFTATBgNVBAMMDCouYmFkc3NsLmNvbTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAMIE7PiM7gTCs9hQ1XBYzJMY61yoaEmwIrX5lZ6xKyx2
@@ -14,12 +14,12 @@ xPxTuW1CrbV8/q71FdIzSOciccfCFHpsKOo3St/qbLVytH5aohbcabFXRNsKEqve
ww9HdFxBIuGa+RuT5q0iBikusbpJHAwnnqP7i/dAcgCskgjZjFeEU4EFy+b+a1SY
QCeFxxC7c3DvaRhBB0VVfPlkPz0sw6l865MaTIbRyoUCAwEAAaMyMDAwCQYDVR0T
BAIwADAjBgNVHREEHDAaggwqLmJhZHNzbC5jb22CCmJhZHNzbC5jb20wDQYJKoZI
-hvcNAQELBQADggEBAI8cPgdGNaXwomKxzksJPMCHQC3zkTKQBqGAk4yWp3w7/WHV
-1dTz/ezCH1UpxRUqTIZ/jS7OwrERRJCw6wr84WrKj0TKgZI00LEoRg3eK+U5QJj1
-4HZ8UTVkYL7OhPBanGgACw0eOvFtLdwizBTAw+B79Uzx0j84babX8HFq8UJR997H
-FN+Fo9w4+ObXiA6BB9+fsqhRKPcIvt4HI6eQ4S/5lBkZbhHIPSR5oy4y7AsnZeb8
-hFNhP/WPdRvk4za0cAkuhoY5/3A/U4eFrXYL4N8mhqiRWvqbSaBT2YnlbSVxEDQM
-CJWRCL+Lq4ZHGYgXSi1T0/LJHSlOa1F5qhZpk9A=
+hvcNAQELBQADggEBAKgnD+Ak7ttVfKvriYAsf4ttTYfOuyLfAr4hTTSXLN2u1ySD
+fIpqSyeOkiEwfD5Bt7C/muEXEIyG/y6/C/ozb5JBvdd8c7zicLmaHtZtZbj4+H1b
+/gqaBHuvWxiRR91bbgNaKsPMGCWiAvUt4/+y8z6xefUS+aKeFNhYjdwyFIr17j3Q
+gxGpgCbYLLIoewP+Oj6xvZgGl6vj0xW9a4144xjFo1o1vqWkj+3IZGmnZ/jyznWd
+5XzZCUaM9z6nn7NVxQZEelk885Q3oUxY96rRO+IUA8Vnk3iEtOdZPbNBaZwvgkfz
+4vhvM8gKbdeeWoOAJDLzDZiDrUpKtIkBcLuJ7Cw=
-----END CERTIFICATE-----
CERT
end
diff --git a/kitchen-tests/cookbooks/end_to_end/recipes/linux.rb b/kitchen-tests/cookbooks/end_to_end/recipes/linux.rb
index 079f66f511..01268d320f 100644
--- a/kitchen-tests/cookbooks/end_to_end/recipes/linux.rb
+++ b/kitchen-tests/cookbooks/end_to_end/recipes/linux.rb
@@ -44,10 +44,13 @@ include_recipe "::_chef_gem"
include_recipe "ntp" unless fedora? # fedora 34+ doesn't have NTP
-resolver_config "/etc/resolv.conf" do
- nameservers [ "8.8.8.8", "8.8.4.4" ]
- search [ "chef.io" ]
-end
+# FIXME linux docker images seem to produce
+# EBUSY errors on moving or writing to /etc/resolv.conf
+#
+# resolver_config "/etc/resolv.conf" do
+# nameservers [ "8.8.8.8", "8.8.4.4" ]
+# search [ "chef.io" ]
+# end
users_from_databag = search("users", "*:*")
diff --git a/kitchen-tests/cookbooks/end_to_end/recipes/windows.rb b/kitchen-tests/cookbooks/end_to_end/recipes/windows.rb
index d37174edd2..0c60bf1b0f 100644
--- a/kitchen-tests/cookbooks/end_to_end/recipes/windows.rb
+++ b/kitchen-tests/cookbooks/end_to_end/recipes/windows.rb
@@ -13,6 +13,59 @@ chef_sleep "2"
execute "dir"
+execute "Print git version" do
+ command "git --version & git --exec-path"
+ live_stream true
+end
+
+# FIXME Uninstall git using powershell
+# this is a temporary band-aid due to the fallback git version in
+# https://github.com/sous-chefs/git defaulting to an older version of git
+# than will be installed on the current image this runs in for GitHub Actions
+powershell_script "uninstall_git" do
+ code <<-EOH
+ $possibleInstalledPaths = @("C:/Program Files/Git/", "C:/Program Files (x64)/Git/", "c:/git/")
+ $foundAnInstallation = $false
+ ### For all places where Git "could" be.
+ foreach ($installPath in $possibleInstalledPaths)
+ {
+ ### If the path where Git could exist
+ if (Test-Path($installPath))
+ {
+ ## Some Git stuff might be running.. kill them.
+ Stop-Process -processname Bash -erroraction 'silentlycontinue'
+ Stop-Process -processname Putty* -erroraction 'silentlycontinue'
+
+ $foundAnInstallation = $true
+ Write-Host "Removing Git from " $installPath
+
+ ### Find if there's an uninstaller in the folder.
+ $uninstallers = Get-ChildItem $installPath"unins*.exe"
+
+ ### In reality, there should only be just one that matches.
+ foreach ($uninstaller in $uninstallers)
+ {
+ ### Invoke the uninstaller.
+ $uninstallerCommandLineOptions = "/SP- /VERYSILENT /SUPPRESSMSGBOXES /FORCECLOSEAPPLICATIONS"
+ Start-Process -Wait -FilePath $uninstaller -ArgumentList $uninstallerCommandLineOptions
+ }
+
+ ### Remove the folder if it didn't clean up properly.
+ if (Test-Path($installPath))
+ {
+ Remove-Item -Recurse -Force $installPath
+ }
+ }
+ }
+
+ if (!($foundAnInstallation))
+ {
+ Write-Host "No git installation found. Nothing to uninstall"
+ }
+ EOH
+ live_stream true
+end
+
powershell_script "sleep 1 second" do
code "Start-Sleep -s 1"
live_stream true
diff --git a/knife/lib/chef/knife/version.rb b/knife/lib/chef/knife/version.rb
index 95ae68cdad..3b53b1177e 100644
--- a/knife/lib/chef/knife/version.rb
+++ b/knife/lib/chef/knife/version.rb
@@ -17,7 +17,7 @@
class Chef
class Knife
KNIFE_ROOT = File.expand_path("../..", __dir__)
- VERSION = "18.0.135".freeze
+ VERSION = "18.0.142".freeze
end
end
diff --git a/lib/chef/resource/chef_client_cron.rb b/lib/chef/resource/chef_client_cron.rb
index 26894c5ae3..b5014a368d 100644
--- a/lib/chef/resource/chef_client_cron.rb
+++ b/lib/chef/resource/chef_client_cron.rb
@@ -98,7 +98,7 @@ class Chef
property :splay, [Integer, String],
default: 300,
coerce: proc { |x| Integer(x) },
- callbacks: { "should be a positive number" => proc { |v| v > 0 } },
+ callbacks: { "should be a positive number" => proc { |v| v >= 0 } },
description: "A random number of seconds between 0 and X to add to interval so that all #{ChefUtils::Dist::Infra::CLIENT} commands don't execute at the same time."
property :mailto, String,
diff --git a/lib/chef/resource/chef_client_launchd.rb b/lib/chef/resource/chef_client_launchd.rb
index 1016ea4d49..035f2353b7 100644
--- a/lib/chef/resource/chef_client_launchd.rb
+++ b/lib/chef/resource/chef_client_launchd.rb
@@ -60,7 +60,7 @@ class Chef
property :splay, [Integer, String],
default: 300,
coerce: proc { |x| Integer(x) },
- callbacks: { "should be a positive number" => proc { |v| v > 0 } },
+ callbacks: { "should be a positive number" => proc { |v| v >= 0 } },
description: "A random number of seconds between 0 and X to add to interval so that all #{ChefUtils::Dist::Infra::CLIENT} commands don't execute at the same time."
property :accept_chef_license, [true, false],
diff --git a/lib/chef/resource/chef_client_scheduled_task.rb b/lib/chef/resource/chef_client_scheduled_task.rb
index 422881deb8..f04598cdc6 100644
--- a/lib/chef/resource/chef_client_scheduled_task.rb
+++ b/lib/chef/resource/chef_client_scheduled_task.rb
@@ -107,7 +107,7 @@ class Chef
property :splay, [Integer, String],
coerce: proc { |x| Integer(x) },
- callbacks: { "should be a positive number" => proc { |v| v > 0 } },
+ callbacks: { "should be a positive number" => proc { |v| v >= 0 } },
description: "A random number of seconds between 0 and X to add to interval so that all #{ChefUtils::Dist::Infra::CLIENT} commands don't execute at the same time.",
default: 300
diff --git a/lib/chef/resource/sysctl.rb b/lib/chef/resource/sysctl.rb
index 97f919fbc9..61f3686ccc 100644
--- a/lib/chef/resource/sysctl.rb
+++ b/lib/chef/resource/sysctl.rb
@@ -187,7 +187,7 @@ class Chef
sysctl_lines << "#{new_resource.key} = #{new_resource.value}"
- sysctl_lines.join("\n")
+ sysctl_lines.join("\n") + "\n"
end
end
diff --git a/lib/chef/resource/windows_user_privilege.rb b/lib/chef/resource/windows_user_privilege.rb
index e4679f50b9..251382e46f 100644
--- a/lib/chef/resource/windows_user_privilege.rb
+++ b/lib/chef/resource/windows_user_privilege.rb
@@ -23,7 +23,7 @@ class Chef
class WindowsUserPrivilege < Chef::Resource
provides :windows_user_privilege
- description "The windows_user_privilege resource allows to add and set principal (User/Group) to the specified privilege.\n Ref: https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-rights-assignment"
+ description "The windows_user_privilege resource allows to add and set principal (User/Group) to the specified privilege.\n Ref: https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-rights-assignment\n For list of principals to use with :add action Ref: https://docs.microsoft.com/en-us/windows/security/identity-protection/access-control/special-identities"
introduced "16.0"
diff --git a/lib/chef/run_context.rb b/lib/chef/run_context.rb
index ce4d545aa4..11bfc6e3c6 100644
--- a/lib/chef/run_context.rb
+++ b/lib/chef/run_context.rb
@@ -413,9 +413,9 @@ class Chef
logger.warn(<<~ERROR_MESSAGE)
MissingCookbookDependency:
Recipe `#{recipe_name}` is not in the run_list, and cookbook '#{cookbook_name}'
- is not a dependency of any cookbook in the run_list. To load this recipe,
- first add a dependency on cookbook '#{cookbook_name}' in the cookbook you're
- including it from in that cookbook's metadata.
+ is not a dependency of any cookbook in the run_list. To load this recipe,
+ first add a dependency of the cookbook '#{cookbook_name}' into the metadata
+ of the cookbook which depends on '#{cookbook_name}'.
ERROR_MESSAGE
end
diff --git a/lib/chef/version.rb b/lib/chef/version.rb
index 724b801442..a95964f938 100644
--- a/lib/chef/version.rb
+++ b/lib/chef/version.rb
@@ -23,7 +23,7 @@ require_relative "version_string"
class Chef
CHEF_ROOT = File.expand_path("..", __dir__)
- VERSION = Chef::VersionString.new("18.0.135")
+ VERSION = Chef::VersionString.new("18.0.142")
end
#
diff --git a/spec/unit/resource/chef_client_cron_spec.rb b/spec/unit/resource/chef_client_cron_spec.rb
index b738a20a3a..cc72c38a39 100644
--- a/spec/unit/resource/chef_client_cron_spec.rb
+++ b/spec/unit/resource/chef_client_cron_spec.rb
@@ -43,6 +43,11 @@ describe Chef::Resource::ChefClientCron do
expect { resource.splay("-10") }.to raise_error(Chef::Exceptions::ValidationFailed)
end
+ it "set splay to 0" do
+ resource.splay "0"
+ expect(resource.splay).to eql(0)
+ end
+
it "builds a default value for chef_binary_path dist values" do
expect(resource.chef_binary_path).to eql("/opt/chef/bin/chef-client")
end
diff --git a/spec/unit/resource/chef_client_launchd_spec.rb b/spec/unit/resource/chef_client_launchd_spec.rb
index 1d0015cb0d..93d56a784e 100644
--- a/spec/unit/resource/chef_client_launchd_spec.rb
+++ b/spec/unit/resource/chef_client_launchd_spec.rb
@@ -43,6 +43,11 @@ describe Chef::Resource::ChefClientLaunchd do
expect { resource.splay("-10") }.to raise_error(Chef::Exceptions::ValidationFailed)
end
+ it "set splay to 0" do
+ resource.splay "0"
+ expect(resource.splay).to eql(0)
+ end
+
it "builds a default value for chef_binary_path dist values" do
expect(resource.chef_binary_path).to eql("/opt/chef/bin/chef-client")
end
diff --git a/spec/unit/resource/chef_client_scheduled_task_spec.rb b/spec/unit/resource/chef_client_scheduled_task_spec.rb
index bf165d4b70..45ed8c0602 100644
--- a/spec/unit/resource/chef_client_scheduled_task_spec.rb
+++ b/spec/unit/resource/chef_client_scheduled_task_spec.rb
@@ -43,6 +43,11 @@ describe Chef::Resource::ChefClientScheduledTask do
expect { resource.splay("-10") }.to raise_error(Chef::Exceptions::ValidationFailed)
end
+ it "set splay to 0" do
+ resource.splay "0"
+ expect(resource.splay).to eql(0)
+ end
+
it "coerces frequency_modifier to an Integer" do
resource.frequency_modifier "10"
expect(resource.frequency_modifier).to eql(10)
diff --git a/spec/unit/resource/chef_client_systemd_timer_spec.rb b/spec/unit/resource/chef_client_systemd_timer_spec.rb
index dfe01973fb..5fe4e80146 100644
--- a/spec/unit/resource/chef_client_systemd_timer_spec.rb
+++ b/spec/unit/resource/chef_client_systemd_timer_spec.rb
@@ -105,4 +105,4 @@ describe Chef::Resource::ChefClientSystemdTimer do
expect(provider.service_content["Service"]["CPUQuota"]).to eq(50)
end
end
-end \ No newline at end of file
+end
diff --git a/spec/unit/resource/sysctl_spec.rb b/spec/unit/resource/sysctl_spec.rb
index 47556f5ee8..42b0c77d83 100644
--- a/spec/unit/resource/sysctl_spec.rb
+++ b/spec/unit/resource/sysctl_spec.rb
@@ -62,14 +62,14 @@ describe Chef::Resource::Sysctl do
context "when comment is a String" do
it "Returns content for use with a file resource" do
resource.comment("This sets foo / bar on our system")
- expect(provider.contruct_sysctl_content).to eql("# This sets foo / bar on our system\nfoo = bar")
+ expect(provider.contruct_sysctl_content).to eql("# This sets foo / bar on our system\nfoo = bar\n")
end
end
context "when comment is an Array" do
it "Returns content for use with a file resource" do
resource.comment(["This sets foo / bar on our system", "We need for baz"])
- expect(provider.contruct_sysctl_content).to eql("# This sets foo / bar on our system\n# We need for baz\nfoo = bar")
+ expect(provider.contruct_sysctl_content).to eql("# This sets foo / bar on our system\n# We need for baz\nfoo = bar\n")
end
end
end