Deployment 创建后,无法在生成/部署定义(vnext)中选择TFS 2015计算机组

Deployment 创建后,无法在生成/部署定义(vnext)中选择TFS 2015计算机组,deployment,tfs,visual-studio-2015,tfs-2015,build-definition,Deployment,Tfs,Visual Studio 2015,Tfs 2015,Build Definition,TFS 2015安装有问题,是从2010年升级的。我们遇到了以下问题。这涉及到试运行,因此我们在同一台服务器上安装所有内容,我们知道这不是首选方法 •使用Windows server 2012 R2安装了新的虚拟服务器 •添加了IIS功能 •已安装SQL server 2014 < P>服务器上的SharePoint基础2013 •在服务器上安装visual studio 2015 •安装了所有必要的.NET目标框架 •安装了MS Build tools 2015、Microsoft Visua

TFS 2015安装有问题,是从2010年升级的。我们遇到了以下问题。这涉及到试运行,因此我们在同一台服务器上安装所有内容,我们知道这不是首选方法

•使用Windows server 2012 R2安装了新的虚拟服务器

•添加了IIS功能

•已安装SQL server 2014

< P>服务器上的SharePoint基础2013 •在服务器上安装visual studio 2015

•安装了所有必要的.NET目标框架

•安装了MS Build tools 2015、Microsoft Visual Studio 2015代理等先决条件

•已将TFS2010备份恢复到新的SQL server

•安装tfs 2015并在安装程序中运行“升级”选项

•处理配置中的所有步骤,如添加生成控制器和生成代理

•加载Vso代理并运行“ConfigureAgent.cmd”

•在TFS中配置了代理池和队列

•增加了额外的团队项目集合。因此,我们有一个2010年遗留升级项目的集合,以及一个新团队项目的集合

•管理团队项目、团队成员等

•创建XAML构建定义,在服务器上正确完成构建,执行测试

但是,

如果我尝试使用部署模板创建新的(非XAML)构建定义(请参见图片)。 当我们想要选择“测试机器组/Azure资源组”时,例如在选择测试位置时,就会出现问题。选择列表为空。 因此,我们使用“管理”选项添加了机器组,并且机器组可用。但是,包含机器组的下拉列表保持为空,即使在刷新后也是如此(参见图片)

接下来,我们检查了他的问题的事件日志。刷新dropdownlist时,事件日志中会出现以下条目:

第一:

- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Microsoft-Team Foundation Server" Guid="{80761876-6844-47D5-8106-F8ED2AA8687B}" /> 
  <EventID>0</EventID> 
  <Version>3</Version> 
  <Level>2</Level> 
  <Task>1</Task> 
  <Opcode>10</Opcode> 
  <Keywords>0x8000000000000001</Keywords> 
  <TimeCreated SystemTime="2016-04-12T09:09:21.717163200Z" /> 
  <EventRecordID>59666</EventRecordID> 
  <Correlation ActivityID="{6AD40FD3-10BA-4A7E-B6D9-F6926072DAB4}" /> 
  <Execution ProcessID="3376" ThreadID="6484" /> 
  <Channel>Microsoft-Team Foundation Server/Debug</Channel> 
  <Computer>KTBSV021.KTB.local</Computer> 
  <Security UserID="S-1-5-21-2105344776-4230907741-261866850-3716" /> 
  </System>
- <UserData>
- <Info TraceId="{00000001-0001-0001-0000-000000000000}" xmlns="http://schemas.microsoft.com/TeamFoundation/2010/Framework">
  <Tracepoint>0</Tracepoint> 
  <ServiceHost>{87670F79-6386-4363-9960-73B634419263}</ServiceHost> 
  <ContextId>10085</ContextId> 
  <ProcessName>w3wp</ProcessName> 
  <Username>KTB\tmpadmin</Username> 
  <VSID>{9E83242F-9944-4CBD-AF10-EF2D449A03B1}</VSID> 
  <Service>Web-Api</Service> 
  <Method>TaskDefinitionWebApiProxy.QueryEndpoint</Method> 
  <Area>DistributedTask</Area> 
  <Layer>WebApiProxy</Layer> 
  <UserAgent>Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko</UserAgent> 
  <Uri>/tfs/Default/_apis/distributedtask/endpoint</Uri> 
  <Path /> 
  <UniqueIdentifier>{A9646429-41CB-4137-A39A-D4E29EDDC389}</UniqueIdentifier> 
  <UserDefined /> 
  <ExceptionType>System.Net.WebException</ExceptionType> 
  <Message>System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.GetResponse() at Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequest(HttpRequestMessage requestMessage, IList`1 sourceDefinitions, DataSource dataSource)</Message> 
  </Info>
  </UserData>
  </Event>
-
- 
0
3.
2.
1.
10
0x800000000000001
59666
微软Team Foundation服务器/调试
KTBSV021.KTB.local
- 
- 
0
{87670F79-6386-4363-9960-73B634419263}
10085
w3wp
KTB\tmpadmin
{9E83242F-9944-4CBD-AF10-EF2D449A03B1}
Web Api
任务定义WebApiproxy.QueryEndpoint
HTTP/1.1

•已在服务器上启用Powershell Remote

•服务帐户已添加到代理池中的角色

这显然是一个安全问题。我们忘记了什么或做错了什么

你的问题有点像。您可以尝试中的解决方案,将TFS服务帐户添加到具有完全访问权限的C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys,以便该服务可以访问所有证书


但首先,请尝试使用您的帐户重新部署代理,该帐户本应作为团队项目集合管理员或代理池管理员添加。

因此错误为:System.Net.WebException:远程服务器返回错误:(401)未经授权。位于Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequestMessage(HttpRequestMessage requestMessage,IList`1 sourceDefinitions,DataSource DataSource)的System.Net.HttpWebRequest.GetResponse(),抱歉,这并没有解决问题。问题仍然存在。您是否尝试重新部署代理或创建新代理?其他团队成员是否可以在其计算机上看到下拉列表?尝试更改作为生成代理服务帐户组成员且属于“代理池服务帐户”角色的域帐户,以查看其是否有效。感谢您的答复。尝试了所有这些,它不起作用。从不同的机器和不同的帐户尝试。下拉列表保持为空。请注意,管理计算机组(相同的浏览器和帐户)没有问题,仅当您返回到创建builddefinition时,下拉列表为空(刷新后也是如此),我遇到了相同的问题。它在更新2之前工作,但是,在安装更新2之后,我们得到了完全相同的问题:{“$id”:“1”,“innerException”:null,“消息”:“远程服务器返回了一个错误:(401)未经授权。”,“typeName”:“Microsoft.TeamFoundation.DistributedTask.WebApi.ServiceEndpointQueryFailedException,Microsoft.TeamFoundation.DistributedTask.WebApi,版本=14.0.0.0,区域性=中性,PublicKeyToken=b03f5f7f11d50a3a”,“类型键”:“ServiceEndpointQueryFailedException”,“错误代码”:0,“事件ID”:3000
- <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
- <System>
  <Provider Name="Microsoft-Team Foundation Server" Guid="{80761876-6844-47D5-8106-F8ED2AA8687B}" /> 
  <EventID>0</EventID> 
  <Version>3</Version> 
  <Level>2</Level> 
  <Task>1</Task> 
  <Opcode>10</Opcode> 
  <Keywords>0x8000000000000001</Keywords> 
  <TimeCreated SystemTime="2016-04-12T09:09:21.717163200Z" /> 
  <EventRecordID>59667</EventRecordID> 
  <Correlation ActivityID="{6AD40FD3-10BA-4A7E-B6D9-F6926072DAB4}" /> 
  <Execution ProcessID="3376" ThreadID="6484" /> 
  <Channel>Microsoft-Team Foundation Server/Debug</Channel> 
  <Computer>KTBSV021.KTB.local</Computer> 
  <Security UserID="S-1-5-21-2105344776-4230907741-261866850-3716" /> 
  </System>
- <UserData>
- <Info TraceId="{00000001-0001-0001-0000-000000000000}" xmlns="http://schemas.microsoft.com/TeamFoundation/2010/Framework">
  <Tracepoint>103200</Tracepoint> 
  <ServiceHost>{87670F79-6386-4363-9960-73B634419263}</ServiceHost> 
  <ContextId>10082</ContextId> 
  <ProcessName>w3wp</ProcessName> 
  <Username>KTB\tmpadmin</Username> 
  <VSID>{9E83242F-9944-4CBD-AF10-EF2D449A03B1}</VSID> 
  <Service>Web-Api</Service> 
  <Method>TaskDefinitionWebApiProxy.QueryEndpoint</Method> 
  <Area>DistributedTask</Area> 
  <Layer>TaskDefinitionWebApiProxy</Layer> 
  <UserAgent>Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko</UserAgent> 
  <Uri>/tfs/Default/_apis/distributedtask/endpoint</Uri> 
  <Path /> 
  <UniqueIdentifier>{A9646429-41CB-4137-A39A-D4E29EDDC389}</UniqueIdentifier> 
  <UserDefined /> 
  <ExceptionType>Microsoft.TeamFoundation.DistributedTask.WebApi.ServiceEndpointQueryFailedException</ExceptionType> 
  <Message>Microsoft.TeamFoundation.DistributedTask.WebApi.ServiceEndpointQueryFailedException: The remote server returned an error: (401) Unauthorized. at Microsoft.TeamFoundation.DistributedTask.Server.WebApiProxy.HttpRequestProxy.ExecuteRequest(HttpRequestMessage requestMessage, IList`1 sourceDefinitions, DataSource dataSource) at Microsoft.TeamFoundation.DistributedTask.Server.Controllers.TaskDefinitionWebApiProxyController.QueryEndpoint(TaskDefinitionEndpoint endpoint) at lambda_method(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary`2 arguments, CancellationToken cancellationToken) --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ApiControllerActionInvoker.<InvokeActionAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Web.Http.Filters.ActionFilterAttribute.<CallOnActionExecutedAsync>d__5.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.ActionFilterAttribute.<ExecuteActionFilterAsyncCore>d__0.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ActionFilterResult.<ExecuteAsync>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Filters.AuthorizationFilterAttribute.<ExecuteAuthorizationFilterAsyncCore>d__2.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Web.Http.Controllers.ExceptionFilterResult.<ExecuteAsync>d__0.MoveNext()</Message> 
  </Info>
  </UserData>
  </Event>