File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/__pycache__/kickstart.cpython-310.pyc
o
�N�g� � @ s� d Z ddlZddlZddlZddlZdd� Zdd� Zdd� Zd d
� Z dd� Z
d
d� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3d4� Zd5d6� Zd7d8� Z d9d:� Z!d;d<� Z"d=d>� Z#d?d@� Z$dAdB� Z%dCdD� Z&dEdF� Z'dGdH� Z(dIdJ� Z)dKdL� Z*dMdN� Z+dOdP� Z,dQdR� Z-dSdT� Z.dUdV� Z/dWdX� Z0d[dYdZ�Z1dS )\z>
Utilities for managing kickstart
.. versionadded:: 2015.8.0
� Nc C s t | �D ] }| | s
| |= q| S )z3
Cleans up the args that weren't passed in
)�list)�args�arg� r �H/opt/saltstack/salt/lib/python3.10/site-packages/salt/utils/kickstart.py�
clean_args s
�r c C s� t �� }t�| �}|�d� d}|D ]
}|jd|� �|dd� q|jdddd� |jd d
dd� |jddd
d� |jddd
d� |jdddd� |jddd
d� |jddd
d� |jdddd� |jdddd� |jdddd� |jdddd� |jdddg d �d!� |jd"d#dd� |jd$d%dd� |jd&d'dd� |jd(d)dd� |jd*d+dd� |jd,d-dd� |jd.d/dd� |jd0d1dd� d0|v r�|jd2d3dd4d5� |jd6d7dd� d6|v r�|jd8d9dd4d5� tt|�|���}d:}|S );z)
Parses the auth/authconfig line
r )!Zback�testZnostartZ kickstartZprobeZenablecacheZdisablecacheZ
disablenisZenableshadowZ
disableshadowZ enablemd5Z
disablemd5Z
enableldapZenableldapauthZ
enableldaptlsZdisableldapZdisableldapauthZenablekrb5kdcdnsZdisablekrb5kdcdnsZenablekrb5realmdnsZdisablekrb5realmdnsZdisablekrb5zdisablehe-siodZ
enablesmbauthZdisablesmbauthZ
enablewinbindZenablewinbindauthZdisablewinbindZdisablewinbindauthZenablewinbindusedefaultdomainZdisablewinbindusedefaultdomainZ
enablewinsZdisablewins�--�
store_true��dest�actionz--enablenisZ enablenis�storez--hesiodrhsZ hesiodrhsz--krb5adminserverZkrb5adminserver�appendz --krb5kdcZkrb5kdcz--ldapbasednZ
ldapbasednz--ldapserverZ
ldapserverz--nisserverZ nisserverz
--passalgoZpassalgoz
--smbidmapgidZsmbidmapgidz
--smbidmapuidZsmbidmapuidz
--smbrealmZsmbrealmz
--smbsecurityZsmbsecurity)�user�server�domainZdns�r r
�choicesz--smbserversZ
smbserversz--smbworkgroupZsmbworkgroupz
--winbindjoinZwinbindjoinz--winbindseparatorZwinbindseparatorz--winbindtemplatehomedirZwinbindtemplatehomedirz--winbindtemplateprimarygroupZwinbindtemplateprimarygroupz--winbindtemplateshellZwinbindtemplateshellz--enablekrb5Z
enablekrb5z--krb5realmZ krb5realmT)r r
�requiredz--enablehesiodZenablehesiodz--hesiodlhsZ hesiodlhsN� �argparse�ArgumentParser�shlex�split�pop�add_argumentr �vars�
parse_args)�rule�parser�rulesZnoargsr r r r r �
parse_auth sf
#������r"