pipeline 传输文件

说明:

  • Jenkins 主机能通过 ssh 访问部署主机;
  • Jenkins 需要安装 publish over ssh, 版本不同可能名称大同小异;

Jenkins 配置

系统管理 -> 系统配置 -> 找到 publish over ssh 配置
在这里插入图片描述

  • Name: 主机名称作为标识
  • Hostname: 主机 IP 地址
  • Username: 登录用户
  • 选择高级: 勾选使用密码认证, 端口等信息, 根据需求
  • Use password authentication, or use a different key
  • 点击测试连接, 看到 success 字样就表示成功连接, 失败需排查网络, 端口, 用户密码等。

使用 pipeline 传输文件

  1. 目录结构: ? 表示待传入文件路径
# jenkins_host
jenkins@jenkins:~ tree client/nginx-conf

client/nginx-conf
└── nginx.conf


# deployment_host 
deployment@deployment:~ tree nginx

nginx
├── history
│   ├── confmap
│   └── client.yaml
└── ?   
  1. 理清目录结构:
主机配置文件路径
jenkins_hostclient/nginx-conf/nginx.conf
deployment_hostnginx/nginx.conf

说明: jenkins 主机需将配置文件上传到部署主机上该目录

  1. pipeline 代码
... 
steps {
  sshPublisher(
    publishers: [
      sshPublisherDesc(
        configName: 'deployment', 
        transfers: [
          sshTransfer(
            cleanRemote: false, 
            excludes: '', 
            execCommand: """
                set -x  
                echo "代码逻辑块..."
            """, 
            execTimeout: 0, 
            flatten: false, 
            makeEmptyDirs: false, 
            noDefaultExcludes: false, 
            patternSeparator: '[, ]+', 
            remoteDirectory: "/k8s_update_yaml/nginx",
            remoteDirectorySDF: false,
            removePrefix: "client/nginx-conf", 
            sourceFiles: "client/nginx-conf/nginx.conf"
          )
        ],
        usePromotionTimestamp: false, 
        useWorkspaceInPromotion: false, 
        verbose: true
      )
    ]
  )
}
...

重点一: source files 要基于任务的目录进行。不支持绝对路径。如果配置不对,则找不到文件。

重点二: Remote directory 要基于你远程服务器的目录配置。你远程服务器配置的基准是/home/ubuntu/nginx 。则最终的文件目录是 /home/ubuntu/nginx + Remote directory的配置参数。不支持绝对路径。

参数说明:

属性作用
configNameJenkins 配置远程对应的主机信息
execCommand代码逻辑块
execTimeout执行超时时间,0表示无限
remoteDirectory目标文件夹, 如果存在,此文件夹将位于全局配置中的该文件夹之下, 如果不存在,将创建该文件夹
removePrefix删除前缀, 不应在远程服务器上创建的文件路径的第一部分
sourceFiles源文件地址, 只能相对路径
verbose回显执行输出

注意 remoteDirectory: 填写目标目录时要是用 /xxx开头
在这里插入图片描述

否则将会疯狂创建文件夹, 和预期不一样
在这里插入图片描述

如有理解有误还望指正: Julian_cn@126.com

小伙计: 2021-01-19 21:39 上海

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值