Sindbad~EG File Manager
3
�f'! � @ sZ d dl Z d dlmZmZmZmZ G dd� de�ZG dd� deee�ZG dd� dee�ZdS ) � N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc @ sH e Zd ZdZdZdZdZdZed Zg Z dZ
d d
� Zdd� Zd
d� Z
dS )�OpenStackIroniczOpenStack IronicZopenstack_ironic� openstack�openstack_undercloud�.*ironic_apiz,/var/lib/config-data/puppet-generated/ironicZ
_inspectorFc C sL | j d�}|�rd| jd | jd | jd | jd | jd g| _| jdd| jd | jd | jd
| jd | jd | jd
| jd | jd | jd | jd | jd | jd | jd | jd | jd g� | jd�r�| jddg� n| jddg� xFddd| jd | jd gD ](}| jd| � | jd| j| � �qW x�d=D ]$}| j d'| ��r:| jd(|d)� �q:W nhddg| _| jd
ddd*ddg� | jd��r�| jd+d,g� n| jd-d.g� xd>D ]}| jd| � �q�W | jd/d0i� d1d2� d?D �}d5d2� d@D �}t|��ot |�| _
| j
�s | jjd8� n(| jd9� | jd:� | jd;� | jd<� d S )ANz.*ironic_apiz
/etc/ironic/*z/etc/ironic-inspector/*z_api/etc/ironic/*z /var/lib/httpboot/inspector.ipxez/var/lib/ironic-inspector/z-/var/log/containers/ironic-inspector/ramdisk/z/etc/xinetd.confz/etc/xinetd.d/z/etc/ironic/z/etc/ironic-inspector/z/etc/httpd/conf/z/etc/httpd/conf.d/z /etc/httpd/conf.modules.d/*.confz/etc/my.cnf.d/tripleo.cnfz_api/etc/ironic/z_api/etc/httpd/conf/z_api/etc/httpd/conf.d/z$_api/etc/httpd/conf.modules.d/*.confz_api/etc/my.cnf.d/tripleo.cnf�all_logsz/var/log/containers/ironic/z%/var/log/containers/ironic-inspector/z /var/log/containers/ironic/*.logz*/var/log/containers/ironic-inspector/*.log�/var/lib/ironic� /httpboot� /tftpbootz/var/lib/httpboot/z/var/lib/tftpboot/zls -laRt %s�ironic_inspector_dnsmasq�ironic_inspector�ironic_pxe_http�ironic_pxe_tftp�ironic_neutron_agent�ironic_conductor�
ironic_apiz.*zrpm -qa)Z containerz"/var/log/ironic-inspector/ramdisk/z/var/log/ironic/z/var/log/ironic-inspector/z/var/log/ironic/*.logz/var/log/ironic-inspector/*.logz.*/etc/ironic/ironic.confZironic_confc S s g | ]}|t jk�qS � )�os�environ)�.0�pr r �&/usr/lib/python3.6/openstack_ironic.py�
<listcomp>w s z)OpenStackIronic.setup.<locals>.<listcomp>�OS_USERNAME�OS_PASSWORDc S s g | ]}|t jk�qS r )r r )r r r r r r z s �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 baremetal driver list --longz$openstack baremetal node list --longz$openstack baremetal port list --longz*openstack baremetal port group list --long)r r r r r r r )r r r
)r r )r r )
Zcontainer_exists�var_puppet_gen�ins_puppet_gen� conf_list�
add_copy_spec�
get_option�add_cmd_outputZ
add_file_tags�all�any�
osc_available�soslog�warning)�selfZin_container�pathZcontainer_nameZvars_allZvars_anyr r r �setup s�
zOpenStackIronic.setupc C s"