3 ܓi@s^ddlZddlmZmZmZmZmZGdddeZGdddeeeZGdddeeZ dS) N)Plugin RedHatPlugin DebianPlugin UbuntuPlugin PluginOptc@sLeZdZdZdZdZeddddgZd Zd Z d Z d d Z ddZ ddZ d S)OpenStackKeystonezOpenStack KeystoneZopenstack_keystone openstackopenstack_controllerZnopwTz!do not collect keystone passwords)defaultZdescz./var/lib/config-data/puppet-generated/keystoneNc Cs*|jdddd|jd|jd|jd|jd|jd |jd |jd g |jd rn|jd d|jdgn|jdd|jdg|jd}|d|_|ddks|j|j rd|_|j|jddd$D}ddd%D}t|ot|s|j j dn|j d|j d |j d!d"d#dS)&Nz'/etc/keystone/default_catalog.templatesz/etc/keystone/keystone.confz/etc/keystone/logging.confz/etc/keystone/policy.jsonz/etc/keystone/*.confz/etc/keystone/*.jsonz/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.confz/var/spool/cron/z/etc/my.cnf.d/tripleo.cnfZall_logsz/var/log/keystone/z /var/log/z */keystone*z/var/log/keystone/*.logz*/keystone*.logzDcrudini --get /etc/keystone/keystone.conf identity domain_config_diroutputZstatusrz/etc/keystone/domainscSsg|]}|tjkqS)osenviron).0pr r (/usr/lib/python3.6/openstack_keystone.py Dsz+OpenStackKeystone.setup.. OS_USERNAME OS_PASSWORDcSsg|]}|tjkqSr )rr)rrr r rrGsOS_TENANT_NAMEOS_PROJECT_NAMEz}Not all environment variables set. Source the environment file for the user intended to connect to the OpenStack environment.zopenstack endpoint listzopenstack catalog listZ keystone_confZ keystone_log)z.*/etc/keystone/keystone.confz/var/log/keystone/keystone.log)rr)rr) Z add_copy_specvar_puppet_genZ get_option apachepkgZcollect_cmd_outputdomain_config_dirZ path_isdirallanyZsoslogZwarningZadd_cmd_outputZ add_file_tags)selfZexec_outZvars_allZvars_anyr r rsetupsJ      zOpenStackKeystone.setupcCs:|jd|||j|jd|||j|jd||dS)z Apply regex substitution z/etc/keystone/*z/etc/httpd/conf.d/N)do_path_regex_subr)rZregexpZsubstr r rapply_regex_subWsz!OpenStackKeystone.apply_regex_subcCslddddg}dg}dj|}|jddj|dd |jd|d d |j|jddj|d d dS)Nz(.*_)?passwordZ admin_tokenZ transport_urlZOIDCClientSecretZ connection|z(^\s*(z)\s*(=\s*)?)(.*)z \1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z \1*********\6z )\s*=\s*)(.*)z \1********)joinr rr)rZ protect_keysZconnection_keysZ join_con_keysr r rpostproccs   zOpenStackKeystone.postproc)rr )__name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesrZ option_listrrrrr r#r r r rrs 8 rc@seZdZdZdZdS)DebianKeystoneZapache2keystonepython-keystonepython3-keystoneN)r(r)r*)r$r%r&rpackagesr r r rr'sr'c@seZdZdZdZdS)RedHatKeystoneZhttpdopenstack-selinuxN)r-)r$r%r&rr+r r r rr,sr,) rZsos.report.pluginsrrrrrrr'r,r r r r sn