File: //lib/python3/dist-packages/sos/report/plugins/__pycache__/sunbeam.cpython-310.pyc
o
([Qh� � @ sB d dl Z d dlZd dlZd dlmZmZmZ G dd� dee�ZdS )� N)�Plugin�UbuntuPlugin� PluginOptc @ sX e Zd ZdZdZdZdZdZedde dd �ed
de
dd �gZd
d� Zdd� Z
dd� ZdS )�SunbeamzSunbeam Openstack Controller�sunbeam)�cloud)� openstackz/var/snap/openstack/common�sunbeam-user�ubuntuz&The user used for sunbeam installation)�default�val_type�desc�juju-allow-loginFzAllow sos to login to jujuc C s\ | � d� | �| j� d�| j� d�| j� d�| j� d�| j� d�dg� | �d�}zt�|�}W n tyC | �d |� d
�� Y d S w |�r*| jg d�d|d
� | j d|d�}|d dkrwt
�|d �}|D ]}| jd|d � �d|d
� qg| j d|d�}|d dkr�t
�|d �}|d D ]}| jd|d � �d|d � d�gd|d
� q�|j� d�} | �| � d�| � d�| � d�| � d�| � d�g� | �d �r�| �
d!|� d"�� | j
d#|d�}
| j
d$|d%d&�}d'}|
d dks�|d dk�r z#|
d �� d }
|d �� d }d(|
v �s
d(|v �r| �|� d}W n
t�y Y nw |�s,| �d)� d S d S d S )*Nzsnap.openstack.*z
/hooks.logz/state/daemon.yaml�#/state/truststore/sunbeam.maas.yamlz/state/database/info.yamlz/state/database/cluster.yamlz'/var/snap/openstack/current/config.yamlr zUser "z�" does not exist, will not collect juju information. Use `-k sunbeam.sunbeam-user` option to define the user to use to collect data for sunbeam)zsunbeam cluster listz"sunbeam cluster list --format yamlzsunbeam manifest listzsunbeam deployment listT)�snap_cmd�runasz#sunbeam manifest list --format yaml�r �statusr �outputzsunbeam manifest show �
manifestidz%sunbeam deployment list --format yaml�deploymentszsunbeam deployment show �namez --format yamlz/snap/openstack/commonz/*.logz
/etc/**/*.logz/etc/**/terraform.tfvars.jsonz/logs/*.logz/reports/*.yamlr zsu - z -c "sunbeam utils juju-login"zjuju whoamizjuju status� )r �timeoutF�
Controllerz�juju is not logged in, will not collect juju information. Use `-k sunbeam.juju-allow-login=True` to login or use `juju login` as the sunbeam user to login)�add_service_status�
add_copy_spec�
common_dir�
get_option�pwd�getpwnam�KeyError� _log_warn�add_cmd_output�collect_cmd_output�yaml� safe_load�pw_dir�exec_cmd�
splitlines�_get_juju_cmd_details�
IndexError)�self�sunbeam_user�user_pwd�manifest_raw� manifests�manifest�deployment_rawr �
deployment�sb_snap_homedir�juju_whoami�juju_status� logged_in�j_whoami�j_status� r: �</usr/lib/python3/dist-packages/sos/report/plugins/sunbeam.py�setup"