Невозможно выполнить скрипт Ansible для извлечения кода из git и отправки его на несколько серверов - PullRequest
0 голосов
/ 08 июля 2019

Я хочу получить свой код RoR из git, собрать его, а затем отправить его на несколько удаленных компьютеров с помощью скрипта Ansible.Я упомянул все мои машинные данные в файле hosts Ansible.

Я создал ключ ssh и вставил его в раздел ключей ssh ​​моей учетной записи на github.Вот мой playbook.yml выглядит следующим образом.

---
- hosts: ansibleserver
  tasks:
    - git:
        repo: git@github.com:abc/abc.git
        dest: /tmp/LMS/
        version: master
        key_file: /root/.ssh/id_rsa
- hosts: redisservers
  tasks:
    - name: Copy file to a remote server
      copy:
        src: /root/LMS/
        dest: /root/LMS/
- hosts: webservers
  user: root
  vars:
      user: root
      home_directory: "/root/LMS/app/"
      rails_env: "development"
      deploy_to: "{{ /root/LMS/ }}"
~

Я не могу выполнить одну задачу, ниже приведены ошибки.

PLAY [ansibleserver] ***************************************************************************************************************************************************

TASK [Gathering Facts] *************************************************************************************************************************************************
fatal: [192.168.193.30]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: \\S\nKernel \\r on an \\m\n                                    !!!WARNING!!!                   \n############################################################################\nACCESS TO THIS SYSTEM IS STRICTLY RESTRICTED TO AUTHORIZED PERSONS ONLY \nUNAUTHORIZED ACCESS TO THIS SYSTEM IS NOT ALLOWED AND EVERY ACTIVITY IS MONITORED ON THIS \n                                      SYSTEM.                                \t\t\n###########################################################################################\nPermission denied (publickey,gssapi-keyex,gssapi-with-mic,password).", "unreachable": true}

PLAY RECAP *************************************************************************************************************************************************************
192.168.193.30             : ok=0    changed=0    unreachable=1    failed=0    skipped=0    rescued=0    ignored=0

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

1 Ответ

0 голосов
/ 08 июля 2019

Сначала проверьте, не является ли это проблемой синтаксиса YAML:

  - git: Cloning LMS code from git
      repo: git@github.com:**/abc.git
      dest: /root/deployer/setup/abc/
      version: master

Значение: модуль Git должен иметь свои параметры с отступом по сравнению с самим Git.
См. примеры :

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