如何为Azure webrole提供多个自定义发布配置文件

时间:2013-01-17 21:30:27

标签: asp.net-mvc azure azure-sql-database azure-web-roles

使用Azure发布向导为您提供了一些更改配置设置的选项,但还不够。您可以告诉它使用哪个构建配置(将对您的Web配置应用转换),但您只有2个选择。发布和调试。您还可以指定要使用哪个云服务配置来转换您的service.config,但同样只有2个选项Cloud and Local。

我的问题是我在Azure中运行了3个不同版本的应用程序。他们是开发,演示和制作。每个都有自己的数据库,存储帐户和其他与身份验证相关的设置。只是进行发布和调试转换不会削减它。

我真的希望有一个脚本或其他东西,以便我可以将我的应用程序发布到我的每个Azure实例。它会改变我的web.config和service.config并定位正确的azure实例。

任何建议都表示赞赏。

2 个答案:

答案 0 :(得分:1)

以前有CodePlex项目http://wappowershell.codeplex.com/,现在它已成为官方工具:https://www.windowsazure.com/en-us/manage/downloads/

这是一组用于管理Azure部署的Windows PowerShell cmdlet。

以下问题非常相似:Publish Azure Project from Command Line

答案 1 :(得分:0)

在研究这个时,我将我的Azure工具更新到了10月发布。不确定这些选项是否在旧版本中可用,但这是我最终的结果。

事实证明,除了默认的服务配置和构建配置(云/本地/调试/发布)之外,还可以添加自己的服务配置和构建配置。

可以通过以下方式添加服务配置:

  1. 右键单击云服务项目中的Web角色,然后选择属性。
  2. 在属性窗口的顶部,打开“服务配置”菜单。然后选择manage。
  3. 选择配置并单击“创建副本”按钮。
  4. 选择副本并将其重命名为您想要的任何内容。
  5. 点击关闭,现在您应该能够拥有特定于新服务配置的设置。
  6. 可以通过(I followed this blog post)添加构建配置:

    1. 选择构建 - >菜单中的Configuration Manager。该
      Configuration Manager对话框
    2. 从Active solution configuration下拉列表中选择以显示New Solution Configuration对话框。
    3. 输入名称并选择要复制的配置。单击“确定”。
    4. 确保为新解决方案配置的每个项目选择正确的配置(发布或调试)。
    5. 请注意,仍然没有web.config转换。要添加新的Web.config转换,请右键单击Web.config文件,然后从菜单中选择Add Config Transforms。请注意,将自动添加与新配置匹配的新配置文件
    6. 执行这些步骤后,我可以在Azure发布向导中创建新的目标配置文件并选择这些配置。这使您可以使用转换自动化web.config设置,并为每个发布配置文件提供自己的自定义云服务配置。

      Here is another excellent reference that goes into much more detail then I was able to for this question.