
    G%@i                     n    d dl Z d dlZd dlZd dlmZmZ g dZg dZdZ G d de      Z	 G d d	e	e      Z
y)
    N)PluginRedHatPlugin)+/home/stack/.instack/install-undercloud.log/home/stack/instackenv.json/home/stack/undercloud.conf)z/etc/puppet/hieradata/z/etc/rhosp-releasez/home/stack/*-deploy/home/stack/.tripleo/historyz/home/stack/ansible.logz/home/stack/config-download/z"/home/stack/install-undercloud.log!/home/stack/overcloud_install.logz*/home/stack/undercloud-install-*.tar.bzip2r   z/var/lib/tripleo-config/z/var/log/heat-launcher/z,/var/log/tripleo-container-image-prepare.logr   c                   *    e Zd ZdZdZdZd Zd Zd Zy)OpenStackInstackzOpenStack Instackopenstack_instack)	openstackopenstack_undercloudc                    | j                  t        t        z          | j                  d      r| j                  dg       n| j                  dg       | j	                  ddi       dD cg c]  }|t
        j                  v  }}dD cg c]  }|t
        j                  v  }}| j                          t        |      rt        |      s| j                  j                  d       y d	}| j                  |      d
   }t        j                  d|      }|D ]  }|d   }| j                  d| d| g       d| }	| j!                  |	      }
|
d
   j#                         D ]Q  dv sddg}t        fd|D              s!j%                         d   }d }	d| d}| j                  |	|       S  | j                  d       y c c}w c c}w )Nall_logsz/var/log/zaqar/z/var/log/zaqar/*.logz/var/log/mistral/executor.logmistral_executor_log)OS_USERNAMEOS_PASSWORD)OS_TENANT_NAMEOS_PROJECT_NAMEz}Not all environment variables set. Source the environment file for the user intended to connect to the OpenStack environment.zopenstack stack listoutputz(\|\s(((\w+-){4})\w+)\s\|)   zopenstack stack show z$openstack stack resource list -n 10 z,openstack stack resource list -f value -n 5 FAILEDzOS::Heat::StructuredDeploymentzOS::Heat::SoftwareDeploymentc              3   &   K   | ]  }|v  
 y w)N ).0x
deployments     F/usr/lib/python3/dist-packages/sos/report/plugins/openstack_instack.py	<genexpr>z)OpenStackInstack.setup.<locals>.<genexpr>a   s     "Bq1
?"Bs   z*openstack software deployment show --long zfailed-deployment-z.log)suggest_filenamez>openstack object save tripleo-ui-logs tripleo-ui.logs --file -)add_copy_specNON_CONTAINERIZED_DEPLOYCONTAINERIZED_DEPLOY
get_optionadd_file_tagsosenvironcapture_undercloud_yamlsallanysoslogwarningcollect_cmd_outputrefindalladd_cmd_outputexec_cmd
splitlinessplit)selfpvars_allvars_any
get_stacksstacks	stack_ids_sidsidcmddeploymentscheckdeployfnamer   s                 @r   setupzOpenStackInstack.setup/   s    36JJK??:&!   &   	+-C
 	.2 3AO 3 3.9 :AO : : 	%%'H#h-KK !K L
 0J,,Z8BF

#@&II! I1g##+C51:3%@%  ESEJ"mmC0"-h"7"B"B"D IJ:-<:!  #"BE"BB$!+!1!1!3A!6 ..8\ ;"4VHD A++C%+HII0  !K LU3:s   +G
Gc                 :   t        j                         }	 |j                  t               ddg}|D ]Y  }|j	                  d|      }|st
        j                  j                  |      s| j                  d|      }| j                  |       [ y# t        $ r Y yw xY w)z( capture yaml files to define overrides hieradata_overridenet_config_overrideDEFAULTz/home/stackN)configparserConfigParserreadUNDERCLOUD_CONF_PATHgetr&   pathisabs	path_joinr!   	Exception)r4   	uc_configoverride_optsoptrL   s        r   r(   z)OpenStackInstack.capture_undercloud_yamlsl   s     --/	
	NN/013HIM$ - }}Y477==.#~~mTB&&t,-  		s   2B 	AB 	BBc                 .   g d}ddj                  |       d}| j                  d|d       | j                  t        |d       g d}ddj                  |       d	}| j                  d
|d       | j                  ddd       | j                  ddd       y )N)z.*_passwordz	.*_secretz.*_keyz((|z)=)(.*)r   z\1*********)pm_passwordzssh-keypasswordz("(z)": )(".*?")r   r   z(password=)\w+r	   z2(Found key: \\".*password.*\\" value: )(\\".+?\\")z\1\\"*********\\")joindo_file_subrJ   )r4   protected_keysregexpprotected_json_keysjson_regexps        r   postproczOpenStackInstack.postproc{   s    

 sxx/08F	1-v~FDSXX&9:;<H6'	)7*'	) 	<N-	/    N)	__name__
__module____qualname__
short_descplugin_nameprofilesrB   r(   r]   r   r^   r   r   r   )   s"    $J%K4H;Lz/r^   r   c                       e Zd ZdZy)RedHatRDOManager)zopenstack-selinuxN)r_   r`   ra   packagesr   r^   r   rf   rf      s    %Hr^   rf   )rG   r&   r.   sos.report.pluginsr   r   r"   r#   rJ   r   rf   r   r^   r   <module>ri      sI     	 	 3 
  5 i/v i/X&' &r^   