• 在Windows 7上安装Team Foundation Server(TFS)的代理服务器(Agent)


    自2009年微软发布Windows 7以来,经过8年的市场验证,Windows 7已经成为史上应用最为广泛的操作系统。但是面对技术变化的日新月异,2015年微软正式停止了对Windows 7的主流支持,并将于2020年正式结束对Windows 7的所有技术支持。这一运行了8年之久的操作系统,在微软发布Windows 8、Windows 10以后多年,仍然保留着强大的生命力,至今还是许多企业和政府部门内部计算机的主流操作系统。

    基于这种状况,许多应用程序的开发环境目前只支持Windows 7操作系统。作为目前广泛使用的ALM产品,TFS同样支持基于Windows 7的编译和发布技术。下面我来介绍如何在Windows 7计算机上安装和配置TFS的代理服务器,为研发团队完成持续集成提供必要的服务器环境。

    必要软件

    在今天的实验环境中,我使用了下面列表中必须的软件:

    - Windows 7 with Service Pack 1

    - Microsoft .Net Framework 4.0 (dotNetFx40_Full_x86_x64.exe)

    - Microsoft .Net Framework 4.5 (mu_.net_framework_4.5_r2_x86_x64_1076098.exe)

    - Microsoft .Net Framework 4.6.1 (NDP461-KB3102436-x86-x64-AllOS-ENU.exe)。在实际应用中,可能只需要安装Framework 4.6.1就可以,大家可以自己验证。

    - Windows Management Framework 3.0 (Microsoft Powershell 3 - Windows6.1-KB2506143-x64.exe),注意选择Windows6.1

    - Windows6.1-KB2533623-x64.msu

    - VSTS (TFS) Agent for Windows (vsts-agent-win7-x64-2.112.0.zip)

    安装PowerShell 3

    PowerShell 3是VSTS/TFS代理服务的必要条件。

    但是,原生的Windows 7自带PowerShell的版本是2009,也就是PowerShell 2.0,你可以使用$PSVersionTable查看Powershell的版本。

    image

    在Powershell 2.0的环境中配置TFS代理,你会碰到一堆的错误,最后提示需要Powershell 3.0以上版本,如下图:

    image

    安装Powershell 3.0,实际上也是安装补丁KB2506146。注意需要下载对应的安装包程序,例如64位系统不要下载32位的安装程序。

    如果系统提示”此更新不适用于你的计算机“,原因可能是你的计算机上没有安装.NET Framework 4,这是PS 3的必要条件。

    image

    安装.NET Framework 4.0,如下图:

    image

    .NET Framework 4.0安装成功,不需要重新启动操作系统

    image

    再次运行Powershell 3的安装包,系统提示正常,如下图:

    image

    image

    安装成功后,安装系统提示重新启动计算机,如下图:

    image

    重新启动计算机后,再次运行$PSVersionTable,你会看到PSVersion的值为3.0,如下图:

    image

    安装VSTS/TFS代理服务

    image

    image

    Failed to load hostfxr.dll,谷歌了一下,发现需要安装补丁KB2533623, https://www.microsoft.com/en-us/download/confirmation.aspx?id=26764 

    image

    image

    系统提示需要.Net Framework 4.5或者更高版本。实际上,如果你在Windows 7上安装Framework 4.6,会碰到其他错误,这里不在赘述。我们老老实实的安装.Net Framework 4.5吧。

    image

    .NET Framework安装完毕,再次执行配置程序,系统提示需要安装.NET Framwork 4.6,才可以同步TFVC代码库

    image

    本来打算配置好代理以后,再安装Framework 4.6,结果在配置过程中,输入服务账户的密码以后,系统提示应用程序无法启动,需要Framework 4.5.2。

    image

    手头没有.NET Framework 4.5.2。好吧,那我安装.NET Framework 4.6.1

    image

    安装完成Framework 4.6.1以后,重新来配置TFS代理。由于之前已经配置了TFS的服务程序,需要使用config.exe remove命令删除之前的配置信息,再重新启动配置程序

    image

    重新配置以后,终于看到了代理服务程序成功启动的提示

    image

    在TFS服务的代理池中,也可以看到刚刚新增的代理服务器

    image

    新建一个生成定义,在流程中通过命令行显示操作系统名字和版本,并且指定WIN7这台代理执行编译流程,执行结果如下图,显示代理服务器运行正常。

    image

    总结

    上面走了好多了弯路,后来又在一台全新的Windows 7 with SP1上验证了整过过程,发现可以简单归纳为下面的几个步骤:

    - 安装.NET Framework 4.6.1 (NDP461-KB3102436-x86-x64-AllOS-ENU.exe)

    - 安装Powershell 3 (Windows6.1-KB2506143-x64.msu)

    - 重新启动计算机

    - 安装补丁:Windows6.1-KB2533623-x64.msu,修复问题Failed to load hostfxr.dll。

    - 安装VSTS/TFS代理程序

    (微软ALM MVP 张洪君 http://www.cnblogs.com/danzhang

  • 相关阅读:
    C#基于接口的编程
    在window组件服务中建立WCF宿主
    给WWF传递参数
    创建singleton模式的工作流引擎
    WCF消息交换模式之Duplex
    SqlServer中查询出多条记录变成一个记录(行变列)
    WCF三种消息交互模式MEP
    Asp.net实现在线截图!
    WWF之跟踪服务WorkFlowTrack
    hdu 2604 Queuing (Matrix)
  • 原文地址:https://www.cnblogs.com/danzhang/p/6882478.html
Copyright © 2020-2023  润新知