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

Ответная обработка ошибок

Ребятам нужна одна помощь с ошибкой, нужно запустить один удаленный скрипт на серверах, но я получаю следующую ошибку.

моя игра

- hosts: broken
  strategy: debug
  become: yes
  remote_user: snehal

  gather_facts: false

  tasks:
    - name: check if file exists
      stat: path=/test/check_authkey
      register: authkey_exists

    - name: copying CEPLIVE script
      copy:
        src: /home/snehal/Final_build_files/check_authkey
        dest: /home/snehal/
      when: not authkey_exists.stat.exists

    - name: run  script
      command: /home/snehal/check_authkey.sh
      when: not authkey_exists.stat.exists

Что означает эта ошибка? как проверить, почему он не работает?

PLAY [broken] ******************************************************************************************************************************************************

TASK [check if file exists] ****************************************************************************************************************************************
ok: [MOD009293]
ok: [MOD007479]

TASK [copying CEPLIVE script] **************************************************************************************************************************************
skipping: [MOD007479]
ok: [MOD009293]

TASK [run CEPLIVE script] ******************************************************************************************************************************************
skipping: [MOD007479]
fatal: [MOD009293]: FAILED! => {"changed": true, "cmd": ["/home/snehal/check_authkey.sh"], "delta": "0:00:00.033337", "end": "2019-01-22 17:33:05.279549", "failed": true, "rc": 1, "start": "2019-01-22 17:33:05.246212", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []}
        to retry, use: --limit @/home/snehal/ansible/ceplive.retry

PLAY RECAP *********************************************************************************************************************************************************
MOD007479                  : ok=1    changed=0    unreachable=0    failed=0
MOD009293                  : ok=2    changed=0    unreachable=0    failed=1

Ваша ошибка означает, что ваш скрипт /home/snehal/Final_build_files/check_authkey работает и завершает работу со значением 1. Поскольку вы не поделились этим сценарием. Я не знаю, почему он выходит с таким значением.

Что будет, если ты сбежишь /home/snehal/Final_build_files/check_authkey ; echo $? вручную на пульте?

Если этот код выхода не является ошибкой, вы можете установить failed_when вариант для этой задачи с условием, описывающим, что является ошибкой, а что нет.

Если это сбой, вам может потребоваться отладка вашего скрипта. В частности, посмотрите на все, что связано с окружающей средой. Оболочка, которую вы получаете через ansible, может иметь другой набор PATH или другие переменные, установленные по-другому.