git pull with ansible - PullRequest
       6

git pull with ansible

0 голосов
/ 16 апреля 2019

с этим playbook я не получаю ошибок, и он работает на Ubuntu против git userhome slash. Autput немного громко, но я не могу понять, почему он не получает должным образом последние изменения с удаленного сервера

- hosts: local
  vars:
     ansible_python_interpreter: "/usr/bin/env python3"

   tasks:
   - name: find git directories
     find:
       paths: "{{ ansible_env.HOME }}/git"
       file_type: directory
     register: found_directories

   - name: update repos
     git:
       repo: "{{ item.path }}/.git"
       dest: "{{ item.path }}"
       version: master
       update: yes
     with_items: "{{ found_directories.files }}"

есть идеи, почему модуль git не извлекает последние изменения из github?

Ответы [ 2 ]

1 голос
/ 16 апреля 2019

Строка repo: "{{ item.path }}/.git" во втором задании означает, что репозиторий git хранится в репозитории .git (если {{ item.path }} равен /home/ninja/git, это означает, что проект git хранится в /home/ninja/git/.git и что вынайдет каталог .git в /home/ninja/git/.git/.git).

Я думаю, вы только что допустили ошибку, добавив суффикс .git и ваш проект на самом деле находится в /home/ninja/git.Если это правильно, просто удалите часть .git в параметре repo.

0 голосов
/ 17 апреля 2019

для тех, кто интересуется, как обновить каталоги homefolder / git ... repo с помощью git pull. Единственное решение, которое я нашел, было с командой shell.

- hosts: local
  vars:
    ansible_python_interpreter: "/usr/bin/env python3"

  tasks:
   - name: find git directories
     find:
       paths: "{{ ansible_env.HOME }}/git"
       file_type: directory
     register: found_directories

   - name: pull latest changes
     shell: git pull 
     args:
       chdir: "{{ item.path }}"
       executable: /bin/bash
     with_items: "{{ found_directories.files }}"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...