Team Build: Как собрать несколько Azure проектов в одном solution

Эта проблема возникла когда мне понадобилось добавить ещё один Azure проект в solution. Дело в том, что  облачный проект содержит всего два файла — ServiceDefinition.csdef и ServiceConfiguration.cscfg, имена которых не зависят от имени проекта и всегда одинаковы. Нет никаких проблем, если Вы собираете свой solution при помощи IDE. А вот если собирать при помощи Team Build, то возникают.

Дело в том, что при сборке Team Build перенаправляет весь output в один фолдер для всех проектах в solution. При этом, от каждого Azure проекта там должно оказаться две сущности – фолдер <azure_project_name>.cxx и файл .cscfg из проекта, т.е. ServiceConfiguration.cscfg. Вполне очевидно, что в общеем фолдере окажется этот файл только от того Azure проекта, который собирался последним. Остальные будут перезаписаны.

Что делать? Ответ очевиден – дать файлу ServiceConfiguration.cscfg уникалное имя, например — <azure_project_name>Configuration.cscfg. К сожалению, сделать это просто нажав клавишу F2 в IDE не получится, если Ваш проект лежит в Source Control – в версии Beta 2 у IDE будут проблемы с этим. Так что самый простой способ:

  1. Выгрузить проект или закрыть solution.
  2. переименовать файл:
    ServiceConfiguration.cscfg
    в
    <your_new_name>.cscfg
  3. Открыть файл проекта в редакторе и исправить:
    <ServiceConfiguration Include="ServiceConfiguration.cscfg" />
    на
    <ServiceConfiguration Include="<your_new_name>.cscfg" />

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

%d такие блоггеры, как: