Tentacle ArgumentNullException during deployment

I restarted a tentacle because we were seeing problems with a deploy that would not finish (despite the “Done.” message being printed in the output). I Cancelled the deployment and then restarted the tentacle.

However, after restart, I am continually seeing the following Tentacle exception while trying to deploy. I’ve run a “Check Health” and all appears well. We are using server version

  2013-07-01 11:46:40 INFO   Tentacle error message: System.ArgumentNullException: Value cannot be null.
  Parameter name: input
  at System.Text.RegularExpressions.Regex.Matches(String input)
  at Octopus.Tentacle.Deployment.Conventions.VariableEvaluator.ParseDependencies(List`1 nodes, Configuration config) in c:\BuildAgent\work\e6923628be6eaf72\source\Octopus.Tentacle\Deployment\Conventions\VariableEvaluator.cs:line 53
  at Octopus.Tentacle.Deployment.Conventions.VariableEvaluator.Evaluate(VariableDictionary variables) in c:\BuildAgent\work\e6923628be6eaf72\source\Octopus.Tentacle\Deployment\Conventions\VariableEvaluator.cs:line 21
  at Octopus.Tentacle.Deployment.DeploymentController.Execute(PackageMetadata package, VariableDictionary variables, IActivityLog log) in c:\BuildAgent\work\e6923628be6eaf72\source\Octopus.Tentacle\Deployment\DeploymentController.cs:line 51
  at System.Dynamic.UpdateDelegates.UpdateAndExecuteVoid3[T0,T1,T2](CallSite site, T0 arg0, T1 arg1, T2 arg2)
  at Octopus.Tentacle.Services.Jobs.JobQueue.RunDeploymentsOnBackgroundThread(Object ignored) in c:\BuildAgent\work\e6923628be6eaf72\source\Octopus.Tentacle\Services\Jobs\JobQueue.cs:line 81
  2013-07-01 11:46:40 INFO   Tentacle output follows:
  2013-07-01 11:46:37 DEBUG  Begin deployment of package: Edts.Service.Host.SystemTests.0.0.1536.55512
  2013-07-01 11:46:37 DEBUG  Tentacle Agent information is below:
  2013-07-01 11:46:37 DEBUG   - Machine name:       DEVTEST-DOI0PEP
  2013-07-01 11:46:37 DEBUG   - Is 64-bit:          True
  2013-07-01 11:46:37 DEBUG   - Service user name:  SYSTEM
  2013-07-01 11:46:37 DEBUG   - CLR version:        4.0.30319.296
  2013-07-01 11:46:37 DEBUG   - Current directory:  C:\Windows\system32
  2013-07-01 11:46:37 DEBUG   - OS version:         Microsoft Windows NT 6.1.7601 Service Pack 1
  2013-07-01 11:46:37 DEBUG   - Tentacle version:

Hmm. Even though Health Check reported that the node was all OK, it seems that I missed that the Environment page was showing the node as Yellow - I’m almost sure that it was reporting Green for that tentacle after upgrading the server a few weeks ago.

So I manually ran the 1.6.1 tentacle MSI on the node and refreshed the Environment page and eventually the node went green (although not immediately). I am now able to push a deployment to that machine.

I’m afraid I don’t have hard facts as to how to reproduce the state I ended up in. Chalk it up to sunspots.

I failed to mention that I had to manually run the MSI because the Upgrade All button didn’t want to upgrade the tentacle - presumably because the health check was reporting the correct version number?