community.general.git_config – Чтение и запись конфигурации git
Примечание
Этот плагин входит в коллекцию community.general (версия 2.0.1).
Для установки используйте: ansible-galaxy collection install community.general.
Для использования в книге задач укажите: community.general.git_config.
Обзор
- Модуль
git_configизменяет конфигурацию git, вызывая ‘git config’. Это необходимо, если вы не хотите использовать ansible.builtin.template для всего файла конфигурации git (например, потому что вам нужно изменить толькоuser.emailв /etc/.git/config). Решения, использующие ansible.builtin.command, громоздки или не работают корректно в режиме проверки.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- git
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| file путь добавлен в 2.0.0 из community.general | Путь к файлу adhoc конфигурации git, который будет управляться с помощью области file. | |
| list_all логическое |
| Вывести все настройки (при необходимости, ограниченные заданной областью). |
| name строка | Имя настройки. Если значение не указано, оно будет считано из конфигурации, если оно установлено. | |
| repo строка | Путь к репозиторию git для чтения и записи значений из определенного репозитория. | |
| scope строка |
| Укажите область, из которой следует читать/задавать значения. Это необходимо при задании значений конфигурации. Если это установлено на local, вы также должны указать параметр repo.Если это установлено на file, вы также должны указать параметр file.По умолчанию используется только system, если не используется list_all= yes. |
| state строка |
| Указывает, что настройка должна быть установлена/удалена. Этот параметр имеет более высокий приоритет, чем параметр value: когда state=absent и value определен, value игнорируется. |
| value строка | При указании имени одной настройки укажите значение, чтобы установить эту настройку на данное значение. |
Примеры
- name: Add a setting to ~/.gitconfig
community.general.git_config:
name: alias.ci
scope: global
value: commit
- name: Add a setting to ~/.gitconfig
community.general.git_config:
name: alias.st
scope: global
value: status
- name: Remove a setting from ~/.gitconfig
community.general.git_config:
name: alias.ci
scope: global
state: absent
- name: Add a setting to ~/.gitconfig
community.general.git_config:
name: core.editor
scope: global
value: vim
- name: Add a setting system-wide
community.general.git_config:
name: alias.remotev
scope: system
value: remote -v
- name: Add a setting to a system scope (default)
community.general.git_config:
name: alias.diffc
value: diff --cached
- name: Add a setting to a system scope (default)
community.general.git_config:
name: color.ui
value: auto
- name: Make etckeeper not complaining when it is invoked by cron
community.general.git_config:
name: user.email
repo: /etc
scope: local
value: 'root@{{ ansible_fqdn }}'
- name: Read individual values from git config
community.general.git_config:
name: alias.ci
scope: global
- name: Scope system is also assumed when reading values, unless list_all=yes
community.general.git_config:
name: alias.diffc
- name: Read all values from git config
community.general.git_config:
list_all: yes
scope: global
- name: When list_all is yes and no scope is specified, you get configuration from all scopes
community.general.git_config:
list_all: yes
- name: Specify a repository to include local settings
community.general.git_config:
list_all: yes
repo: /path/to/repo.git
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| config_value строка | успех | Когда list_all=нет и value не задано, строка, содержащая значение настройки в имени Пример: vim |
| config_values словарь | успех | Когда list_all=да, словарь, содержащий пары ключ/значение нескольких настроек конфигурации Пример: {'alias.diffc': 'diff --cached', 'alias.remotev': 'remote -v', 'color.ui': 'auto', 'core.editor': 'vim'} |
Авторы
- Matthew Gamble (@djmattyg007)
- Marius Gedminas (@mgedmin)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/git_config_module.html