Service Fabric Deployment Error: ServiceManifest.xml is missing for service

Novac picture Novac · Aug 26, 2016 · Viewed 7.3k times · Source

I have added a Stateless Service Fabric project to my solution and set it up as a Web Api self host. I have touched nothing in any of the files added by Visual Studio. The only thing that went slightly wrong was a Git merge error on the solution file, causing me to have to add the projects again manually.

Projects are named as follows:

  • Project name/sfproj: ClientCore.CommandStackApi.Deploy
  • Service name/csproj: ClientCore.CommandStackApi

When I try to deploy, I get the following error:

The BuildLayout of the application in C:\SfDevCluster\Data\ImageBuilderProxy\AppType\ClientCore.CommandStackApi.DeployType is invalid. ServiceManifest.xml is missing for service ClientCore.CommandStackApiPkg.

When I compare files, and all the project settings I can think off, with my other Service Fabric projects everything looks fine, but it keeps complaining that the Service Manifest is missing. The only thing I noticed, was the SF project missing a dependency to the CommandStackApi project, but this didn't change anything.

I've tried on two different computers, the last of which had a fresh install of the Service Fabric SDK etc.

I'm guessing it would work if I remove all projects and set everything up again, but this also happened earlier, when I tried to construct the deploy package and powershell script exactly from the MSDN guide, so I would really like some insight into what I might be doing wrong. If this happens to a more mature project, I won't have the option to recreate the solution from scratch and tap into the Visual Studio blackbox magic setup, that it must be doing behind the scenes. Any ideas, for what might be wrong, would be appreciated.

Answer

Novac picture Novac · Aug 30, 2016

So I finally figured out what was wrong.

I was looking at the files and project dependencies, but missed a missing service dependency. When the two projects were removed from the solution by the merge, the SF project must have lost the service reference. Adding this back in fixed the problem.