TFS SDK를 사용하여 빌드를 작성, 대기열 및 추적 할 수 있습니까?

StackOverflow https://stackoverflow.com/questions/611485

  •  03-07-2019
  •  | 
  •  

문제

나는 인터넷 검색을했으며 이것이 어떻게 수행되는지, 심지어 수행 할 수 있는지 확실한 예제를 찾을 수 없습니다. 나는 그것이 가능하다고 생각한다. 누구든지 나를 올바른 방향으로 가리킬 수 있습니까?

지금까지 나는 MSDN의 TFS 네임 스페이스 문서를보고 있습니다. 저의 목표는 인트라넷 웹 애플리케이션에서 TFS의 빌드를 완전히 자동화하고 추적 할 수 있다는 것입니다.

도움이 되었습니까?

해결책

Richard는 나를 올바른 방향으로 지적 했으므로 내가 찾은 내용으로 내 질문에 대답 할 것입니다.

예, TFS SDK를 사용하여 빌드를 작성, 대기열 및 트랙으로 만들 수 있습니다. 원하는 인터페이스/클래스는 Microsoft.teamFoundation.Build.Client 네임 스페이스에 있습니다. iBuildserver, iBuildDefinition 및 iBuildDetail이 특히 유용합니다.

TFS 2010 업데이트 : TFS 2010 SDK를 사용한 예제 프로그램이 있습니다. 여기:

using System;
using System.Collections.Generic;
using Microsoft.TeamFoundation.Build.Client;
using Microsoft.TeamFoundation.Build.Workflow;
using Microsoft.TeamFoundation.Client;

namespace ManageBuildTemplates
{
    class Program
    {
        static void Main(string[] args)
        {
            TfsTeamProjectCollection collection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(new Uri("http://jpricket-test:8080/tfs/collection0"));
            IBuildServer buildServer = collection.GetService<IBuildServer>();

            IBuildDefinition definition = buildServer.GetBuildDefinition("UnitTests", "Definition1");

            IBuildRequest request = definition.CreateBuildRequest();
            request.ProcessParameters = UpdateVerbosity(request.ProcessParameters, BuildVerbosity.Diagnostic);

            buildServer.QueueBuild(request);
        }

        private static string UpdateVerbosity(string processParameters, BuildVerbosity buildVerbosity)
        {
            IDictionary<String, Object> paramValues = WorkflowHelpers.DeserializeProcessParameters(processParameters);
            paramValues[ProcessParameterMetadata.StandardParameterNames.Verbosity] = buildVerbosity;
            return WorkflowHelpers.SerializeProcessParameters(paramValues);
        }
    }
}

다른 팁

tfsbuild.exe (vs install의 .../common9/id 폴더)를보십시오.

이것은 어셈블리를 참조합니다 Microsoft.TeamFoundation.Build.Client 그리고 Microsoft.TeamFoundation.Build.Common 도움이되는 것처럼 보이고 ... 다른 TFS CIENT Assembliies로 문서화되지 않은 네임 스페이스를 포함합니다. 여기 MSDN에 있습니다. http://msdn.microsoft.com/en-us/library/cc339575.aspx

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top