You could suggest your ping replacement to the vendor. If the vendor then updates their script with your changes, you can have the benefits of running unmodified vendor code.
On Thu, 13 Apr 2023 at 22:06, Joefrey <[email protected]> wrote: > I'm able to workaround the issue by replacing the vendor's TIMEOUTs with > "ping -n X >NUL". > > @jborean93, are there any Ansible flags or tricks that would allow this to > work without modifying the vendor's script? > > On Thursday, April 13, 2023 at 12:26:58 PM UTC-5 Joefrey wrote: > >> Good day, >> >> Struggling to find a way to run the below vendor-provided batch file via >> Ansible. The script works fine when run manually, but I receive dozens of >> the below error when executing via Ansible win_command or win_shell. I >> have also tried to execute the batch file interactively using become. >> When ran interactively it simply hangs. Hoping to find a solution that >> doesn't involve modifying vendor provided code. >> >> Ansible: >> >> - name: Upgrade RabbitMQ >> ansible.windows.win_shell: .\install_rabbitmq.bat >> args: >> chdir: '{{ install_app_download_dir }}\Prerequisites' >> >> Error: >> >> ERROR: Input redirection is not supported, exiting the process >> immediately. >> >> install_rabbitmq.bat File: >> >> CLS >> @ECHO OFF >> >> SET>>%Temp%\install_rabbitmq.log >> >> CALL sc qc RabbitMQ > NUL >> if errorlevel 1 ( >> goto rabbitchecked >> ) >> CALL sc qc RabbitMQ | findstr "erts-13.1.2" > NUL >> if %errorlevel% equ 0 ( >> ECHO RabbitMQ in the newest version detected. Aborting reinstall >> goto newestrabbit >> ) >> >> :rabbitchecked >> >> CALL SC QUERY AppNetStateService > NUL >> if errorlevel 1060 ( >> ECHO Services are stopped >>%Temp%\install_rabbitmq.log >> goto servicesstopped >> ) >> ECHO Stopping Services... >>%Temp%\install_rabbitmq.log >> CALL "%~dp0\App.ServiceManager.exe" /Mode:Stop >> 2>>%Temp%\install_rabbitmq.log >> :servicesstopped >> >> CALL SC QUERY RabbitMQ > NUL >> if errorlevel 1060 ( >> ECHO Rabbit is uninstalled >>%Temp%\install_rabbitmq.log >> goto rabbituninstalled >> ) >> >> ECHO UNinstalling Rabbit >>%Temp%\install_rabbitmq.log >> CALL sc stop RabbitMQ 2>>%Temp%\install_rabbitmq.log >> :rabbitloop >> CALL sc query RabbitMQ | find "STOPPED" >> if errorlevel 1 ( >> TIMEOUT 10 >> goto rabbitloop >> ) >> >> CALL sc config RabbitMQ binPath= "%ProgramW6432%\Erlang >> OTP\erts-13.1.2\bin\erlsrv.exe" >> >> ECHO Uninstalling RabbitMQ... >> CALL "%ProgramW6432%\RabbitMQ Server\uninstall.exe" /S >> 2>>%Temp%\install_rabbitmq.log >> :LOOPUNINSTALL1 >> CALL "%~dp0\PSLIST" Un_A /accepteula 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> ECHO RabbitMQ uninstallation finished. >> GOTO CONTINUEUNINSTALL1 >> ) ELSE ( >> TIMEOUT 2 >> GOTO LOOPUNINSTALL1 >> ) >> >> :CONTINUEUNINSTALL1 >> >> TIMEOUT 60 >nul 2>&1 >> >> :rabbituninstalled >> >> ECHO Uninstalling Erlang OTP... >> >> IF NOT DEFINED ERLANG_HOME ( >> SET ERLANG_HOME=%ProgramW6432%\erl-24.2.1 >> ) >> >> CALL "%ERLANG_HOME%\uninstall.exe" /S 2>>%Temp%\install_rabbitmq.log >> :LOOPUNINSTALL2 >> CALL "%~dp0\PSLIST" Un_A /accepteula >nul 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> ECHO Erlang OTP uninstallation finished. >> GOTO CONTINUEUNINSTALL2 >> ) ELSE ( >> TIMEOUT 2 >> GOTO LOOPUNINSTALL2 >> ) >> >> :CONTINUEUNINSTALL2 >> >> TIMEOUT 60 >nul 2>&1 >> >> ECHO Removing cookies, old files and registries... >> DEL /F "C:\Windows\System32\config\systemprofile\.erlang.cookie" >> 2>>%Temp%\install_rabbitmq.log >> DEL /F "%SystemRoot%\.erlang.cookie" 2>>%Temp%\install_rabbitmq.log >> DEL /F "%USERPROFILE%\.erlang.cookie" 2>>%Temp%\install_rabbitmq.log >> >> DEL /S /Q /F "%AppData%\RabbitMQ\" 2>>%Temp%\install_rabbitmq.log >> >> reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Ericsson\Erlang" /f >> reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Ericsson\Erlang" /f >> >> TIMEOUT 10 >nul 2>&1 >> >> ECHO Installing Erlang OTP 25... >> CALL "%~dp0\otp_win64_25.1.2.exe" /S 2>>%Temp%\install_rabbitmq.log >> >> :LOOP1 >> CALL "%~dp0\PSLIST" otp_win64_25.1.2 >nul 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> ECHO Erlang OTP 25 installation finished. >> GOTO CONTINUE1 >> ) ELSE ( >> TIMEOUT 2 >> GOTO LOOP1 >> ) >> >> :CONTINUE1 >> SET ERLANG_HOME=%ProgramW6432%\Erlang OTP >> SETX ERLANG_HOME "%ProgramW6432%\Erlang OTP" >> >> ECHO Installing RabbitMQ Server 3.11.4... >> CALL "%~dp0\rabbitmq-server-3.11.4.exe" /S 2>>%Temp%\install_rabbitmq.log >> >> :LOOP2 >> CALL "%~dp0\PSLIST" rabbitmq-server-3.11.4 >nul >> 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> ECHO RabbitMQ Server 3.11.4 installation finished. >> GOTO CONTINUE2 >> ) ELSE ( >> TIMEOUT 2 >> GOTO LOOP2 >> ) >> >> :CONTINUE2 >> >> ECHO Synchronising Erlang cookies... >> >> :LOOP3 >> IF EXIST "%USERPROFILE%\.erlang.cookie" ( >> GOTO CONTINUE3 >> ) ELSE ( >> GOTO LOOP3 >> ) >> :CONTINUE3 >> >> TIMEOUT 10 >nul 2>&1 >> >> DEL /F "C:\Windows\System32\config\systemprofile\.erlang.cookie" >> 2>>%Temp%\install_rabbitmq.log >> COPY /Y "%USERPROFILE%\.erlang.cookie" >> "C:\Windows\System32\config\systemprofile\.erlang.cookie" >> 2>>%Temp%\install_rabbitmq.log >> >> DEL /F "%SystemRoot%\.erlang.cookie" 2>>%Temp%\install_rabbitmq.log >> COPY /Y "%USERPROFILE%\.erlang.cookie" "%SystemRoot%\.erlang.cookie" >> 2>>%Temp%\install_rabbitmq.log >> >> ECHO Configuring RabbitMQ... >> >> TIMEOUT 10 >nul 2>&1 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmq-service" stop >> 2>>%Temp%\install_rabbitmq.log >> TIMEOUT 10 >nul 2>&1 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmq-service" start >> 2>>%Temp%\install_rabbitmq.log >> >> :LOOP4 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" status >nul >> 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> TIMEOUT 5 >nul 2>&1 >> GOTO LOOP4 >> ) ELSE ( >> GOTO CONTINUE4 >> ) >> >> :CONTINUE4 >> >> TIMEOUT 30 >nul 2>&1 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" start_app >> 2>>%Temp%\install_rabbitmq.log >> TIMEOUT 30 >nul 2>&1 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" add_user admin 9 >> 2>>%Temp%\install_rabbitmq.log >> TIMEOUT 5 >nul 2>&1 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" set_user_tags admin >> administrator 2>>%Temp%\install_rabbitmq.log >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" add_vhost / >> 2>>%Temp%\install_rabbitmq.log >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" set_permissions -p / admin >> .* .* .* 2>>%Temp%\install_rabbitmq.log >> TIMEOUT 5 >nul 2>&1 >> >> :LOOP5 >> CALL "%ProgramW6432%\RabbitMQ >> Server\rabbitmq_server-3.11.4\sbin\rabbitmqctl" status >nul >> 2>>%Temp%\install_rabbitmq.log >> IF ERRORLEVEL 1 ( >> TIMEOUT 5 >nul 2>&1 >> GOTO LOOP5 >> ) ELSE ( >> GOTO CONTINUE5 >> ) >> >> :CONTINUE5 >> >> SC QUERY AppNetStateService > NUL >> if errorlevel 1060 ( >> goto servicesstarted >> ) >> ECHO Restarting services... >> CALL "%~dp0\App.ServiceManager.exe" /Mode:Start >> 2>>%Temp%\install_rabbitmq.log >> :servicesstarted >> >> :newestrabbit >> >> Thank you for any and all assistance! >> > -- > You received this message because you are subscribed to the Google Groups > "Ansible Project" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/ansible-project/6c6707ad-2e14-4b7e-80e9-e78ea8cd0b7fn%40googlegroups.com > <https://groups.google.com/d/msgid/ansible-project/6c6707ad-2e14-4b7e-80e9-e78ea8cd0b7fn%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- Sent from Gmail Mobile -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/CAF8BbLZQqG7iuq2OrdwPag7cv8X6iGxBwcWzGiorbSxQfzP21Q%40mail.gmail.com.
