为TFS配置跨平台的生成服务器Xplat (Ubuntu Linux)

1. 概述

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

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

clip_image002

Figure 1

clip_image004

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)的权限

clip_image006

Figure 3

clip_image008

Figure 4

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

clip_image010

Figure 5

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

clip_image012

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

clip_image014

Figure 7

6. 配置生成(验证)

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

Echo $PATH

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

clip_image016

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

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

clip_image018

Figure 9

7. 常见问题

安装xplat agent失败

clip_image019

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已经安装在系统中。

clip_image020

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 选项处选择刚刚保存的私钥文件。

clip_image021

Figure 12

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

clip_image022

Figure 13

 

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

原文地址:https://www.cnblogs.com/danzhang/p/5274284.html