38-Jenkins-Publish over SSH插件实现远程部署

Posted 爱学习de测试小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了38-Jenkins-Publish over SSH插件实现远程部署相关的知识,希望对你有一定的参考价值。

Publish over SSH插件实现远程部署


前言

  • 本篇来学习使用Publish over SSH插件实现远程部署

安装插件

  • Manage Jenkins --> Manage Plugins --> 可选插件中搜索 Publish over SSH

插件配置

  • Manage Jenkins --> Configure System --> Publish over SSH

Jenkins SSH Key

  • Passphrase:如果私钥设置了密码就是私钥的密码,私钥没设置密码可以不填;也可填写目标主机密码
  • Path to key:key文件(私钥)的路径
  • Key:私钥的内容。如果此处填入了值,则以此处的值为准,会忽略掉Path to key的配置

SSH Servers

  • name:名称(可自定义)
  • Hostname:服务器地址
  • Username:服务器登录用户名
  • Remote Directory:远程服务器目录(要发布的服务器)
  • 点击Test Configuration 测试远程服务器是否正常连接

使用插件

  • Source files:选择打包后的文件,这里为*txt,因为是在工作目录下面,如果是别的地方要写绝对路径
  • Remove prefix:移除目录(只能指定Source files中的目录),意思是将绝对路径的前缀都去掉,只移动后面的产物文件
  • Remote directory :选择发送到哪个目录,这个是相对于SSH Servers中设置Remote Directory目录的相对目录。(默认/root)
  • Exec command :一般远程部署后,要执行的命令shell命令
  • Pipelin
pipeline 
    agent any

    stages 
        stage('Hello') 
            steps 
                script
                sh 'env'
                sh 'echo Hello World > test.txt'
                sh 'ls -R'
                sh 'cat test.txt'
                
            
        
        stage('dep') 
            steps 
                script
                    // configName 需要替换成要发布的机器ip
                    sshPublisher(publishers: [sshPublisherDesc(configName: '远程机器ip', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: 'cd /root/test;echo Jenkins >> test.txt', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '/root/test', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '*.txt')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
                
            
        
    

  • 查看发布结果

以上是关于38-Jenkins-Publish over SSH插件实现远程部署的主要内容,如果未能解决你的问题,请参考以下文章

Rocky Linux Yum源替换位上海交大镜像站点

yum源的配置

网络yum 安装 httpd 出现的问题Could not reliably determine the server's fully qualified domain name

在CentOS 7上使用Yum源安装 Zabbix 3.2

sed常用方法

yum的详解