I’ve had Octopus deploy working well across a number of servers, but I upgraded to the latest server and tentacles yesterday and since then i’ve been getting an error on one of the servers.
The deployment runs fine, all files are copied, all variable substitutions… for all intents and purposes, the deployment is complete.
However, the Deployment just keeps running and never terminates, either by Failing or anything else. And because the deployment doesn’t complete, TeamCity doesn’t report that the task has completed either.
The following is the message from the Log file on the server in question.
(you can see that the deployment does actually complete in the previous step)
2014-05-29 16:11:02.6336 INFO Deployment complete.
2014-05-29 16:11:42.3746 ERROR Failed reading D:\Octopus\Tentacle\Messages\SQ-DEVBUILD-03-VM-9AEA9B48\08D1495EF541896000001732.pf.read
System.InvalidOperationException: Cannot create and populate list type Octopus.Platform.Variables.VariableDictionary.
at Newtonsoft.Json.Utilities.CollectionUtils.CreateList(Type listType, Boolean& isReadOnlyOrFixedSize)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndConstructorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectFromNonDefaultConstructor(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ConstructorInfo constructorInfo, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ResolvePropertyAndConstructorValues(JsonObjectContract contract, JsonProperty containerProperty, JsonReader reader, Type objectType)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObjectFromNonDefaultConstructor(JsonReader reader, JsonObjectContract contract, JsonProperty containerProperty, ConstructorInfo constructorInfo, String id)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue)
at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent)
at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType)
at Newtonsoft.Json.JsonSerializer.Deserialize[T](JsonReader reader)
at Pipefish.Transport.Filesystem.DirectoryMessageStoreSubscription.TryReadMessageFile(String dotReadFile, Message& message) in c:\TeamCity\buildAgent\work\cf0b1f41263b24b9\source\Pipefish\Transport\Filesystem\DirectoryMessageStoreSubscription.cs:line 154
Any tips greatly appreciated