zoukankan      html  css  js  c++  java
  • Jenkins构建完成后实现自动将war包部署到指定服务器

    首先我们需要确定我们的jenkins安装了:publish over ssh 插件,如果没有安装,到-->jenkins首页-->系统管理-->插件管理-->可选安装里面去搜 publish over ssh  -->然后获取即可

    1、首先我们需要将jenkins服务器的公钥放到需要部署的服务器上,实现可以免密登陆,

    2、到系统管理 --> 系统设置 --> 向下拉找到  publish over ssh 然后去配置

     配置选项说明:

    1、公共配置:

    Passphrase:密码(key的密码,如果你设置了)上面的配置里没有设置密码,jenkins自己生成的

    Path to key:key文件(私钥:id_rsa or id_dsa)的路径

    Key:将私钥复制到这个框中(上面的配置没有做这个操作)

    Disable exec:禁止运行命令

    2、私有配置:

    SSH Server Name:标识的名字(随便你取什么)

    Hostname:需要连接ssh的主机名或ip地址(建议ip)

    Username:用户名(连接远程主机的用户名)

    Remote Directory:远程目录

    Use password authentication, or use a different key:可以替换公共配置(选中展开的就是公共配置的东西,这样做扩展性很好)

    3、私有配置的高级:

    Port:端口(默认22)

    Timeout (ms):超时时间(毫秒)默认即可

    Disable exec:禁止运行命令

    Test Configuration:测试连接 

    项目配置

    到需要配置的项目里-->下拉到构建环境-->勾选Send files or execute commands over SSH after the build runs

    SSH  Server Name:选个一个你在系统设置里配置的配置的名字

    Transfer Set Source files:需要上传的文件(注意:相对于工作区的路径。看后面的配置可以填写多个,默认用,分隔)

    Remove prefix:移除目录(即你要操作的文件为:/data/code/**.war,但是到远程主机目录下你不想要/data/code/既可以在这里配置移除掉/data/code)

    Remote directory:远程目录(根据你的需求填写吧,因为我这儿是测试,所以偷懒没有填写。默认会继承系统配置)

    Exec command:把你要执行的命令写在里面

    (新版本的要求Transfer Set Source files和Exec command都要填写,可以不了他。老版本的允许只填写一个)

    高级:

    Exclude files:排除的文件(在你传输目录的时候很有用,使用通配符,例如:**/*.log,**/*.tmp,.git/)

    Pattern separator:分隔符(配置Transfer Set Source files的分隔符。如果你这儿更改了,上面的内容也需要更改)

    No default excludes:禁止默认的排除规则(具体的自己看帮助)

    Make empty dirs:此选项会更改插件的默认行为。默认行为是匹配该文件是否存在,如果存在则创建目录存放。选中此选项会直接创建一个目录存放文件,即使是空目录。(个人理解)

    Flatten files:只上传文件,不创建目录(除了远程目录)

    Remote directory is a date format:远程目录建立带日期的文件夹(需要在Remote directory中配置日期格式),具体格式参考下表:

    Remote directoryDirectories created
    'qa-approved/'yyyyMMddHHmmss qa-approved/20101107154555
    'builds/'yyyy/MM/dd/'build-${BUILD_NUMBER}' builds/2010/11/07/build-456 (if the build was number 456)
    yyyy_MM/'build'-EEE-d-HHmmss 2010_11/build-Sun-7-154555
    yyyy-MM-dd_HH-mm-ss 2010-11-07_15-45-55

    Exec timeout (ms):运行脚步的超时时间(毫秒)

    Exec in pty:模拟一个终端执行脚步

    Add Transfer Set:增加一个配置

  • 相关阅读:
    设计模式——策略模式
    设计模式——设计原则
    设计模式——工厂模式
    设计模式——装饰模式
    C#一些常用方法
    设计模式——代理模式
    设计模式——模板模式
    开始博客园之前的一些相对自己说的话
    Python02 分支结构
    dns轮训python 04
  • 原文地址:https://www.cnblogs.com/hei-ma/p/9356008.html
Copyright © 2011-2022 走看看