o id@s*ddlmZmZmZGdddeeZdS))Plugin UbuntuPlugin PluginOptc@sveZdZdZdZdZdZdZedde dd ed de d d ed de d d gZ ddZ ddZ ddZ ddZddZdS)MaaszUbuntu Metal-As-A-Servicemaas)sysmgmt)rz maas-common)z maas-dhcpdz maas-dhcpd6z maas-httpz maas-proxyz maas-rackdz maas-regiondz maas-syslogzsnap.maas.supervisor profile-namezName of the remote API)defaultval_typedescurlzURL of the remote API credentialszCredentials, or the API keycCs|do|do|dS)Nr rr) get_optionselfr9/usr/lib/python3/dist-packages/sos/report/plugins/maas.py_has_login_options,szMaas._has_login_optionscCs2|d|d|d|df}|ddkS)Nzmaas login %s %s %srr rstatusr)exec_cmdr)rretrrr_remote_api_login0s zMaas._remote_api_logincCs"|jjd}|r|ddkSdS)Nr pkg_managersnapF)policypackage_manager pkg_by_name)rmaas_pkgrrr_is_snap_installed;s zMaas._is_snap_installedcCs||_|jr|ddg|d|gdn|gd|ddg|dr5|d g|rP|rI|d |d dS| d dSdS) Nzsnap info maasz maas statusz'/var/snap/maas/current/bind/session.key) z/var/snap/maas/common/logz/var/snap/maas/common/snap_modez/var/snap/maas/current/*.confz/var/snap/maas/current/bindz/var/snap/maas/current/httpz"/var/snap/maas/current/supervisordz/var/snap/maas/current/preseedsz/var/snap/maas/current/proxyz/var/snap/maas/current/rsyslog)z/etc/squid-deb-proxyz /etc/maasz/var/lib/maas/dhcp*z/var/lib/maas/http/*.confz/var/lib/maas/*.confz/var/lib/maas/rsyslogz/var/log/maas*z/var/log/upstart/maas-*zapt-cache policy maas-*z apt-cache policy python-django-*zmaas-region-controllerzmaas-region dumpdataz"maas %s commissioning-results listrz6Cannot login into MAAS remote API with provided creds.) r_is_snapadd_cmd_outputadd_forbidden_path add_copy_spec is_installedrrr _log_errorrrrrsetupAs4      z Maas.setupcCs"|jrd}nd}||dddS)Nz(/var/snap/maas/current/maas/regiond.confz/etc/maas/regiond.confz(database_pass\s*:\s*)(.*)z \1********)r do_file_sub)r regiond_pathrrrpostprocrsz Maas.postprocN)__name__ __module__ __qualname__ short_desc plugin_nameprofilespackagesservicesrstr option_listrrrr&r)rrrrrs*   1rN)sos.report.pluginsrrrrrrrrs