Назад | Перейти на главную страницу

Как сделать git pull / push с помощью ansible

Я пытаюсь выполнить git pull / push с помощью ansible. Я запускаю ansible на одном сервере и хочу автоматизировать или организовать git pull / push на удаленном хосте.

Теперь, поскольку я не нашел mmodule для этого на веб-сайте ansible doc, я решил пойти по маршруту сценария, используя модуль сценария

Проблема в том, что когда он запускает команду git pull, вызываемую в скрипте

Кто-нибудь знает, как запустить git pull / push с помощью ansible?

Спасибо

Модуль Ansible Git сделает это за вас в том, что касается "вытягивания", просто убедитесь, что пользователь, выполняющий команду, имеет доступ к репозиторию git на основе ключей.

Вы можете указать пользователя, от имени которого запускается команда, добавив параметр sudo_user в вашу задачу:

- name: Get stuff from git
  git:
    repo: git@github.com:you/your-git-repo.git
    dest: /opt/git-stuff
  sudo_user: <your user that has the ssh key>

Видеть https://docs.ansible.com/playbooks_intro.html для получения дополнительной информации об использовании sudo_user.

Должно получиться так: -

tasks: - name: pull from git git: repo: git@gitlab.com:xyz.git dest: /root/Development/abc update: yes version: master

Примечание: здесь удаленный пользователь root

ты можешь попробовать это

- git:
    repo: 'https://foosball.example.org/path/to/repo.git'
    dest: /srv/checkout
    version: release-0.22

полная документация по https://docs.ansible.com/ansible/latest/modules/git_module.html