Ошибка Ansible при выполнении команды запуска pm2

#ansible #pm2

#ansible #pm2

Вопрос:

При выполнении ansible playbook с командой: ansible-playbook 2_installJsReport.yml

CentOS 7.6

Ansible 2.7.10

я получаю сообщение об ошибке:

ЗАДАЧА [запустить jsreport при перезапуске системы] >*****************************************************************************>************************************** фатальный: [localhost]: СБОЙ! => {«изменено»: true, «cmd»: [«pm2», «запуск»], >»дельта»: «0:00:00.601130″, » завершение»: «2019-04-24 12:59:33.091819″, » сообщение «: «код возврата не> ноль», «rc»: 1, «начать»: «2019-04-24 12:59:32.490689″, » stderr»: >»», «stderr_lines»: [], «stdout»: «[PM2] Найдена система инициализации: systemd n [PM2] Чтобы > настроить сценарий запуска, скопируйте / вставьте следующую команду:nsudo env >PATH=$PATH:/home/username/.nvm/versions/node/v8.11.3/bin >/home/username/.nvm/versions/node/v8.11.3/lib/ node_modules/pm2/bin/pm2 > имя пользователя startup systemd -u -hp /home/username», «stdout_lines»: [«[PM2] > Найдена система инициализации: systemd», «[PM2] Чтобы настроить сценарий запуска, скопируйте / вставьте > следующую команду:», «sudo env > PATH=$PATH:/home/username/.nvm/versions/node/v8.11.3/bin >/home/username/.nvm/versions/node/v8.11.3/lib/node_modules/pm2/bin/pm2 > startup systemd -u username -hp /home/username»]}

Скрипт Ansible

 ---
- hosts: localhost

  tasks:

    - name: make jsreport start at system restart
      command: pm2 startup   
  

Ответ №1:

Сообщение «ошибка» содержит инструкции, которым вы должны следовать для настройки запуска:

[PM2] Найдена система инициализации: systemd
[PM2] Чтобы настроить сценарий запуска, скопируйте / вставьте следующую команду: sudo env PATH=$PATH:/home/username/.nvm/versions/node/v8.11.3/bin /home/username/.nvm/versions/node/v8.11.3/lib/node_modules/pm2/bin/pm2 startup systemd -u username -hp /home/username

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

 ---
- hosts: localhost

  tasks:

    - name: make jsreport start at system restart
      become: true
      command: pm2 startup systemd -u username --hp /home/username
      environment:
        PATH: "{{ ansible_env.PATH }}"