É possível usar o TFS SDK para criar, fila e trilha constrói?
-
03-07-2019 - |
Pergunta
Estive pesquisando e não consigo encontrar qualquer exemplos sólidos como isso é feito, ou mesmo se ele pode ser feito. Presumo que puder. Alguém pode me apontar na direção certa?
Até agora eu tenho procurado sob a documentação TFS namespace no MSDN. Meu objetivo é ser capaz de automatizar completamente e acompanhar o nosso constrói no TFS partir de uma aplicação intranet web.
Solução
Richard apontou-me na direção certa, então eu vou responder a minha própria pergunta com o que eu encontrei.
Sim, você pode usar o TFS SDK para criar, fila, ea faixa constrói. As interfaces / classes que você deseja estão localizados no namespace Microsoft.TeamFoundation.Build.Client. IBuildServer, IBuildDefinition e IBuildDetail são particularmente úteis.
TFS 2010 UPDATE: Aqui está um exemplo de programa usando o TFS 2010 SDK, encontrados aqui :
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);
}
}
}
Outras dicas
Olhe para tfsbuild.exe (no ... / Common9 / IDE pasta do VS instalar).
Este referências montagens Microsoft.TeamFoundation.Build.Client
e Microsoft.TeamFoundation.Build.Common
que olhar útil, ... e contêm namespaces que não são documentados com os outros assembliies TFS cientes, mas estão no MSDN aqui http://msdn.microsoft.com/en-us/library/cc339575.aspx