@@ -365,6 +365,7 @@ def __init__(
365365 ) -> None :
366366 self .reset ()
367367 self ._d = kwargs
368+ self .logger = logger
368369 self .setup_remote_server (
369370 name = name ,
370371 url = url or kwargs .get ("server" ),
@@ -377,7 +378,6 @@ def __init__(
377378 secret = secret ,
378379 )
379380 self .setup_client (cookies , timeout )
380- self .logger = logger
381381
382382 @classmethod
383383 def fromConnectServer (cls , connect_server , ** kwargs ):
@@ -431,12 +431,38 @@ def setup_remote_server(
431431 server_data = ServerStore ().resolve (name , url )
432432 if server_data .from_store :
433433 url = server_data .url
434- api_key = server_data .api_key
435- insecure = server_data .insecure
436- ca_data = server_data .ca_data
437- account_name = server_data .account_name
438- token = server_data .token
439- secret = server_data .secret
434+ if (
435+ server_data .api_key
436+ and api_key
437+ or server_data .insecure
438+ and insecure
439+ or server_data .ca_data
440+ and ca_data
441+ or server_data .account_name
442+ and account_name
443+ or server_data .token
444+ and token
445+ or server_data .secret
446+ and secret
447+ ) and self .logger :
448+ self .logger .warning (
449+ "Connect detected CLI commands and/or environment variables that overlap with stored credential.\n "
450+ )
451+ self .logger .warning (
452+ "Check your environment variables (e.g. CONNECT_API_KEY) to make sure you want them to be used.\n "
453+ )
454+ self .logger .warning (
455+ "Credential paremeters are taken with the following precedence: stored > CLI > environment.\n "
456+ )
457+ self .logger .warning (
458+ "To ignore an environment variable, override it in the CLI with an empty string (e.g. -k '').\n "
459+ )
460+ api_key = server_data .api_key or api_key
461+ insecure = server_data .insecure or insecure
462+ ca_data = server_data .ca_data or ca_data
463+ account_name = server_data .account_name or account_name
464+ token = server_data .token or token
465+ secret = server_data .secret or secret
440466 self .is_server_from_store = server_data .from_store
441467
442468 if api_key :
0 commit comments