Я запускаю сценарий .bat на сервере, который просто проверяет, запущена служба или нет, что-то вроде этого:
nssm.exe start MyService
for /F "tokens=3 delims=: " %%H in ('sc query "MyService" ^| findstr "STATE"') do (
if /I "%%H" NEQ "RUNNING" (
exit /b 1
) else (
exit /b 0
)
)
Этот файл .bat вызывается этим ответом:
- name: Start service
win_command: StartService.bat
args:
chdir: "C:\temp"
register: result
failed_when: result.rc != 0
Но я всегда получаю код ошибки 0, если он не работает или успешно. Если я запускаю скрипт вручную и проверяю %errorlevel%
, он всегда показывает правильный ..