I'm getting some strange errors from the build server in the CSPack step when build a Cloud Service (Web Role) project with the Publish target on a build server. Publish through Visual Studio 2012 works fine, but not on the build server.
Error reported by Team City:
[Azure\AzureAPI\AzureAPI.ccproj.teamcity] CorePublish
[15:58:49][CorePublish] CorePublish: PackageWebRole = True
[15:58:49][CorePublish] Publishing starting...
[15:58:49][CorePublish] RolePlugins is
[15:58:49][CorePublish] Publishing to 'bin\Release\app.publish\'
[15:58:49][CorePublish] MakeDir
[15:58:49][CorePublish] TargetServiceDefinition is bin\Release\ServiceDefinition.csdef [15:58:49][CorePublish] TargetServiceConfiguration is bin\Release\ServiceConfiguration.cscfg
[15:58:49][CorePublish] Roles is
[15:58:49][CorePublish] CSPack
[15:58:49][CSPack] D:\AzureAPI\bin\Release\ServiceDefinition.csdef error CloudServices077:
Need to specify the physical directory for
the virtual path 'Web/' of role Application.MyWebApi
My ServiceDefinition file contains these settings for the site.
<WebRole name="Application.MyWebApi" vmsize="Small">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="www" />
</Bindings>
</Site>
</Sites>
...
</WebRole
On the build server I have "Azure Authoring Tools v2.0" and the "Windows Azure Libraries for .NET 2.0".
Do I need to define the physical path when publishing on a build server, or are there any other scenarios that may cause this error?
I had the same issue but was able to fix it by adding more specific properties to the Command Line Properties section of the build step. The following additions prevented the error from showing and was able to correctly generate my .cspkg file:
/t:Publish
/p:TargetProfile=Cloud
/p:Configuration=Release
/p:Platform="Any CPU"
/p:PublishDir=bin\Release\app.publish
/p:OutputPath=bin\Release
Also, I changed the "Targets" field to the following: publish
From my understanding, that is the point of having /t:Publish
as a command line property but in any case, the error does not appear in the build anymore.
I had a similar problem while wrestling with CSPack. I eventually stumbled on this article on MSDN titled: Command-Line Build for Azure
I changed my MSBuild CMD to:
WebAppPaaS\WebAppPaaS.sln /t:Publish /p:TargetProfile=Cloud
Using MSBuild at:
C:\Program Files (x86)\MSBuild\14.0\Bin\MSBuild.exe
This resolved my build issues. I then deployed to Azure using PowerShell...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With