@@ -165,8 +165,8 @@ def tearDown(self):
165
165
166
166
def test_kwargs_from_env_empty (self ):
167
167
os .environ .update (DOCKER_HOST = '' ,
168
- DOCKER_CERT_PATH = '' ,
169
- DOCKER_TLS_VERIFY = '' )
168
+ DOCKER_CERT_PATH = '' )
169
+ os . environ . pop ( ' DOCKER_TLS_VERIFY' , None )
170
170
171
171
kwargs = kwargs_from_env ()
172
172
self .assertEqual (None , kwargs .get ('base_url' ))
@@ -178,10 +178,11 @@ def test_kwargs_from_env_tls(self):
178
178
DOCKER_TLS_VERIFY = '1' )
179
179
kwargs = kwargs_from_env (assert_hostname = False )
180
180
self .assertEqual ('https://192.168.59.103:2376' , kwargs ['base_url' ])
181
- self .assertTrue ('ca.pem' in kwargs ['tls' ].verify )
181
+ self .assertTrue ('ca.pem' in kwargs ['tls' ].ca_cert )
182
182
self .assertTrue ('cert.pem' in kwargs ['tls' ].cert [0 ])
183
183
self .assertTrue ('key.pem' in kwargs ['tls' ].cert [1 ])
184
184
self .assertEqual (False , kwargs ['tls' ].assert_hostname )
185
+ self .assertTrue (kwargs ['tls' ].verify )
185
186
try :
186
187
client = Client (** kwargs )
187
188
self .assertEqual (kwargs ['base_url' ], client .base_url )
@@ -190,6 +191,51 @@ def test_kwargs_from_env_tls(self):
190
191
except TypeError as e :
191
192
self .fail (e )
192
193
194
+ def test_kwargs_from_env_tls_verify_false (self ):
195
+ os .environ .update (DOCKER_HOST = 'tcp://192.168.59.103:2376' ,
196
+ DOCKER_CERT_PATH = TEST_CERT_DIR ,
197
+ DOCKER_TLS_VERIFY = '' )
198
+ kwargs = kwargs_from_env (assert_hostname = True )
199
+ self .assertEqual ('https://192.168.59.103:2376' , kwargs ['base_url' ])
200
+ self .assertTrue ('ca.pem' in kwargs ['tls' ].ca_cert )
201
+ self .assertTrue ('cert.pem' in kwargs ['tls' ].cert [0 ])
202
+ self .assertTrue ('key.pem' in kwargs ['tls' ].cert [1 ])
203
+ self .assertEqual (True , kwargs ['tls' ].assert_hostname )
204
+ self .assertEqual (False , kwargs ['tls' ].verify )
205
+ try :
206
+ client = Client (** kwargs )
207
+ self .assertEqual (kwargs ['base_url' ], client .base_url )
208
+ self .assertEqual (kwargs ['tls' ].ca_cert , client .ca_cert )
209
+ self .assertEqual (kwargs ['tls' ].cert , client .cert )
210
+ self .assertFalse (kwargs ['tls' ].verify )
211
+ except TypeError as e :
212
+ self .fail (e )
213
+
214
+ def test_kwargs_from_env_tls_verify_false_no_cert (self ):
215
+ temp_dir = tempfile .mkdtemp ()
216
+ cert_dir = os .path .join (temp_dir , '.docker' )
217
+ shutil .copytree (TEST_CERT_DIR , cert_dir )
218
+
219
+ os .environ .update (DOCKER_HOST = 'tcp://192.168.59.103:2376' ,
220
+ HOME = temp_dir ,
221
+ DOCKER_TLS_VERIFY = '' )
222
+ os .environ .pop ('DOCKER_CERT_PATH' , None )
223
+ kwargs = kwargs_from_env (assert_hostname = True )
224
+ self .assertEqual ('https://192.168.59.103:2376' , kwargs ['base_url' ])
225
+ self .assertTrue ('ca.pem' in kwargs ['tls' ].ca_cert )
226
+ self .assertTrue ('cert.pem' in kwargs ['tls' ].cert [0 ])
227
+ self .assertTrue ('key.pem' in kwargs ['tls' ].cert [1 ])
228
+ self .assertEqual (True , kwargs ['tls' ].assert_hostname )
229
+ self .assertEqual (False , kwargs ['tls' ].verify )
230
+ try :
231
+ client = Client (** kwargs )
232
+ self .assertEqual (kwargs ['base_url' ], client .base_url )
233
+ self .assertEqual (kwargs ['tls' ].ca_cert , client .ca_cert )
234
+ self .assertEqual (kwargs ['tls' ].cert , client .cert )
235
+ self .assertFalse (kwargs ['tls' ].verify )
236
+ except TypeError as e :
237
+ self .fail (e )
238
+
193
239
def test_kwargs_from_env_no_cert_path (self ):
194
240
try :
195
241
temp_dir = tempfile .mkdtemp ()
@@ -201,7 +247,8 @@ def test_kwargs_from_env_no_cert_path(self):
201
247
DOCKER_TLS_VERIFY = '1' )
202
248
203
249
kwargs = kwargs_from_env ()
204
- self .assertIn (cert_dir , kwargs ['tls' ].verify )
250
+ self .assertTrue (kwargs ['tls' ].verify )
251
+ self .assertIn (cert_dir , kwargs ['tls' ].ca_cert )
205
252
self .assertIn (cert_dir , kwargs ['tls' ].cert [0 ])
206
253
self .assertIn (cert_dir , kwargs ['tls' ].cert [1 ])
207
254
finally :
0 commit comments