�
�Udac @` s� d d l m Z m Z m Z e Z i d d 6d g d 6d d 6Z d Z d Z d d
l m
Z
d d l m Z d � Z
d
� Z d � Z e d k r� e � n d S( i ( t absolute_importt divisiont print_functions 1.1t metadata_versiont stableinterfacet statust coret supported_bys7
---
module: debconf
short_description: Configure a .deb package
description:
- Configure a .deb package using debconf-set-selections.
- Or just query existing selections.
version_added: "1.6"
notes:
- This module requires the command line debconf tools.
- A number of questions have to be answered (depending on the package).
Use 'debconf-show <package>' on any Debian or derivative with the package
installed to see questions/settings available.
- Some distros will always record tasks involving the setting of passwords as changed. This is due to debconf-get-selections masking passwords.
- It is highly recommended to add I(no_log=True) to task while handling sensitive information using this module.
requirements:
- debconf
- debconf-utils
options:
name:
description:
- Name of package to configure.
type: str
required: true
aliases: [ pkg ]
question:
description:
- A debconf configuration setting.
type: str
aliases: [ selection, setting ]
vtype:
description:
- The type of the value supplied.
- It is highly recommended to add I(no_log=True) to task while specifying I(vtype=password).
- C(seen) was added in Ansible 2.2.
type: str
choices: [ boolean, error, multiselect, note, password, seen, select, string, text, title ]
value:
description:
- Value to set the configuration to.
type: str
aliases: [ answer ]
unseen:
description:
- Do not set 'seen' flag when pre-seeding.
type: bool
default: no
author:
- Brian Coca (@bcoca)
s*
- name: Set default locale to fr_FR.UTF-8
debconf:
name: locales
question: locales/default_environment_locale
value: fr_FR.UTF-8
vtype: select
- name: Set to generate locales
debconf:
name: locales
question: locales/locales_to_be_generated
value: en_US.UTF-8 UTF-8, fr_FR.UTF-8 UTF-8
vtype: multiselect
- name: Accept oracle license
debconf:
name: oracle-java7-installer
question: shared/accepted-oracle-license-v1-1
value: 'true'
vtype: select
- name: Specifying package you can register/return the list of questions and current values
debconf:
name: tzdata
- name: Pre-configure tripwire site passphrase
debconf:
name: tripwire
question: tripwire/site-passphrase
value: "{{ site_passphrase }}"
vtype: password
no_log: True
( t to_text( t
AnsibleModulec
C` s� | j d t � | g } | j d j | � � \ } } } | d k rX | j d | � n i } xK | j � D]= } | j d d � \ } } | j � | | j d � j � <qk W| S( Ns debconf-showt i t msgt :i t *( t get_bin_patht Truet run_commandt joint fail_jsont
splitlinest splitt strip(
t modulet pkgt cmdt rct outt errt
selectionst linet keyt value( ( sB /usr/lib/python2.7/site-packages/ansible/modules/system/debconf.pyt get_selectionsh s !#c C` s� | j d t � } | g } | r1 | j d � n | d k rj | d k rR d } qj | d k rj d } qj n d j | | | | g � } | j | d | �S(
Ns debconf-set-selectionss -ut booleanR t truet Falset falseR
t data( R R t appendR R ( R R t questiont vtypeR t unseent setselR R% ( ( sB /usr/lib/python2.7/site-packages/ansible/modules/system/debconf.pyt
set_selectionx s c C` s� t d t d t d d d t d d g � d t d d d d d
g � d t d d d d
d d d d d d d d d g
� d t d d d d g � d t d d � � d d d d g f d t � } | j d } | j d } | j d } | j d } | j d } t | | � } t } d } | d k r�| d k s=| d k rP| j d d � n | | k ret } q�| | } | d
k r�t | � j � } t | | � j � } n | | k r�t } q�n | r�| j
s
t | | | | | | � \ }
} } |
r
| j d | � q
n i | | 6} | | k r:i | | | 6} n
d | | <| j r}| j
� }
|
j | � i | d 6|
d! 6} n i } | j d"