관리-도구
편집 파일: debconf.cpython-39.opt-1.pyc
a �)g4 � @ sf d dl mZmZmZ eZdZdZdZd dl m Z d dlmZ dd� Z d d � Zdd� Zed krbe� dS )� )�absolute_import�division�print_functiona� --- 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" extends_documentation_fragment: - action_common_attributes attributes: check_mode: support: full diff_mode: support: full platform: support: full platforms: debian 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. - The debconf module does not reconfigure packages, it just updates the debconf database. An additional step is needed (typically with I(notify) if debconf makes a change) to reconfigure the package and apply the changes. debconf is extensively used for pre-seeding configuration prior to installation rather than modifying configurations. So, while dpkg-reconfigure does use debconf data, it is not always authoritative and you may need to check how your package is handled. - Also note dpkg-reconfigure is a 3-phase process. It invokes the control scripts from the C(/var/lib/dpkg/info) directory with the C(<package>.prerm reconfigure <version>), C(<package>.config reconfigure <version>) and C(<package>.postinst control <version>) arguments. - The main issue is that the C(<package>.config reconfigure) step for many packages will first reset the debconf database (overriding changes made by this module) by checking the on-disk configuration. If this is the case for your package then dpkg-reconfigure will effectively ignore changes made by debconf. - However as dpkg-reconfigure only executes the C(<package>.config) step if the file exists, it is possible to rename it to C(/var/lib/dpkg/info/<package>.config.ignore) before executing C(dpkg-reconfigure -f noninteractive <package>) and then restore it. This seems to be compliant with Debian policy for the .config file. 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: false author: - Brian Coca (@bcoca) az - name: Set default locale to fr_FR.UTF-8 ansible.builtin.debconf: name: locales question: locales/default_environment_locale value: fr_FR.UTF-8 vtype: select - name: Set to generate locales ansible.builtin.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 ansible.builtin.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 ansible.builtin.debconf: name: tzdata - name: Pre-configure tripwire site passphrase ansible.builtin.debconf: name: tripwire question: tripwire/site-passphrase value: "{{ site_passphrase }}" vtype: password no_log: True �#)�to_text)� AnsibleModulec C sv | � dd�|g}| �d�|��\}}}|dkr:| j|d� i }|�� D ]*}|�dd�\}} | �� ||�d��� <