Spec-Zone.ru › Ansible 2.5

git - Развёртывание программного обеспечения (или файлов) из git-чек-аутов

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

Описание

  • Управление git-чек-аутами репозиториев для развёртывания файлов или программного обеспечения.

Требования

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

  • git>=1.7.1 (инструмент командной строки)

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
accept_hostkey
(добавлено в 1.5)
    Варианты:
  • yes
  • no ←
если yes, убедитесь, что опция "-o StrictHostKeyChecking=no" присутствует в качестве опции ssh.
archive
(добавлено в 2.4)
Укажите путь к файлу архива с расширением. Если указано, создаёт архив указанного формата, содержащий структуру дерева для исходного дерева. Разрешенные форматы архивов ["zip", "tar.gz", "tar", "tgz"]
bare
(добавлено в 1.4)
    Варианты:
  • yes
  • no ←
если yes, репозиторий будет создан как bare репозиторий, в противном случае это будет стандартный репозиторий с рабочей областью.
clone
(добавлено в 1.9)
    Варианты:
  • yes ←
  • no
Если no, не клонировать репозиторий, если он не существует локально
depth Значение по умолчанию:
None
Создать поверхностный клон с историей, урезанной до указанного числа или числа ревизий. Минимальное возможное значение - 1, в противном случае игнорируется. Требуется git>=1.9.1 для правильной работы.
dest
обязательно
Путь, куда должен быть выполнен checkout репозитория. Этот параметр обязателен, если clone не установлено на no.
executable
(добавлено в 1.4)
Значение по умолчанию:
None
Путь к исполняемому файлу git. Если не указано, будет использоваться обычный механизм определения путей к бинарным файлам.
force
    Варианты:
  • yes
  • no ←
Если yes, все изменённые файлы в рабочем репозитории будут удалены. До версии 0.7 это всегда было 'yes' и отключить нельзя было. До версии 1.9 значение по умолчанию было `yes`
key_file
(добавлено в 1.5)
Значение по умолчанию:
None
Укажите необязательный файл приватного ключа для использования при выполнении checkout.
recursive
(добавлено в 1.6)
    Варианты:
  • yes ←
  • no
если no, репозиторий будет клонирован без опции --recursive, пропуская подмодули.
reference
(добавлено в 1.4)
Значение по умолчанию:
None
Репозиторий ссылки (см. "git clone --reference ...")
refspec
(добавлено в 1.9)
Значение по умолчанию:
None
Добавить дополнительный refspec для получения. Если версия установлена на SHA-1, недоступный ни с одной веткой или тегом, может потребоваться указать ссылку, содержащую SHA-1. Используется тот же синтаксис, что и в команде 'git fetch'. Пример значения - "refs/meta/config".
remote Значение по умолчанию:
origin
Имя удалённого репозитория.
repo
обязательно
Адрес git репозитория по протоколу git, SSH или HTTP(S).

псевдонимы: имя
ssh_opts
(добавлено в 1.5)
Значение по умолчанию:
None
Создаёт скрипт-обёртку и экспортирует путь как GIT_SSH, который git затем автоматически использует для переопределения аргументов ssh. Пример значения - "-o StrictHostKeyChecking=no"
track_submodules
(добавлено в 1.8)
    Варианты:
  • yes
  • no ←
если yes, подмодули будут отслеживать последнюю коммитацию в ветке master (или другой ветке, указанной в .gitmodules). Если no, подмодули будут сохранены в ревизии, указанной в основном проекте. Это эквивалентно указанию флага --remote команде git submodule update.
umask
(добавлено в 2.2)
Значение по умолчанию:
None
Установить umask перед выполнением checkout или других операций с репозиторием.
update
    Варианты:
  • yes ←
  • no
Если no, не получать новые ревизии из исходного репозитория
Операции, такие как создание архива, будут работать с существующим (старым) репозиторием и могут не реагировать на изменения в версии или удалённом репозитории.
verify_commit
(добавлено в 2.0)
    Варианты:
  • yes
  • no ←
если yes, при клонировании или выполнении checkout version проверить подпись GPG-подписанной коммита. Для этого требуется git версия>=2.1.0. Коммит ДОЛЖЕН быть подписан, а открытый ключ ДОЛЖЕН присутствовать в хранилище ключей GPG.
version Значение по умолчанию:
HEAD
Выбрать версию репозитория для checkout. Может быть строкой HEAD, именем ветки, именем тега. Также может быть SHA-1 хешем, в этом случае refspec необходимо указать, если заданная ревизия ещё не доступна.

Примечания

Примечание

  • Если задача зависает, сначала проверьте, доступен ли удалённый хост в known_hosts. SSH запросит у пользователя разрешение на первый контакт с удалённым хостом. Чтобы избежать этого запроса, одним из решений является использование опции accept_hostkey. Другим решением является добавление открытого ключа удалённого хоста в /etc/ssh/ssh_known_hosts перед вызовом модуля git, используя следующую команду: ssh-keyscan -H remote_host.com >> /etc/ssh/ssh_known_hosts.

Примеры

# Example git checkout from Ansible Playbooks
- git:
    repo: 'https://foosball.example.org/path/to/repo.git'
    dest: /srv/checkout
    version: release-0.22

# Example read-write git checkout from github
- git:
    repo: ssh://git@github.com/mylogin/hello.git
    dest: /home/mylogin/hello

# Example just ensuring the repo checkout exists
- git:
    repo: 'https://foosball.example.org/path/to/repo.git'
    dest: /srv/checkout
    update: no

# Example just get information about the repository whether or not it has
# already been cloned locally.
- git:
    repo: 'https://foosball.example.org/path/to/repo.git'
    dest: /srv/checkout
    clone: no
    update: no

# Example checkout a github repo and use refspec to fetch all pull requests
- git:
    repo: https://github.com/ansible/ansible-examples.git
    dest: /src/ansible-examples
    refspec: '+refs/pull/*:refs/heads/*'

# Example Create git archive from repo
- git:
    repo: https://github.com/ansible/ansible-examples.git
    dest: /src/ansible-examples
    archive: /tmp/ansible-examples.zip

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
after
строка
успех
последняя ревизия коммита репозитория, полученная во время обновления

Пример:
4c020102a9cd6fe908c9a4a326a38f972f63a903
before
строка
успех
ревизия коммита до обновления репозитория, "null" для нового репозитория

Пример:
67c04ebe40a003bda0efb34eacfb93b0cafdf628
remote_url_changed
логическое значение
успех
Содержит True или False, указывая, было ли изменено URL удалённого репозитория.

Пример:
True
warnings
строка
ошибка
Список предупреждений, если запрошенные функции были недоступны из-за слишком старой версии git.

Пример:
Ваша версия git слишком старая, чтобы полностью поддерживать аргумент depth. Возвращаемся к полному выполнению checkout.


Статус

Этот модуль помечен как превью, что означает, что его интерфейс не гарантированно будет обратной совместимостью.

Поддержка

Дополнительную информацию о поддержке этого модуля Red Hat можно найти в этой статье базы знаний.

Автор

  • Команда Ansible Core
  • Michael DeHaan

Подсказка

Если вы заметите какие-либо проблемы в этой документации, вы можете отредактировать этот документ, чтобы улучшить его.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/modules/git_module.html

Spec-Zone.ru

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