在TFS持续集成(持续发布)中执行Telnet任务
Telnet是一种在因特网或局域网上使用虚拟终端连接,提供双向交互式文本通信设备的协议。
它是最早的互联网通讯协议之一。自1969年启用以来,已经经过了将近50年时间,在开放式的操作系统中拥有广泛的用户。
虽然由于其安全性的弊端,已经逐渐被淘汰,但是在许多AIX系统的服务器上,运维人员都习惯使用Telnet作为自己的主要工具,维护服务器系统。TFS系统作为应用软件生命周期管理(ALM)平台的产品,原生提供SSH工具连接Linux系统,可惜没有提供Telnet的工具,这里我介绍如何使用Ant中的Telnet工具,实现在持续集成和发布连接Telnet服务器。
一、必要软件
- Visual Studio Team Foundation Server 2017 +
- Ant 1.9 +
- Telnet task: https://ant.apache.org/manual/Tasks/telnet.html
将包含这个功能的依赖包(commons-net-3.6.jar)复制到Ant的lib文件夹中,例如我的路径是:D:\apache-ant-1.9.5-bin\apache-ant-1.9.5\lib
- Java 1.8 +
- Aix Telnet Server (or telnet server on other server)
二、编写包含Telnet任务的Ant脚本
下图是一个最简单的Ant脚本,其中只包含了一个Telnet任务,在服务器上创建一个文件夹
<project name="project" basedir="." default="telnet"> </target> |
注意:Telnet任务只提供两个工具“read“和”writer”,这个两个工具的功能如下:
- read:读取Telnet服务器返回的字符信息,以便执行后面write中的命令;如果没有读取到正确的字符,后面的命令就不会执行。例如Aix服务器上的Telnet服务器总是返回#,那么我在每条指令前面,就输入 <read>#</read>
- write:将标签中的字符作为指令的方式发送的Telnet服务器
三、在TFS持续集成/发布中增加Ant任务
(微软ALM MVP 张洪君 http://www.cnblogs.com/zhanghongjun )
在持续集成或者持续发布过程中,新增一个Ant任务,指定上面编写的Ant脚本,TFS系统就会自动连接Telnet服务器,执行你编写的命令,如下图:
(完)