Spec-Zone.ru › Ansible

Модуль community.general.git_config – Обновление конфигурации git

Примечание

Этот модуль входит в коллекцию community.general (версия 9.5.0).

У вас, возможно, уже установлена эта коллекция, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.general. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.

Для использования в playbook укажите: community.general.git_config.

  • Описание
  • Требования
  • Параметры
  • Атрибуты
  • Примеры
  • Возвращаемые значения

Описание

  • Модуль community.general.git_config изменяет конфигурацию git, вызывая git config. Это необходимо, если вы не хотите использовать ansible.builtin.template для всего файла конфигурации git (например, если нужно изменить только user.email в /etc/.git/config). Решения, использующие ansible.builtin.command, неудобны или не работают корректно в режиме проверки.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • git

Параметры

Параметр

Комментарии

add_mode

строка

добавлено в community.general 8.1.0

Указывает, должна ли значение заменить существующее(ие) или новое значение должно быть добавлено вместе с другими значениями с тем же именем.

Этот параметр актуален только при добавлении/замене значений. Если state=absent или значения просто считываются, этот параметр не учитывается.

Выбранные значения:

  • "add"
  • "replace-all" ← (по умолчанию)

file

путь

добавлено в community.general 2.0.0

Путь к файлу конфигурации git, который будет управляется в рамках file области.

list_all

логическое

Список всех настроек (по желанию, ограниченных указанным scope).

Этот параметр устарел и будет удален в версии community.general 11.0.0. Используйте community.general.git_config_info вместо него.

Выбранные значения:

  • false ← (по умолчанию)
  • true

name

строка

Имя настройки. Если значение не задано, оно будет взято из конфигурации, если оно задано.

repo

путь

Путь к репозиторию git для чтения и записи значений из определенного репозитория.

scope

строка

Указывает область для чтения/установки значений.

Это требуется при установке значений конфигурации.

Если это установлено в local, вы также должны указать параметр repo.

Если это установлено в file, вы также должны указать параметр file.

По умолчанию используется только система, если не используется list_all=true.

Выбранные значения:

  • "file"
  • "local"
  • "global"
  • "system"

state

строка

Указывает, что настройка должна быть установлена/удалена. Этот параметр имеет более высокий приоритет, чем параметр value: когда state=absent и value определены, value игнорируется.

Выбранные значения:

  • "present" ← (по умолчанию)
  • "absent"

value

строка

При указании имени одной настройки, укажите значение для установки этой настройки.

Начиная с community.general 11.0.0, value будет обязательно, если state=present. Для чтения значений используйте модуль community.general.git_config_info вместо него.

Атрибуты

Атрибут

Поддержка

Описание

check_mode

Поддержка: полная

Может работать в режиме check_mode и возвращать прогноз о внесенных изменениях без модификации целевого объекта.

diff_mode

Поддержка: нет

Возвращает информацию об изменениях (или, возможно, необходимых изменениях в check_mode), когда используется режим diff.

Примеры

- 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: Add several options for the same name
  community.general.git_config:
    name: push.pushoption
    value: "{{ item }}"
    add_mode: add
  loop:
    - merge_request.create
    - merge_request.draft

- 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 }}'

Значения возврата

Общие значения возврата описаны здесь, следующие поля уникальны для данного модуля:

Ключ

Описание

config_value

строка

Когда list_all=false и значение не установлено, строка, содержащая значение параметра в имени

Возвращено: успех

Пример: "vim"

config_values

словарь

Когда list_all=true, словарь, содержащий пары ключ/значение для нескольких параметров конфигурации

Возвращено: успех

Пример: {"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–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/general/git_config_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API