Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
3

ÐZødª ã@sNddlZddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ddl
mZddlZddl
Z
ddlZyddlZWnek
r ddlZYnXddlmZyddlmZWn ek
rÞddlmZYnXddlZejeƒZejjZdZdgZ d	d
gZ!ddgZ"iZ#iZ$x’e"D]ŠZ%ge#e%<x8e!D]0Z&ej'e&d
e%iej(ej)BƒZ*e#e%j+e*ƒq4Wge$e%<x8e D]0Z&ej'e&d
e%iej(ej)BƒZ*e$e%j+e*ƒqvWq"Wd/dd„Z,dd„Z-dd„Z.dd„Z/dd„Z0dd„Z1dd„Z2dd„Z3ej4ej4ej4dfd d!„Z5d0d#d$„Z6d%d&„Z7Gd'd(„d(e8ƒZ9d)d*„Z:ej;d+d,„ƒZ<d-d.„Z=dS)1éN)Úsleep)ÚProcess)Ústrutils)Úlogéz//z$(%(key)s[0-9]*\s*[=]\s*)[^\s^\'^\"]+z.(%(key)s[0-9]*\s*[=]\s*[\"\'])[^\"\']*([\"\'])z-([-]{2}%(key)s[0-9]*\s+)[^\'^\"^=^\s]+([\s]*)ÚdataÚsecretÚkeyú***cCs¦d|}d|d}t|tƒr(dj|ƒ}t|tƒrŽxntD]P}||jƒkr8xt|D]}tj|||ƒ}qRWxt	|D]}tj|||ƒ}qrWq8Wnt|t
ƒr¢tj|ƒ|S)Nz\g<1>z\g<2>ú )
Ú
isinstanceÚlistÚjoinÚstrÚ_SANITIZE_KEYSÚlowerÚ_SANITIZE_PATTERNS_2ÚreÚsubÚ_SANITIZE_PATTERNS_1ÚdictrZmask_dict_password)ÚmessagerZsubstitute1Zsubstitute2r	Úpattern©rú/usr/lib/python3.6/utils.pyÚsanitize_message9s





rcGs`y4t||d}|jƒ|jƒr2tdƒtj|dƒWn&tk
rZ}z
|‚WYdd}~XnXdS)N)ÚtargetÚargsé
)rÚstartZis_aliverÚosÚutimeÚ	Exception)ÚmethodÚprogress_tracking_file_pathrÚprocessÚexrrrÚrun_processJsr'c	Cs@tjtjtjƒ}tjtj|jƒdtjd|dd…ƒƒdd…ƒS)Ni‰Z256sééé)	ÚsocketZAF_INETZ
SOCK_DGRAMZ	inet_ntoaÚfcntlZioctlÚfilenoÚstructÚpack)ZifnameÚsrrrÚget_ip_addressWs
r1cCs<ddd„}tjƒ}|j|ƒ||ddƒ}|dk	r4|StjƒS)NcSs"|j||ƒr|j|||ƒSdSdS)N)Z
has_optionÚget)ÚcfgZSectionZOptionZKeyrrrÚget_config_valueasz$get_lan_ip.<locals>.get_config_valueZDEFAULTZmy_ip)N)ÚConfigParserÚreadr+Zgethostname)Zconfig_filer4r3ZiprrrÚ
get_lan_ip`s

r7cCsTytj|ƒWn@tk
rN}z$|jtjkr<tjj|ƒs>‚n‚WYdd}~XnXdS)zeCreate a directory (and any ancestor directories required)

    :param path: Directory to create
    N)r ÚmakedirsÚOSErrorÚerrnoZEEXISTÚpathÚisdir)r;ÚexcrrrÚensure_treepsr>c
Cs&t|dƒtj|dƒWdQRXdS)zy Utility to simulate the filesystem "touch" command.

    Args:
        file_path (str): Path to file to be touched.
    ÚaN)Úopenr r!)Z	file_pathrrrÚ
touch_files
rAcCs†tjd||fƒy$t|dƒ}|j|ƒWdQRXWnJtk
r€}z.tdƒt|dƒ}|j|ƒWdQRXWYdd}~XnXdS)Nzupdate_progress %s: %sr?r)ÚLOGÚinfor@Úwriter"r)r$Zprogress_msgÚprogress_tracking_filer&rrrÚupdate_progresssrFcCshyt|dƒ
}|jƒSQRXWnDtk
rb}z(tdƒt|dƒ
}|jƒSQRXWYdd}~XnXdS)NÚrr)r@Ú	readlinesr"r)r$rEr&rrrÚget_progress˜srIFcCstj||||dd}|S)NF)ÚstdinÚstdoutÚstderrÚshell)Ú
subprocessÚPopen)ÚcmdrJrKrLrMr%rrrÚrun_cmd£srQécCs¼yd}xB|jƒdkrH|dkr&||kr&Pt|ƒ|d7}|dk	rt|ƒqW|jjƒ|j}|rŽtjd|ƒtjd|t	|j
jƒdƒ|dœƒ|Stk
r¶}z
|‚WYdd}~XnXdS)Nrrz
Result was %sz7Execution error %(exit_code)d (%(stderr)s). cmd %(cmd)szutf-8)Z	exit_coderLrP)
ZpollrrArJÚcloseÚ
returncoderBÚerrorZ	exceptionrrLr6r")r%rPZ
sleep_timeZno_of_countZ
progress_fileÚcountZ_returncoder&rrrÚpoll_process°s*
rWc
Ksîdd„}yº|jddƒ}|jddƒ}|jddƒ}|dkrb|tƒdddgƒdddd	||d
|g}n^|dkrÀ|jddƒ}|jd
dƒ}|tƒddddd
gƒdddd	|d|d
|d|d|g}|Stk
rè}	z
|	‚WYdd}	~	XnXdS)NcSs2x,|D]$}||dkrtd||dfƒ‚qWdS)Nz8Required parameter: %s for %s connection can not be NonerP)r")ÚlocalsÚkeysr	rrrÚ
_key_checkÐs

z!get_cmd_specs.<locals>._key_checkÚauthorized_keyÚuserÚhostZsshz-ozStrictHostKeyChecking=noz-iú@ZscpÚsource_pathÚ	dest_pathz-rú:z/*)r2rXr")
rPÚkwargsrZr[r\r]Zcmdspecr_r`r&rrrÚ
get_cmd_specsÏs<rcc@seZdZdd„ZdS)Úget_dummy_objectcKs|jj|ƒdS)N)Ú__dict__Úupdate)ÚselfrbrrrÚ__init__ýszget_dummy_object.__init__N)Ú__name__Ú
__module__Ú__qualname__rhrrrrrdüsrdcCs
|jdƒS)Nz%Y-%m-%dT%H:%M:%S.%f)Zstrftime)ZatrrrÚstrtimesrlcksz|jƒ}d|krtj|d<tjf|Ž}z
|VWdytj|ƒWn2tk
rr}ztj	t
dƒ|ƒWYdd}~XnXXdS)NÚdirzCould not remove tmpdir: %s)ÚcopyÚCONFÚtempdirÚtempfileZmkdtempÚshutilZrmtreer9rBrUZ_LE)rbZargdictZtmpdirÚerrrrps

rpcCsZy4|jddƒjdƒd}||d…}tj|ƒddStk
rT}z|Sd}~XnXdS)zl
        Replaces single quote with double quotes.
        It Parses the Backing File and returns json.
    ú'ú"rarNÚfileÚfilename)ÚreplaceÚfindÚjsonÚloadsr")Zbacking_fileZjson_key_positionZbacking_file_contextr&rrrÚ"parse_encrypted_image_backing_filesr|)r
)rRrN)>r rzr:r+r,r.rNrZtimerZmultiprocessingrÚ
contextlibrqrrr5ÚImportErrorZconfigparserZ
oslo_utilsrZoslo_logrZloggingZnova.openstack.commonZcontego.confZcontegoZ	getLoggerrirBZconfroZ
URL_PREFIXZ_FORMAT_PATTERNS_1Z_FORMAT_PATTERNS_2rrrr	rÚcompileÚDOTALLÚ
IGNORECASEZreg_exÚappendrr'r1r7r>rArFrIÚPIPErQrWrcÚobjectrdrlÚcontextmanagerrpr|rrrrÚ<module>sv





	

-