zoukankan      html  css  js  c++  java
  • 在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-binapache-ant-1.9.5lib

    - Java 1.8 +

    - Aix Telnet Server (or telnet server on other server)

    二、编写包含Telnet任务的Ant脚本

    下图是一个最简单的Ant脚本,其中只包含了一个Telnet任务,在服务器上创建一个文件夹

    <project name="project" basedir="." default="telnet">
       <target name="telnet">
         <telnet userid="admin" password="P2ssw0rd" server="192.168.20.7">
           <read>/home/bob</read>
           <write>dir</write>
           <read string="/home/bob"/>
           <write>mkdir FolderCreatedByTelnetTask</write>
         </telnet>

      </target>
      </project>

    注意:Telnet任务只提供两个工具“read“和”writer”,这个两个工具的功能如下:

    - read:读取Telnet服务器返回的字符信息,以便执行后面write中的命令;如果没有读取到正确的字符,后面的命令就不会执行。例如Aix服务器上的Telnet服务器总是返回#,那么我在每条指令前面,就输入 <read>#</read>

    - write:将标签中的字符作为指令的方式发送的Telnet服务器

    三、在TFS持续集成/发布中增加Ant任务

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

    在持续集成或者持续发布过程中,新增一个Ant任务,指定上面编写的Ant脚本,TFS系统就会自动连接Telnet服务器,执行你编写的命令,如下图:

    image

    (完)

  • 相关阅读:
    【ci框架】PHP常见面试题汇总。。。
    fieldset的collapse和expand事件
    CI 学习
    Ext JS 4预览:重构和规范渲染过程()
    LAMP环境搭建过程
    Extjs中FieldSet的收缩和展开实例
    EXTJS组件化(三)----组件之间的暧昧关系
    EXTJS组件化(四)---减少你的代码
    EXTJS组件化(二)----简易的私有和公有
    EXTJS组件化(一)----建立你的思想
  • 原文地址:https://www.cnblogs.com/danzhang/p/6954055.html
Copyright © 2011-2022 走看看