Я пытаюсь использовать пользовательское действие рабочего процесса для автоматического увеличения номеров сборки на основе ранее успешной сборки.Этот метод работал с основанным на MSBuild «рабочим процессом», но я не могу заставить TFS сообщить правильную «последнюю хорошую сборку» для текущего определения сборки.
То, что я делаю, довольно просто:
IBuildDetail build = context.GetExtension<IBuildDetail>();
IBuildDetail last = build.BuildServer.GetBuild(build.BuildDefinition.LastGoodBuildUri);
Я уже выполнил успешную сборку, в результате которой мой код занял номер сборки BuildName_1.0.0.0.Но когда я пытаюсь получить эту сборку и извлечь номер версии, GetBuild
жалуется, что LastGoodBuildUri
равно нулю.
Используемый мной пользовательский шаблон сборки устанавливает для CompilationStatus
и TestStatus
значение BuildPhaseStatus.Succeeded
в конце, поэтому TFS должна быть в состоянии сказать, что это хорошая сборка.Что еще мне не хватает?