23
votes

I have a solution with multiple web projects. I want to run them inside Azure Websites, each as a separate website, from the same Git repository.

How do I specify which website runs which web project?

AppHarbor handles this with multiple solution files named after the applications, containing the respective web project. I cannot find anything about Azure websites.

3

3 Answers

44
votes

Now it is as simple as using App.Settings instead of a .deployment file.

This also allows for multi-project solutions in one Repo, so for example, if you have a WebAPI and a Web App in one solution you can configure an Azure Web Site to deploy a specific project. like so:

Azure App.Settings Example

Source: https://github.com/projectkudu/kudu/wiki/Customizing-deployments#using-app-settings-instead-of-a-deployment-file

I have tried this and works a treat.

6
votes

You will need to work with 2 different branches combined with a .deployment file.

So the first branch could have something like this in the .deployment file:

[config]
project = WebProject/WebProjectA.csproj

And branch 2 something like this:

[config]
project = WebProject/WebProjectB.csproj
3
votes

I came across a good blog post that describes how to do this using a custom deployment script. It is a bit fiddly but is a workable solution until something better is added.

http://blog.amitapple.com/post/38419111245/azurewebsitecustomdeploymentpart3

Edit:

This one is even better and allows you to do it with a couple of extra files at the route of your repo:

http://www.devtrends.co.uk/blog/azure-web-sites-git-deploy-for-multiple-project-solutions