community.general.git_config – Чтение и запись конфигурации git
Примечание
Этот плагин является частью коллекции community.general (версия 1.3.2).
Для его установки используйте: 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
Параметры
| Параметр | Выбираемые значения/Значения по умолчанию | Комментарии |
|---|---|---|
| list_all boolean |
| Список всех настроек (при необходимости, ограниченных заданным scope) |
| name string | Имя параметра. Если значение не задано, оно будет считано из конфигурации, если оно установлено. | |
| repo string | Путь к репозиторию git для чтения и записи значений из конкретного репозитория. | |
| scope string |
| Укажите область, из которой следует читать/устанавливать значения. Это необходимо при установке значений конфигурации. Если это установлено как локальный, вы также должны указать параметр repo. По умолчанию установлено как системный, только если не используется list_all=да. |
| state string |
| Указывает, что настройка должна быть установлена/удалена. Этот параметр имеет более высокий приоритет, чем параметр value: когда state=absent и value определено, value игнорируется. |
| value string | При указании имени одной настройки, укажите значение для установки этой настройки на заданное значение. |
Примеры
- 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 string | успех | Когда list_all=нет и значение не установлено, строка, содержащая значение настройки в name Пример: vim |
| config_values dictionary | успех | Когда 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–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/general/git_config_module.html