Scriptable Tentacle health check
Currently the Tentacle health check seems to consist of only "Is the service running?". It would be very useful to make the Tentacle run a custom PowerShell script on health check.
Alternatively make it possible for the health check to check for diskspace, which is what we currently need.
This feature has now been provided in Octopus Deploy 3.4.0 via the Machine Policies feature (https://octopus.com/downloads/3.4.0)
See docs http://docs.octopusdeploy.com/display/OD/Machine+Policies
Leslie Lintott commented
Second the ability to schedule the health check as well
Would want to be able to see which .Net version is installed and which version of IIS. Have been wasting a lot of time with a server upgrade deployment failing because that machine had not been upgraded to the latest .Net version.
C. Strong commented
Definitely interested in a scriptable hook. We want to do things like checking whether the FTP services are running, checking whether our application's windows service is running, checking connectivity with peer nodes in a cluster, etc. While this concept has some overlap with tools such as Chef or Puppet, the tools may be used by different groups of people with different permissions, or some projects may not have both.
Josh Kodroff commented
So... about that below comment: Is there any way to change the warning threshold?
Paul - Is there a way to customize which level we get the low disk space warning? Right now, it warns if space is below 5GB, could we make this 3GB instead?
Slightly different approach, but maybe we could make health checks exactly the same as a project process (same UI and workflow, same "continue on failure" logic). You can add ANYTHING you want to the process, from the script library even, and the only difference is that they have to return some value.
Chris Mullen commented
We have tentacles that are cut-off by a firewall, except during a deploy.
The health checks always fail because the server cannot communicate with the tentacles.
It would be great to be able to include or exclude environments from the scheduled health check.
Sorry - one more! It would also be great to be able to send notifications for different results - warning, failure, also even on successful completion.
Would also be awesome if we could SCHEDULE health checks to run at set times.
Paul, will the script allow configuration of the level of disk space that generates a warning? I'd like to be able to set the level at which I start to receive warnings of low disk space - I currently get a warning if my tentacle servers have less than 3GB of space available, and I'd like to be able to change it.
Showing what user the service is running under would be nice as well.
Amazing! Thanks for this incredibly quick response. Will it be possible to block deployment of projects when one of its tentacles reports this/a warning?
Also how about running the health check as step 0 in a deploy or add it as a configurable step?
As you say in the blog post this doesn't replace Nagios and monitoring but the intention is to ensure a successful deploy in a multi-tentacle enviroment.
Running the scripts is a nice idea! For now, we've added the disk space check since it was very quick to add: http://octopusdeploy.com/blog/health-checks-will-check-for-free-disk-space