Только после того, как я вошел в:
Settings > Apps & Features > Programs and Features > Turn Windows features on or off
и включил:
SMB Direct
(поддержка удаленного прямого доступа к памяти (RDMA) для SMB 3. x протокол обмена файлами)
успешно запустил Vagrant экземпляр Hyper-V с моими общими папками.
Я не пытался пропустить некоторые из моих действий (например, временно отключить антивирусное программное обеспечение), но успешно выполнил все вышеперечисленное.
После того, как я не смог найти это четко задокументированное В ЛЮБОМ МЕСТЕ (не на сайте Vagrant, сайте Hyper-V, Stackoverflow, тоннах поисковых запросов Google) и боролся с этой проблемой в течение бесчисленных часов, я просто хотел поделиться этим, чтобы спасти других боль, которую я пережил. Надеюсь, это поможет!
Одним путем Вы могли сделать это, Вы, мог цель AfterEndToEndIteration в Ваш файл TFSBuild.proj, который будет выполнять командную строку TfsBuild.exe для запуска Вас другие сборки. Я думаю что-то вроде этого (хотя я не протестировал его),
<Target Name="AfterEndToEndIteration">
<GetBuildProperties TeamFoundationServerUrl="$(TeamFoundationServerUrl)"
BuildUri="$(BuildUri)"
Condition=" '$(IsDesktopBuild)' != 'true' ">
<Output TaskParameter="Status" PropertyName="Status" />
</GetBuildProperties>
<Exec Condition=" '$(Status)'=='Succeeded' "
Command="TfsBuild.exe start /server:$(TeamFoundationServerUrl) /buildDefinition:"Your Build Definition To Run"" />
</Target>
Я сделал то же самое Martin, предложенный в ряде случаев (его блог вне полезного, BTW). Однако я закончил тем, что должен был инициировать каскадные сборки как это (на основе некоторых других сложных правил) достаточно, что я создал пользовательскую задачу сделать это. Сохраните свои сценарии сборки хорошими и склонитесь, и дает Вам еще некоторую гибкость и возможности инкапсуляции.
public override bool Execute()
{
IBuildDefinition[] buildDefinitions = BuildServer.QueryBuildDefinitions(ProjectName);
foreach (IBuildDefinition build in buildDefinitions)
{
if(build.Enabled) //I did a bunch of custom rules here
{
Log.LogMessage(String.Concat("Queuing build: ", build.Name));
BuildServer.QueueBuild(build);
}
}
return true;
}
Существует некоторый более хороший материал на блоге Aaron Hallberg также:
http://blogs.msdn.com/aaronhallberg/archive/2007/04/24/team-build-object-model-queueing-a-build.aspx