1. 概述

从TFS 2015开始,微软开始支持跨平台的构建代理。你可以使用TFS的Xplat代理,方便的在基于IOS, Unix和Linux的服务器上搭建生成代理,实现构建、发布等功能。本文档已Ubuntu为例,指导如何安装和运行Xplat代理。

2. 配置TFS的基本登陆模式(Basic)

Figure 1

Figure 2

3. 安装default JDK

Table 1 – on Ubuntu

Sudo apt-get update

Sudo agt-get install default-jdk

4. 配置JAVA_HOME

Table 2 – on Ubuntu

//获取java安装路径

sudo update-alternatives --config java

//系统返回的字符中的“ /usr/lib/jvm/java-7-openjdk-amd64”就是java的安装目录

//打开环境变量文件

sudo nano /etc/environment

//在PATH下面添加一行

JAVA_HOME= /usr/lib/jvm/java-7-openjdk-amd64”

//按键Ctrl+X保存退出

//重现加载环境变量

source /etc/environment

//查询环境变量是否已经生效

echo $JAVA_HOME

5. 安装和配置Xplat代理

在TFS服务器中配置生成账户(tfsbuild)的权限

Figure 3

Figure 4

将生成账户添加到团队项目集合的生成账户成员中:

Figure 5

sudo curl -skSL http://aka.ms/xplatagent | bash

Figure 6 – 注意使用生成账户tfsbuild

Figure 7

6. 配置生成(验证)

创建一个简单的bash文件(HelloWorld.sh),并上传到源代码库中,文件的内容为:

Echo $PATH

新建一个生成定义,并添加Shell Script任务,如下图:

Figure 8 – 路径填写文件与代码根目录的相对路径

运行一个新的生成,可以看到系统返回代理服务器的环境变量PATH的内容,如下图:

Figure 9

7. 常见问题

安装xplat agent失败

Figure 10

解决方案:

//安装unzip软件包

sudo apt-get install unzip

TF was not found

参考上面的方法,将tf所在的目录” /home/danzhang/myagent/TEE-CLC-14.0.2”添加到系统环境变量PATH后面,注意使用冒号”:”隔开。

在运行下面的命令同意TEE的使用协议:

tf eula

如何以服务的方式运行代理服务器?

在测试环境中可以使用交互的方式运行生成代理服务器,但是在生产环境中,应该以服务的方式运行代码服务器。

可惜目前对于Linux操作系统暂无解决方案。

如何在Putty中使用证书登录Linux服务器

使用PuttyGen.exe生成证书

如果通过安装程序安装了Putty,PuttyGen.exe已经安装在系统中。

Figure 11 – 点击Generate,晃动鼠标,直至进度条停止

点击”Save private Key”保存私钥。

将公钥上传到Linux的个人账户目录中

使用Putty的用户密码模式连接Linux

cd .ssh

cat >> ~/.ssh/authorized_keys

//将公钥粘贴到这里,然后按键”Ctrl + D”,保存公钥

注意:如果丢失了公钥,可以在PuttyGen.exe中使用Load的按钮,从私钥中获取公钥

在Putty中配置私钥

打开putty,在 Connection -> SSH -> Auth 的Private key file for authentication 选项处选择刚刚保存的私钥文件。

Figure 12

在 Connection -> Data -> Auto-login username 处填入登录的需要的用户名之后再次登录就可以使用证书登录全自动登录了。

Figure 13

 

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

为TFS配置跨平台的生成服务器Xplat (Ubuntu Linux)的更多相关文章

  1. 配置域主DNS服务器

    一.DNS服务器的类型 ①Primary DNS Server(Master) 一个域的主服务器保存着该域的zone配置文件,该域所有的配置.更改都是在该服务器上进行,本篇随笔要讲解的也是如何配置一个 ...

  2. 阿里云服务器 ECS Ubuntu系统安装配置

    1. 登陆服务器 系统开通成功后手机会收到阿里云发来的短信,包含公网IP及root登录密码. WEB管理后台方式 可通过阿里云管理后台选择“连接管理终端…”进行登录 提示输入VNC密码 登录成功后显示 ...

  3. 配置SQL Server 2008服务器

    怎么配置SQL Server 2008服务器_百度经验 http://jingyan.baidu.com/article/9faa7231a922c1473c28cb23.html 1.验证安装是否成 ...

  4. SVN的基本原理 配置自动更新WEB服务器

    SVN的基本原理 配置自动更新WEB服务器 最近有个小项目,需要用SVN来进行版本控制.项目组的同僚有8个人,大家都在本地开发,然后提交到服务器——服务器就是其中一台机器.专门安排一个测试员来进行项目 ...

  5. .Net Core 跨平台开发实战-服务器缓存:本地缓存、分布式缓存、自定义缓存

    .Net Core 跨平台开发实战-服务器缓存:本地缓存.分布式缓存.自定义缓存 1.概述 系统性能优化的第一步就是使用缓存!什么是缓存?缓存是一种效果,就是把数据结果存在某个介质中,下次直接重用.根 ...

  6. Visual Studio中没有为此解决方案配置选中要生成的项目

    问题: Visual Studio点击"生成解决方案"时,出现"没有为此解决方案配置选中要生成的项目". 解决方法: 菜单->生成->配置管理器-& ...

  7. 一个简单的零配置命令行HTTP服务器

    http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) ...

  8. Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  9. 一个简单的零配置命令行HTTP服务器 - http-server (nodeJs)

    http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) ...

随机推荐

  1. Ext.GridPanel 用法总结(一)—— Grid基本用法

    Ext.GridPanel 用法总结(一)—— Grid基本用法 摘自:http://www.cnblogs.com/luluping/archive/2009/08/01/1536645.html ...

  2. 那晚征服的一道js经典的面试题

    今天朋友共享了一道js中经典的面试题,需求是这样的 给定你任意一个字符串,让你写出一个算法,求算出该字符串中出现次数最多的一个字符,并将其结果输出 刚拿到这道题的第一感觉便是定义一个count计时器, ...

  3. 遇上了artTemplate做的东西

    js现在最牛的地方是 有了Node.js后,前后端的界限几乎都消失了,围绕着它,出现了一整套生态体系. 在生态方面,比php好太多了.

  4. Ubuntu14.04安装ROOT集群

    之前尝试在CentOS7上部署ROOT集群,却发现无论是源码包安装,还是官方提供的二进制包,都缺少了关键的xproofd可执行文件,导致PoD不能运行.没有办法,只能尝试在其他OS上部署,这里我选择了 ...

  5. SystemClock.sleep和Thread.sleep的区别(转)

    在Java中我们处理线程同步问题时,处理延迟可能会使用Thread类的sleep方法,这里抛开concurrent类的一些方法,其实 Android平台还提供了一个SystemClock.sleep方 ...

  6. web api post注意事项

    黄色笑话 近期一个项目需要使用到web api 在使用过程中,对应get请求方式的使用基本没出什么问题 但是对于post请求状况百出. 今将遇到的的问题列出.以作借鉴. 问题  -----post方式 ...

  7. VS2010在空解决方案中添加项目

    如题,在空解决方案中添加第一个项目的时候会看不到那个solution解决方案文件,而是你当前添加的项目,当你再添加其他项目的时候就悲催了,找不到这个solution,只能在这个项目文件上新加文件,很郁 ...

  8. VS2012/2013/2015关闭单击文件进行预览的功能

    Visual Studio在2010版本后推出了点击项目管理器预览文件的功能,但是对于配置不咋地的旧电脑总是觉得有点卡,下面是解决方案. 英文版方法:Tools->Options->Env ...

  9. 使用div创建选取框

    使用div实现了选取框效果. 代码如下 <!DOCTYPE html> <html> <head> <title>myCanvasTest</ti ...

  10. SharePoint 禁用本地回环的两个方法

    有两种方法中,若要变通解决此问题,请根据您的具体情况使用下列方法之一. 方法 1: 指定主机名 (如果需要 NTLM 身份验证,请首选方法) 指定的主机名的映射到环回地址,并可以连接到 Web 站点在 ...