diff options
-rw-r--r-- | openstack/common/apiclient/client.py | 3 | ||||
-rw-r--r-- | tests/unit/apiclient/test_client.py | 20 |
2 files changed, 23 insertions, 0 deletions
diff --git a/openstack/common/apiclient/client.py b/openstack/common/apiclient/client.py index 39595f9b..2ee580fe 100644 --- a/openstack/common/apiclient/client.py +++ b/openstack/common/apiclient/client.py @@ -123,6 +123,9 @@ class HTTPClient(object): "'%s'" % url, ] + if not kwargs.get('verify', self.verify): + string_parts.insert(1, '--insecure') + for element in kwargs['headers']: header = ("-H '%s: %s'" % self._safe_header(element, kwargs['headers'][element])) diff --git a/tests/unit/apiclient/test_client.py b/tests/unit/apiclient/test_client.py index ae859ef9..1911c4e7 100644 --- a/tests/unit/apiclient/test_client.py +++ b/tests/unit/apiclient/test_client.py @@ -252,6 +252,26 @@ class ClientTest(test_base.BaseTestCase): "{SHA1}b42162b6ffdbd7c3c37b7c95b7ba9f51dda0236d'", output) + def _test_log_req_insecure(self, verify, expected): + self.logger = self.useFixture( + fixtures.FakeLogger( + format="%(message)s", + level=logging.DEBUG, + nuke_handlers=True + ) + ) + + cs = client.HTTPClient(FakeAuthPlugin(), debug=True, verify=verify) + cs._http_log_req('GET', '/foo', {'headers': {}}) + output = self.logger.output.split('\n') + self.assertIn(expected, output) + + def test_log_req_insecure(self): + expected = "REQ: curl -g -i -X 'GET' '/foo'" + self._test_log_req_insecure(True, expected) + expected = "REQ: curl -g -i --insecure -X 'GET' '/foo'" + self._test_log_req_insecure(False, expected) + class FakeClientTest(test_base.BaseTestCase): |