a >h:@s2ddlZddlmZmZmZGdddeeZdS)N)Plugin UbuntuPlugin SoSPredicatec@s4eZdZdZdZdZdZdZdZddZ d d Z d S) LXDzLXD container hypervisorlxd) container)r)Zlxcr)snap.lxd.daemonzsnap.lxd.activatec Cs`|jrt|dgddid}|jd|dd|gd|d sT|d d gn |d gd }|d|dd}|j|ddddddddddddddddddddddg}|D]R}|d d}t|d!}|d"}|jd#|d$|d%|d&||d'qnDt|d(gddid}|d)d*g|jgd+|d,|jd-gd.ddS)/Nrservicesall)r required lxd.buginfoT)predZsnap_cmd)z/var/snap/lxd/common/configz /var/snap/lxd/common/global-confz#/var/snap/lxd/common/lxc/local.confz&/var/snap/lxd/common/lxd/logs/*/*.confZall_logsz#/var/snap/lxd/common/lxd/logs/*.logz%/var/snap/lxd/common/lxd/logs/*/*.logz /var/snap/lxd/common/lxd/logs/**z$/var/snap/lxd/common/lxd/cluster.crtzopenssl x509 -in z -noout -datesz(/var/snap/lxd/common/lxd/database/globalZls_lxd_dqlite_dir)suggest_filenamez/SELECT * FROM sqlite_master WHERE type="table";Zschemalocal)querysuggested_file_suffixdbzgSELECT * FROM config WHERE NOT ( key LIKE "%keyring%" OR key LIKE "%ca_cert%" OR key LIKE "%ca_key%" );ZconfigzSELECT * FROM raft_nodes;Z raft_nodeszSELECT * FROM nodes;ZnodesglobalzSELECT * FROM nodes_roles;Z nodes_rolesrrrzlxd sql  Zlxd_sql__)rr rz/etc/default/lxd-bridgez/var/log/lxd/*)zlxc image listzlxc listzlxc network listzlxc profile listzlxc storage list)r z)find /var/lib/lxd -maxdepth 2 -type d -lszvar-lxd-dirs.txt) Zis_snaprZadd_cmd_outputZ add_copy_specZ get_optionZadd_dir_listinggetjsondumps) selfZlxd_predZ dqlite_crtZdb_pathZqueriesZ query_entryrrZ file_suffixr:/usr/lib/python3.9/site-packages/sos/report/plugins/lxd.pysetups    #    z LXD.setupcCs|ddS)Nr )Zdo_cmd_private_sub)rrrrpostproc}sz LXD.postprocN) __name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesZpackagesZcommandsr rrrrrrrser)rZsos.report.pluginsrrrrrrrr s