Разработка SharePoint в ВМ и контроль версий с TFS - PullRequest
5 голосов
/ 31 января 2010

Наша команда будет разрабатывать для SharePoint с использованием локальных виртуальных машин. Наши виртуальные машины не могут присоединиться к домену хоста. Кроме того, нашим хост-сайтам запрещено использовать общий доступ к подключению к Интернету. У нас есть требование контролировать все наши разработки с помощью Team Foundation Server. Наша установка TFS использует Kerebos для аутентификации.

Чтобы иметь возможность использовать TFS для управления исходным кодом, мы думали, что можем разделить папку между хостом и виртуальной машиной, выполнить нашу работу на виртуальной машине, сохранить ее в общей папке, а затем выполнить проверку входов и тому подобное с хоста, который будет быть в состоянии аутентифицироваться против TFS.

Я надеюсь, что есть более чистый способ сделать это, или кто-то с подобными ограничениями может дать некоторое представление.

Примечание. Я успешно настроил аналогичный механизм с использованием Tortoise SVN и Ankh SVN, который работает, но руководство не будет ограничивать требования TFS. Не то чтобы я их тоже виню, лицензия очень дорогая, и они хотят чувствовать, что получают свои деньги. Поэтому TFS должен быть включен в ответ.

Ответы [ 3 ]

2 голосов
/ 03 февраля 2010

Вот решение, которое идеально подходит для разработки SharePoint 2007.

Мы запускаем виртуализированные экземпляры Windows Server 2008 на наших компьютерах с Windows XP в проекте, в котором я работаю. Мы используем Sun VirtualBox в качестве программного обеспечения для виртуализации.

во-вторых, каждая виртуальная машина является автономным контроллером домена + сервер sql + сервер отчетов + сервер анализа + сервер sharepoint и поэтому не присоединена к основному домену.

при открытии Visual Studio 2008 и подключении к TFS вам не нужно подключать компьютер / сервер к домену в качестве NAT виртуальных машин через сетевые адаптеры хост-машин - используйте полный адрес для своей TFS, и вы не должны не возникает проблем с подключением к TFS из виртуальной машины.

вам может потребоваться отключить встроенную проверку подлинности Windows (IE -> Сервис -> Свойства обозревателя -> Дополнительно) ...

Мы также запускаем VS08 на виртуальной машине, а не на хосте.

Другое дело - использовать WSPBuilder для построения ваших решений и создания сценариев развертывания для вас (или просто установить внешнюю утилиту / команду из VS08, которая запускает команду stsadm.exe -o deploysolution). на виртуальную машину и убедитесь, что она работает нормально - затем просто проверьте свой код, настройте сценарии сборки, которые запускают WSPBuilder на сервере сборки, чтобы создать для вас решения и развернуть их оттуда (или скопировать WSP на сервер и запустить их там).

1 голос
/ 01 февраля 2010

Обычно я использую VS2008, работающий на хосте с установленными сборками SharePoint в GAC хоста. Я использую события сборки / цели сборки с общей папкой и sysinternals для сборки непосредственно в папки bin / GAC виртуальной машины SharePoint. Таким образом Visual Studio выполняет сборку непосредственно на сервере SharePoint, и вам не нужно управлять двумя установками (хост и ВМ). Я бы также рекомендовал установить отладчик VS2008 в качестве службы на ВМ для упрощения отладки.

Надеюсь, это поможет!

1 голос
/ 01 февраля 2010

Я думаю, что ваши решения настолько чисты, насколько это возможно ... вы можете отобразить папку на вашем хост-компьютере и открыть проект Visual Studio прямо оттуда в виртуальной машине. Сохраняет копирование. Фиксация должна быть от хоста. Использование функций TFS будет немного неудобным, вам придется открывать VS на своем хост-компьютере, а также подключать коммиты к рабочим элементам и т. Д. Не совсем то, для чего предназначались инвестиции в TFS. Как получилось, что они расплатились наличными за TFS, но не хотят помогать? Виртуальные машины должны действительно находиться в домене или, по крайней мере, в доверенном домене.

Мы запускаем ту же настройку, за исключением того, что у нас есть SVN и мы можем фиксировать напрямую с ВМ. Работоспособный:)

Кстати, если вы разрабатываете для SharePoint 2010, это становится лучше; это позволит установку на несерверных ОС, чтобы вы могли разрабатывать на локальном компьютере (который, я думаю, находится в домене).

...