a ƒ¬ iiã@sjddlZddlmZmZddlmZdZdZdZdd „Z d d „Z d d „Z ej dd„ƒZdd„Zdd„ZdS)éNé)ÚerrorsÚutils)Újson_loads_nstrz/etc/sysconfig/kcare/systemidz&/etc/sysconfig/kcare/systemid.almacarez/var/imunify360/license.jsoncCsŽtj t¡sdSttdƒ`}|D]J}| d¡\}}}| ¡dkrZ| ¡WdƒSt d  t¡¡‚q Wdƒn1s€0YdS)NÚrú=Ú server_idzUnable to parse {0}.) ÚosÚpathÚexistsÚSYSTEMIDÚopenÚ partitionÚstriprÚ KcareErrorÚformat)ÚfdÚlineÚparamÚ_Úvalue©rú./usr/libexec/kcare/python/kcarectl/serverid.pyÚ _systemids   0rcCsJtj t¡sdSttdƒ}| ¡ ¡WdƒS1s<0YdS)Nr)r r r Ú ALMA_SYSTEMIDr Úreadliner)ÚfrrrÚ_alma_systemid!s  rc Csrtj t¡sdSi}ttƒ<}| ¡}|rJz t|ƒ}WntyHYn0Wdƒn1s^0Y| d¡S)NÚid) r r r ÚIM360_LICENSE_FILEr ÚreadrÚ ExceptionÚget)ÚdatarÚcontentrrrÚ_im360_systemid)s    $r%cCstƒptƒptƒS)zqGet server_id or None if not present. Lookup order: SYSTEMID then IM360_LICENSE_FILE then ALMA_SYSTEMID )rr%rrrrrÚ get_serverid9sr&cCst t¡dS)N)r Úunlinkr rrrrÚ rm_serveridCsr(cCst td |¡¡dS)Nzserver_id={0} )rÚ atomic_writer r)rrrrÚ set_server_idHsr*)r ÚrrÚpy23rr rrÚOptionalrrr%Úcachedr&r(r*rrrrÚs