I ran into a problem with VMware vSphere 6.5 Auto Deploy suddenly stopped working.
When trying to change rules with New-DeployRule or Repair-DeployImageCache I got the following error:
Repair-DeployImageCache System.Runtime.Serialization.SerializationException: Parse Error, no assembly associated with Xml key ImagefactoryPkgImageProfile at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessGetType(String value, String xmlKey, String& assemblyString) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessType(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessAttributes(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.StartChildren() at System.Runtime.Serialization.Formatters.Soap.SoapParser.ParseXml() at System.Runtime.Serialization.Formatters.Soap.SoapParser.Run() at System.Runtime.Serialization.Formatters.Soap.ObjectReader.Deserialize(HeaderHandler handler, ISerParser serParser) at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize(Stream serializationStream, HeaderHandler handler) at VMware.DeployAutomation.Types.PxeProfile.get_ImageProfile() System.Runtime.Serialization.SerializationException: Parse Error, no assembly associated with Xml key ImagefactoryPkgImageProfile at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessGetType(String value, String xmlKey, String& assemblyString) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessType(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessAttributes(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.StartChildren() at System.Runtime.Serialization.Formatters.Soap.SoapParser.ParseXml() at System.Runtime.Serialization.Formatters.Soap.SoapParser.Run() at System.Runtime.Serialization.Formatters.Soap.ObjectReader.Deserialize(HeaderHandler handler, ISerParser serParser) at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize(Stream serializationStream, HeaderHandler handler) at VMware.DeployAutomation.Types.PxeProfile.get_ImageProfile() System.Runtime.Serialization.SerializationException: Parse Error, no assembly associated with Xml key ImagefactoryPkgImageProfile at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessGetType(String value, String xmlKey, String& assemblyString) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessType(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessAttributes(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.StartChildren() at System.Runtime.Serialization.Formatters.Soap.SoapParser.ParseXml() at System.Runtime.Serialization.Formatters.Soap.SoapParser.Run() at System.Runtime.Serialization.Formatters.Soap.ObjectReader.Deserialize(HeaderHandler handler, ISerParser serParser) at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize(Stream serializationStream, HeaderHandler handler) at VMware.DeployAutomation.Types.PxeProfile.get_ImageProfile() System.Runtime.Serialization.SerializationException: Parse Error, no assembly associated with Xml key ImagefactoryPkgImageProfile at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessGetType(String value, String xmlKey, String& assemblyString) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessType(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.ProcessAttributes(ParseRecord pr, ParseRecord objectPr) at System.Runtime.Serialization.Formatters.Soap.SoapHandler.StartChildren() at System.Runtime.Serialization.Formatters.Soap.SoapParser.ParseXml() at System.Runtime.Serialization.Formatters.Soap.SoapParser.Run() at System.Runtime.Serialization.Formatters.Soap.ObjectReader.Deserialize(HeaderHandler handler, ISerParser serParser) at System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize(Stream serializationStream, HeaderHandler handler) at VMware.DeployAutomation.Types.PxeProfile.get_ImageProfile()
Unfortunately VMware support was no help.
After resetting my Auto Deploy database on vCenter using this article: http://virtualkenneth.com/2016/03/11/reset-vmware-auto-deploy-db-to-default/ the error message changed slightly, and that proved fruitful.
The new error message was:
New-DeployRule -Name Test -ImageProfile $ImageProfile -AllHosts Cannot process argument transformation on parameter 'item' .Exception has been thrown by the target of an invocation.
Solution
This luckily lead me to this kb: https://kb.vmware.com/kb/2094260 which states that it is because someone enabled FIPS Compliant Encryption, and after disabling that, things started working again.
I am pretty sure you do not need to clear you Auto Deploy DB, it was just a part of my troubleshooting process.
If you need help finding that setting. You can have a look here: https://www.howtogeek.com/245859/why-you-shouldnt-enable-fips-compliant-encryption-on-windows/
Just as a note, Auto Deploy did not work through the Web Client either. The same error appears.
Hope this helps.
Please leave any comments below.