Я пытаюсь выполнить 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