summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhil Dibowitz <phil@ipom.com>2015-01-15 14:35:36 -0800
committerPhil Dibowitz <phil@ipom.com>2015-01-15 14:40:55 -0800
commit7e09fa58fc039d5aabdb4f041c03668797479093 (patch)
tree90481a29fc0fb154c4df252ebe75077c8acaf416
parentb9e91171f6bd4ac55d62c6b9b72838fa89a1330e (diff)
downloadchef-7e09fa58fc039d5aabdb4f041c03668797479093.tar.gz
Suppress SSL warnings if I know what I'm doing
-rw-r--r--CHANGELOG.md2
-rw-r--r--DOC_CHANGES.md3
-rw-r--r--RELEASE_NOTES.md5
-rw-r--r--lib/chef/client.rb2
-rw-r--r--lib/chef/config.rb2
-rw-r--r--spec/unit/config_spec.rb4
6 files changed, 17 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index bf7c3d9dc3..426b70c224 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -19,6 +19,8 @@
* [**Tim Smith**](https://github.com/tas50)
Typo fixes
* [Pull 2505](https://github.com/opscode/chef/pull/2505) Make Chef handle URIs in a case-insensitive manner
+* [**Phil Dibowitz**](https://github.com/jaymzh):
+ Let people disable SSL warnings.
### Chef Contributions
* ruby 1.9.3 support is dropped
diff --git a/DOC_CHANGES.md b/DOC_CHANGES.md
index 7429baca2a..55b56ac407 100644
--- a/DOC_CHANGES.md
+++ b/DOC_CHANGES.md
@@ -35,3 +35,6 @@ The `--audit-mode` flag should be a link to the documentation for that flag
This probably only needs to be a bullet point added to http://docs.getchef.com/nodes.html#about-why-run-mode under the
`certain assumptions` section
+
+## Suppress SSL Warnings
+There is now a `suppress_ssl_warnings` config to suppress the SSL warnings.
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md
index 43c8f06d93..d5c0e5024d 100644
--- a/RELEASE_NOTES.md
+++ b/RELEASE_NOTES.md
@@ -64,6 +64,11 @@ The package resource on OpenBSD is wired up to use the new OpenBSD package provi
Previously, when a URI scheme contained all uppercase letters, Chef would reject the URI as invalid. In compliance with RFC3986, Chef now treats URI schemes in a case insensitive manner.
+## Suppress SSL Warnings
+You can now disable SSL warnings with `suppress_ssl_warnings true` in your
+config. These warnings are here for a reason, so be sure you know what you
+are doing.
+
# Chef Client Release Notes 12.0.0:
# Internal API Changes in this Release
diff --git a/lib/chef/client.rb b/lib/chef/client.rb
index 77f63671d7..9fe45b77df 100644
--- a/lib/chef/client.rb
+++ b/lib/chef/client.rb
@@ -530,7 +530,7 @@ class Chef
end
def check_ssl_config
- if Chef::Config[:ssl_verify_mode] == :verify_none and !Chef::Config[:verify_api_cert]
+ if Chef::Config[:ssl_verify_mode] == :verify_none and !Chef::Config[:verify_api_cert] and !Chef::Config[:suppress_ssl_warnings]
Chef::Log.warn(<<-WARN)
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
diff --git a/lib/chef/config.rb b/lib/chef/config.rb
index 453a8f83da..f65b9a010f 100644
--- a/lib/chef/config.rb
+++ b/lib/chef/config.rb
@@ -352,6 +352,8 @@ class Chef
# be validated.
default :ssl_verify_mode, :verify_peer
+ default :suppress_ssl_warnings, false
+
# Whether or not to verify the SSL cert for HTTPS requests to the Chef
# server API. If set to `true`, the server's cert will be validated
# regardless of the :ssl_verify_mode setting. This is set to `true` when
diff --git a/spec/unit/config_spec.rb b/spec/unit/config_spec.rb
index ed2003e8bf..4ca3c588fd 100644
--- a/spec/unit/config_spec.rb
+++ b/spec/unit/config_spec.rb
@@ -246,6 +246,10 @@ describe Chef::Config do
expect(Chef::Config[:ssl_verify_mode]).to eq(:verify_peer)
end
+ it "Chef::Config[:suppress_ssl_warnings] defaults to false" do
+ expect(Chef::Config[:ssl_verify_mode]).to eq(false)
+ end
+
it "Chef::Config[:ssl_ca_path] defaults to nil" do
expect(Chef::Config[:ssl_ca_path]).to be_nil
end