1
votes

I have a TeamCity CI server which pushes the service fabric app in a zip to octopus. This goes well. My connection from octopus to the azure service fabric cluster is healthy. I make a release from de zip package in my project I Deploy the package. Acquire packages goes well Deploy step goes wrong It says the following in the logs: Deploying package: E:\Octopus\Packages\Spaces-1\feeds-builtin\xxSF\xxSF.1.0.0.225.zip

I have tried to change the path in Octopus Deploy but I cannot find the place where you can change this. I have read the documentation for octopus deploy but it did not help

Get-Content : Cannot find path ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationManifest.xml’ because it does not exist.

I do not understand where this path comes from, my guess is that this path is the place where the packages are. My ApplicationManifest.xml is in the zip package. Does anyone know what I have to do here?

Checked the RAW logs

I saw this:

Info | Deploying package: E:\Octopus\Packages\Spaces-1\feeds-builtin\xx\xx.1.0.0.225.zip Verbose | Extracting package to: C:\Octopus\Work\20190501091314-1918-1033\staging Verbose | Extracted 90 files Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\packages.config’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationPackageRoot\ApplicationManifest.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationParameters\Cloud.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationParameters\Local.1Node.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationParameters\Local.5Node.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\PackageRoot\ServiceManifest.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\PackageRoot\Config\Settings.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\PublishProfiles\Cloud.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\PublishProfiles\Local.1Node.xml’ Verbose | Performing variable substitution on ‘C:\Octopus\Work\20190501091314-1918-1033\staging\PublishProfiles\Local.5Node.xml’

Get-Content : Cannot find path ‘C:\Octopus\Work\20190501091314-1918-1033\staging\ApplicationManifest.xml’ because it Error | does not exist.

It looks like it cannot find the subfolder staging\ApplicationPackageRoot, ApplicationManifest.xml is in this subfolder.

1
What does the step template for this step look like?AperioOculus

1 Answers

0
votes

I fixed the problem. This is the solution:

Make sure your package that you upload from whatever CI Server you use has the following directories/file and structure:

  • ApplicationParameters(Folder)
  • PublishProfiles(Folder)
  • YourServiceFabric(Folder with your service fabric application) This has the same name as ServiceManifestName that is mentioned in the ApplicationManifest.xml. This name is specific so make sure that you have the right name. You will have to build the sfproj in order to get the .dll put in this folder.
  • ApplicationManifest.xml (File)

This is all that Octopus Deploy need to deploy your service fabric application.

My approach was as following: I packaged the Service Fabric Application in Visual Studio and I saw that there where a bunch of specific files that where packed as stated above. I then manually uploaded this package to the octopus deploy server and created a release/deploy. This went well so I gathered the same files from the CI server and pushed this to Octopus Deploy and it worked.