Cannot deploy to Azure as Virtual Directory in Existing Web Role


Due to the architecture of what looks like a deploy within a deploy (webrole.cs is "hosting" the actual Composite site), deploying to azure REQUIRES that it be THE one and only site on the web role. But I already have a site I want as my webrole, and I need Composite to simply run as a part of that site.

i.e. MySite.com/Composite

The suggestion/request is to please change the architecture to not do such a custom/funky thing. All it would need is that the Composite app itself would be configurable from its own config to realize whether it needs to point to Blob storage instead of its own file system, and then simply run in its own application space.


mawtex wrote Apr 10, 2014 at 7:02 AM

Is it correctly understood that you using the Windows Azure package available at http://docs.composite.net/WindowsAzure to do your deployments?

Or have you created your own .cspkg file?

Composite C1 itself should run just fine in a sub-folder, but is is true that our downloadable web role is dedicated to running one or more "pure" Composite C1 sites at root level.

roachslayer wrote Apr 10, 2014 at 2:06 PM

I'll add more detail, sorry for unclarity.

I cannot use the Azure package from your site, I have to create my own cspkg because this all needs to fit into my pre-existing main application. Azure allows you to specify a VirtualApplication node inside the main Site node like so:

<WebRole name="MyApp" vmsize="Small">
  <Site name="Web">
      <Binding name="Endpoint1" endpointName="Endpoint1" />
    <VirtualApplication name="composite" physicalDirectory="..\composite" />
Were Site name="web" is my main asp.net site and webrole, and "composite" is the composite site, running from a sub-folder / virtual directory.

The PhysicalDirectory needs be the "fully baked" and ready to deploy Composite site w/binaries (just as though I would have zipped it for Azure deploy in your schema). That is what I put there. It all goes up to Azure, great. It runs in its own application space just as you would expect with any Virtual App in IIS. The problem is, Composite now has no way to be configured to use Azure Storage (that I know of) because it appears to have been designed to rely on WebRole.cs in a "special" dedicated WebRole deployment. But again, when using VirtualApplication, it cannot rely on WebRole.cs, as that pertains only to the "main" site in the servicedefinition.

I believe you when you say it's designed to run just fine in a sub-folder. It looks totally doable, I just can't see how to make it aware of Azure Storage without the use of WebRole.cs.

wrote Apr 23, 2014 at 12:38 PM

wysocki wrote Apr 23, 2014 at 12:38 PM

Turned it into a feature request