§ Rl¾jAãóŽ—ddlZddlmZmZddlmZddlmZmZddl m Z m Z ddl m Z mZddlmZddlmZGd „d e¦«ZdS) éN)ÚDictÚIterable)ÚFeature)ÚExternalProgramFailedÚget_passenger_package_name)ÚCL_SELECTOR_BINÚMODULES_LOGS_DIR)ÚInstallationFailedExceptionÚPackageMissingError)ÚWizardInstaller)Úinstalled_interpreters_listcó¨—eZdZej ed¦«Zej Z d„Z d„Z d„Z d„Zed„¦«Zed„¦«Zd„Zd „Zd „Zd S) ÚNodejsInstallerz nodejs.logc ó—|j d|¦« | tdddd|dg¦«dS#t$r}t ¦«|‚d}~wwxYw)Nz,trying to set default NodeJS version as '%s'Úsetú --interpreterÚnodejsz--default-versionú--json©Ú app_loggerÚinfoÚ _run_commandrrr )ÚselfÚversionÚes úN/opt/cloudlinux/venv/lib64/python3.11/site-packages/clwizard/modules/nodejs.pyÚ_set_default_nodejs_versionz+NodejsInstaller._set_default_nodejs_versions‹€à Œ×ÒÐKÈWÑUÔUÐUð 7Ø × Ò å#ØØ#ØØ'ØØðñ ô ð ð ð øõ%ð 7ð 7ð 7Ý-Ñ/Ô/°QÐ 6øøøøð 7øøøó�!AÁ AÁ AÁAc ó—|j d|¦« | tdddd|dg¦«dS#t$r}t ¦«|‚d}~wwxYw)Nz(trying to set NodeJS Selector state '%s'rrrz--selector-statusrr)rÚstatusrs rÚ_set_cloudlinux_selector_statusz/NodejsInstaller._set_cloudlinux_selector_status)s‹€à Œ×ÒÐGÈÑPÔPÐPð 7Ø × Ò å#ØØ#ØØ'ØØðñ ô ð ð ð øõ%ð 7ð 7ð 7Ý-Ñ/Ô/°QÐ 6øøøøð 7øøørcóÒ—|j dd |¦«¦«d„|D¦«} |j|ŽdS#t$r}t ¦«|‚d}~wwxYw)Nz%Trying to install NodeJS versions: %sz, có—g|]}d|z‘ŒS)z alt-nodejs©)Ú.0rs rú z.?s€ÐFÐFÐF°'�| gÑ-ÐFÐFÐFó)rrÚjoinÚ_install_groupsrr )rÚversionsÚ group_namesrs rÚ_install_nodejs_versionsz(NodejsInstaller._install_nodejs_versions;sƒ€à Œ×ÒÐDÀdÇiÂiÐPXÑFYÔFYÑZÔZÐZàFÐF¸XÐFÑFÔFˆ ð 7Ø ˆDÔ  +Ð .Ð .Ð .Ð .øÝ$ð 7ð 7ð 7Ý-Ñ/Ô/°QÐ 6øøøøð 7øøøs¼ AÁ A&ÁA!Á!A&cój—| d¦«}| dg¦«}|r-||vr)|j d|¦«t¦«‚| ¦«| |¦«| d¬¦«|r| |¦«dSdS)NÚdefault_versionr*zWVersion %s that was specified to be set as default must be included in install_versionsÚenabled)r )ÚgetrÚerrorr Ú_install_passengerr,r!r)rÚoptionsr.Úinstall_versionss rÚrun_installationz NodejsInstaller.run_installationEsÕ€Ø!Ÿ+š+Ð&7Ñ8Ô8ˆØ"Ÿ;š; z°2Ñ6Ô6Ðà ð 0˜Ð6FÐFÐFØ ŒO× !Ò !ð7àñ ô ð õ .Ñ/Ô/Ð /à ×ÒÑ!Ô!Ð!Ø ×%Ò%Ð&6Ñ7Ô7Ð7Ø ×,Ò,°IÐ,Ñ>Ô>Ð>à ð >Ø × ,Ò ,¨_Ñ =Ô =Ð =Ð =Ð =ð >ð >r'có —ddhS)Nr.r*r$)Úclss rÚsupported_optionsz!NodejsInstaller.supported_optionsXs €à! :Ð.Ð.r'cól— ddlm}n"#t$r}td¦«|‚d}~wwxYw|d¦«S)Nr)Úget_default_versionÚ lvemanagerr)Úclselect.clselectctlr:Ú ImportErrorr )r:rs rÚ_nodejs_get_default_versionz+NodejsInstaller._nodejs_get_default_version\s\€ð ;Ø @Ð @Ð @Ð @Ð @Ð @Ð @øÝð ;ð ;ð ;Ý% lÑ3Ô3¸Ð :øøøøð ;øøøà"Ð" 8Ñ,Ô,Ð,s‚ ‰ (“#£(cóÒ—ttd„td¦«D¦«¦«o4| t ¦«¦«o| ¦«¦«S)a Checks that nodejs selector is ready to work All configurations were done: - At least one interpreter version is installed - Passenger is installed - Nodejs selector is enabled :return: bool value configured or not c3ó$K—|] }|jV—Œ dS)N)Ú installed©r%Úits rú z9NodejsInstaller._is_already_configured..ps$èè€ÐMÐM �” ÐMÐMÐMÐMÐMÐMr'r)ÚboolÚanyr Ú_is_package_installedrÚ_is_nodejs_selector_enabled)rs rÚ_is_already_configuredz&NodejsInstaller._is_already_configuredesj€õÝ ÐMÐMÕ'BÀ8Ñ'LÔ'LÐMÑMÔMÑ MÔ Mð 3Ø×*Ò*Õ+EÑ+GÔ+GÑHÔHð 3à×0Ò0Ñ2Ô2ñ ô ð r'có¸—td¦«}d„|D¦«}| ¦«| ¦«|| d¦«dœdœS)z™ Return dictionary with two required keys: installed and options. This will be used by lvemanager UI to properly display wizard. rcó*—g|]}|j¯ |j‘ŒSr$)rArrBs rr&z2NodejsInstaller.initial_status..|s!€ÐUÐUÐU¨RÈÌ ÐU˜bœjÐUÐUÐUr')r.Úinstalled_versionsÚavailable_versions)Úalready_configuredr3)r rIr>Ú_get_available_versions)rÚinterpreters_listrLs rÚinitial_statuszNodejsInstaller.initial_statususr€õ 8¸ÑAÔAÐØUÐUÐ3DÐUÑUÔUÐà"&×"=Ò"=Ñ"?Ô"?à#'×#CÒ#CÑ#EÔ#EØ&8Ø&*×&BÒ&BÀ8Ñ&LÔ&Lððð ð ð r'có¬—|j d¦« ddlm}|d¦« ¦«dS#t $rYdSwxYw)zN Return True if Nodejs Selector enabled :return: bool z$trying to get NodeJS Selector state.r)ÚCloudlinuxSelectorLibrÚselector_enabledF)rrÚclselector.selectorlibrSÚget_nodejs_selector_statusr=)rrSs rrHz+NodejsInstaller._is_nodejs_selector_enabled†sw€ð Œ×ÒÐCÑDÔDÐDð Ø DÐ DÐ DÐ DÐ DÐ Dà(Ð(¨Ñ2Ô2×MÒMÑOÔOÐPbÔcÐ cøÝð ð ð Ø�5�5ð øøøsœ(AÁ AÁAN)Ú__name__Ú __module__Ú __qualname__ÚosÚpathr(r ÚLOG_FILErÚNODEJS_SELECTORÚ_REQUIRED_CL_COMPONENT_SUPPORTrr!r,r5Ú classmethodr8Ú staticmethodr>rIrQrHr$r'rrrsÒ€€€€€ØŒw�|Š|Ð,¨lÑ;Ô;€HØ%,Ô%<Ð"ð7ð7ð7ð$7ð7ð7ð$7ð7ð7ð>ð>ð>ð&ð/ð/ñ„[ð/ðð-ð-ñ„\ð-ð ð ð ð  ð ð ð" ð ð ð ð r'r)rZÚtypingrrÚclcommon.constrÚclcommon.utilsrrÚclwizard.constantsrr Úclwizard.exceptionsr r Úclwizard.modules.baser Úclwizard.utilsr rr$r'rúrhsäðð € € € Ø!Ð!Ð!Ð!Ð!Ð!Ð!Ð!à"Ð"Ð"Ð"Ð"Ð"ØLÐLÐLÐLÐLÐLÐLÐLØ@Ð@Ð@Ð@Ð@Ð@Ð@Ð@ØPÐPÐPÐPÐPÐPÐPÐPØ1Ð1Ð1Ð1Ð1Ð1Ø6Ð6Ð6Ð6Ð6Ð6ððððð�oñôðððr'