U
    ™K7\Î  ã                   @   sh   d dl Z d dlZd dlZddlmZ ej dd¡ZdZe 	e
¡Zddd„Zd	d
„ Zdd„ Zddd„ZdS )é    Né   )ÚIS_WINDOWS_PLATFORMz.dockerzconfig.jsonz
.dockercfgc              
   C   s€   t td | tƒ tj tƒ t¡tj tƒ t¡gƒƒ}t	 
d t|ƒ¡¡ |D ](}tj |¡rHt	 
d |¡¡ |  S qHt	 
d¡ d S )NzTrying paths: {0}zFound file at path: {0}zNo config file found)ÚlistÚfilterÚconfig_path_from_environmentÚosÚpathÚjoinÚhome_dirÚDOCKER_CONFIG_FILENAMEÚLEGACY_DOCKER_CONFIG_FILENAMEÚlogÚdebugÚformatÚreprÚexists)Úconfig_pathÚpathsr   © r   ú5/usr/lib/python3/dist-packages/docker/utils/config.pyÚfind_config_file   s    ü

r   c                  C   s*   t j d¡} | sd S t j | t j t¡¡S )NZDOCKER_CONFIG)r   ÚenvironÚgetr   r	   Úbasenamer   )Z
config_dirr   r   r   r   !   s    r   c                   C   s"   t rtj dd¡S tj d¡S dS )z”
    Get the user's home directory, using the same logic as the Docker Engine
    client - use %USERPROFILE% on Windows, $HOME/getuid on POSIX.
    ZUSERPROFILEÚ ú~N)r   r   r   r   r   Ú
expanduserr   r   r   r   r
   (   s    r
   c              
   C   s|   t | ƒ}|si S z,t|ƒ}t |¡W  5 Q R £ W S Q R X W n0 ttfk
rl } zt |¡ W 5 d }~X Y nX t d¡ i S )Nz4All parsing attempts failed - returning empty config)r   ÚopenÚjsonÚloadÚIOErrorÚ
ValueErrorr   r   )r   Zconfig_fileÚfÚer   r   r   Úload_general_config3   s    
"
r$   )N)N)r   Zloggingr   Z	constantsr   r   r	   r   r   Z	getLoggerÚ__name__r   r   r   r
   r$   r   r   r   r   Ú<module>   s   

