Ambiguous output redirect

After upgrading to 2019.6.3 our tentacles for our RHET Linux system seem to be encountering an issue during health checks with our deployment account but not the root account. If I use the root account it works fine and I can update calamari but the deployment account is returning the following, unfortunately we can not use the root account.

15:36:09 Verbose | Performing health check on machine
15:36:09 Verbose | Establishing SSH connection…
15:36:09 Verbose | SSH connection established
15:36:09 Error | Ambiguous output redirect.
15:36:09 Verbose | SSH connection disposed.
15:36:09 Verbose | Exit code: 1
15:36:09 Fatal | The remote script failed with exit code 1
15:36:09 Verbose | The remote script failed with exit code 1
| Octopus.Server.Orchestration.Targets.Tasks.ActionHandlerFailedException: The remote script failed with exit code 1
| at Octopus.Server.Orchestration.ServerTasks.Deploy.ActionDispatch.SuccessArbitrator.ThrowIfNotSuccessfull(IActionHandlerResult result)
| at Octopus.Server.Orchestration.ServerTasks.Deploy.ActionDispatch.AdHocActionDispatcher.Dispatch(Machine machine, ActionHandlerInvocation actionHandler, VariableCollection variables)
| at Octopus.Server.Orchestration.ServerTasks.HealthCheck.Controllers.SshMachineHealthController.CheckMachineHealth(Machine machine)

Hi,

Interesting issue!
What version of Octopus were you on before the upgrade?
Are you able to send the raw task log?

Regards
John

Hi,

So I did some investigation, it seems this issues may be related to the Linux shell the deployment account is using.
So my question is, what Linux shell is root using vs deployment account, are they different?
It seems our scripts use /bin/bash.

Regards
John

Hi John,

That was it, thanks!

But very strange, any chance that the health check had a breaking change that required the default shell to be bash?

Regards,
Adam

Hi Adam,

Yes, we did change the health checks and yes we do require bash shell to run that code!
I have raised a bug for it (https://github.com/OctopusDeploy/Issues/issues/5695) , we shouldn’t mandate bash as the required shell.
BTW, what shell was the deployment account using?

Cheers
John

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.