We are having an issue with setting up a SSH tentacle. We are getting the following output from our health check:
Task ID: ServerTasks-1439
Task status: Failed
Task queued: Friday, April 22, 2016 5:08 AM
Task started: Friday, April 22, 2016 5:08 AM
Task duration: 2 seconds
Server version: 3.3.9+Branch.master.Sha.35de9da28e9759d98a404c505b882114f10e2e44
| == Failed: Check NAME health ==
05:08:12 Info | Starting health check for a limited set of deployment targets
05:08:12 Info | 1 machines will have their health checks taken.
05:08:14 Fatal | The health check failed. One or more deployment targets were not available.
| == Failed: Check deployment target: NAME ==
05:08:12 Verbose | Requesting upload…
05:08:12 Verbose | Establishing SSH connection…
05:08:12 Verbose | SSH connection established
05:08:12 Verbose | Beginning streaming transfer of health-check.sh to $HOME.octopus\OctopusServer\Work\20160422090812-33
05:08:12 Verbose | Establishing SFTP connection…
05:08:12 Verbose | SSFTP connection established
05:08:13 Verbose | Stream transfer complete
05:08:13 Error | Required command ‘mono’ is not available.
05:08:13 Verbose | Disposing SFTP connection…
05:08:13 Verbose | Disposing SSH connection…
05:08:13 Fatal | The remote script failed with exit code 127
05:08:13 Verbose | The remote script failed with exit code 127
| Octopus.Shared.Tasks.ActivityFailedException: The remote script failed with exit code 127
| at Octopus.Worker.Scripting.ScriptResult.EnsureSuccessful() in Y:\work\refs\tags\3.3.9\source\Octopus.Worker\Scripting\ScriptResult.cs:line 71
| at Octopus.Worker.Ssh.SshWorker.CheckHealth() in Y:\work\refs\tags\3.3.9\source\Octopus.Worker\Ssh\SshWorker.cs:line 65
| at Octopus.Server.Orchestration.Health.MachineTaskController.PerformTask(Machine machine) in Y:\work\refs\tags\3.3.9\source\Octopus.Server\Orchestration\Health\MachineTaskController.cs:line 86
| Octopus.Server version 3.3.9 (3.3.9+Branch.master.Sha.35de9da28e9759d98a404c505b882114f10e2e44)
| == Failed: Summary ==
05:08:14 Info | OFFLINE:
05:08:14 Info | - NAME at ssh://NAME/, error: The remote script failed with exit code 127
05:08:14 Fatal | One or more deployment targets were not online. Please see the output Log for details.
So we have checked that MONO is available and on the path.
On the server with the same user use to connect we ran:
$ which mono
$ mono --version
Mono JIT compiler version 4.4.0 (Stable 188.8.131.52/a3fabf1 Thu Apr 21 10:52:11 EDT 2016)
Copyright © 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
LLVM: supported, not enabled.
We would like to get hold of a example health-check.sh to run interactively to debug but I guess this is created dynamical and then removed.
We used the following script on the server, found from discussion ticket:
yum -y install bison gettext glib2 fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget
tar jxf mono-184.108.40.206.tar.bz2
We had to remove to “freetype” dependency as it was not resolving correctly.
Any help would be appreciated.