|9e1 ddlmZddlZddlZddlZddlmZddlmZm Z dZ dZ dZ dZ eGd d Zd d ZdS))absolute_importN) dataclass) run_commandExternalProgramFailedcptj|}d|jDS)zF Get dict with key-value pairs of default argument values cTi|]%\}}|jtjju||j&S)defaultinspect Parameterempty).0kvs K/opt/cloudlinux/venv/lib64/python3.11/site-packages/clconfigure/__init__.py z%_get_default_args..s=    Aq 9G-3 3 3 19 3 3 3)r signature parametersitems)funcrs r_get_default_argsrsD !$''I  (..00   rci}|t||tt|jj||||S)zD Get all func arguments including defaults, args and kwargs )updaterdictzip__code__ co_varnames)rargskwargs func_argss r_get_args_dictr"skI &t,,--- T#dm7>>??@@@ V rcfd}|S)z: Simple wrapper that logs execution begin and end cfd}|S)Nc t||}tjjdi| |i|dS#t$r"tjdjdi|wxYw)Nz FAILED to %sr )r"logginginfoformat Exception exception)rr r!rnames r wrapped_funcz-task..decorator..wrapped_func.s&tT6::I L11y11 2 2 2 d%f%%%%%   !.+$+2J2J 2J2JKKK s =,A)r )rr,r+s` r decoratorztask..decorator-s*      rr )r+r-s` rtaskr.)s$      rctj|}|tj tj|}tjd|_tj|_||n#t$rYnwxYw|j D][}t|tj r?|j tjkr*tjd|_tj|_\|S)z& Logger setup for all modules z*[%(levelname)s | %(asctime)s]: %(message)sz$[cloudlinux-customizer]: %(message)s)r& getLoggersetLevelDEBUG FileHandler Formatter formatterlevel addHandlerIOErrorhandlers isinstance StreamHandlerstreamsysstderrINFO) logger_namelog_file app_loggerfhhandlers r setup_loggerrE:s";//J &&&"   * *( 8:: =b!!!!      &)) gw4 5 5 )'.CJ:V:V ' 12X Y YG #LGM sB BBc2eZdZUdZeed<eed<eed<dS) RunResultz' Describes process call result exitcodestdoutr>N)__name__ __module__ __qualname____doc__int__annotations__strr rrrGrGPs7MMM KKK KKKKKrrGFctjdd| t|d\}}}tjd|tjd|t |||S#t $r>}|s!tjt|t dddcYd}~Sd}~wwxYw) zl Just a wrapper above run_command that provides some cool logging of what happens in subprocess z Running %s T)return_full_outputz Stdout: %sz Stderr: %sN)r&debugjoinrrGrerrorrP)cmdfail_okrHrIr>es rrunr[Zs  M, ...)#.st#L#L#L && lF+++ lF+++66222 ))) " M#a&& ! ! !T4(((((((()sAA:: C3B=7C=C)F) __future__rr&r r= dataclassesrclcommon.utilsrrrr"r.rErGr[r rrr_s '&&&&& !!!!!!========      ",  ))))))r