Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令

jenkins,pipeline,流水线,上传,文件,publish,over,ssh,执行命令 · 浏览次数 : 3011

小编点评

**生成 sshPublisher 代码时选择:Verbose output in console** 生成 sshPublisher 代码时需要选择 **Verbose output in console**选项。这会打印远程服务上的日志pipeline,包括上传文件的详细过程。 **其他选项的含义:** * `usePromotionTimestamp`: 是否使用构建时间作为文件名的一部分。 * `useWorkspaceInPromotion`: 是否将构建结果存储在工作空间中。 * `verbose`: 是否打印详细的命令输出。 * `skipSecurityCheck`: 是否忽略安全检查。

正文

Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令

Jenkins插件安装

  • Publish over SSH

系统配置

image
image
image

生成代码

sshPublisher: Send build artifacts over SSH
需要在 生成 sshPublisher 代码时选择:Verbose output in console,否则不会打印远程服务上的日志
image
image
image

pipeline {
    agent any
 
    stages {  
        stage('上传文件') { 
            steps {
			    //先上传文件,后执行命令,命令和源文件,两者必须有一个有值
                sshPublisher(publishers: [sshPublisherDesc(configName: 'DockerPublishSSH', transfers: [sshTransfer(cleanRemote: false, excludes: '', execCommand: 'docker --version', execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: 'PipelineDemo', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '**/demojenkins*.jar')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
                echo 'Credentials SUCCESS'
            }
        } 
    }
}

image
image

打印远程日志

Publish Over SSH 插件打印远程ssh的日志,需要在 生成 sshPublisher 代码时选择:Verbose output in console
image
image

如果出现 SSH: Transferred 0 file(s)
看本地的文件路径是否正确 widnows 下注意用 \ 如果用 / 可能导致文件上传时找不到文件

与Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令相似的内容:

Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令

Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令 Jenkins插件安装 Publish over SSH 系统配置 生成代码 sshPublisher: Send build artifacts over SSH 需要在 生成 sshPublish

Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓库

Jenkins Pipeline 流水线 Publish over SSH 将jar上传到远程 Docker 服务器、执行编译命令生成镜像、将镜像上传到阿里仓库 Publish over SSH Jar包上传、编译、上传 生成上传 jar 包脚本配置 生成上传 Dockerfile 脚本配置 注意在

Jenkins Pipeline 流水线 - 声明式 Demo

Jenkins Pipeline 流水线 流水线既能作为任务的本身,也能作为 Jenkinsfile 使用流水线可以让我们的任务从UI手动操作,转换为代码化,像dockerfile 一样。从shell 命令到配置文件,更适合大型项目,可以让团队其他开发者同时参与进来, 完整语法 tools:添加工具

Jenkins Pipeline 流水线 - 拉代码(SVN) + Maven 编译打包

Jenkins Pipeline 流水线 步骤 拉取SVN代码 -> Maven 构建 -> Docker 编译 -> 发布至阿里云仓库 -> K8S 更新 Jenkins插件安装 Localization: Chinese (Simplified) Subversion 【2.16.0】 --从S

Jenkins Pipeline 流水线 - 添加节点 使用代理

Jenkins 安装在 Windows 上 Docker 在Linux 上 流程 将 Docker 在 Jenkins 节点中维护 Pipeline 中指定某些阶段使用哪个节点 添加节点 Checking Java version in the PATH openjdk version "1.8.0

Jenkins Pipeline 流水线 - withCredentials 使用

添加凭证 Pipeline script pipeline { agent any stages { stage('withCredentials 使用凭证') { steps { withCredentials([usernamePassword(credentialsId: 'DockerSer

Jenkins Pipeline 流水线 - 使用代理节点,Remote SSH 对 K8S 进行升级

Jenkins Pipeline 流水线 - K8S kubectl 升级 使用代理节点 Remote SSH 远程执行命令进行升级 Remote SSH 方式 安装插件 SSH Pipeline Steps Pipeline SSH 脚本 credentialsId: 'K8SMaster' pi

Jenkins Pipeline 流水线 - Parameters 参数化构建

可以通过参数的方式,指定构建的版本 有两种方式 界面添加 Pipeline Script 脚本配置 (需要Build 一次,然后生效,不知道有没有其它办法) General 界面添加 Pipeline Script Declarative Directive Generator pipeline {

Jenkins Pipeline 流水线 - 完整构建 Pipeline Script 脚本

Docker Jenkins 安装配置 Windows 2016 安装 Jenkins 前置条件可参考 Jenkins Pipeline 流水线 - 拉代码(SVN) + Maven 编译打包 Jenkins Pipeline 流水线 - 添加节点 使用代理 Jenkins Pipeline 流水线

Jenkins 多分支流水线(SVN)

实际应用过程中,一般多分支流水线的方式用得比较多一些, master 对应 生成环境 develop 对应 测试环境, 将不同分支的代码构建到不同的环境中 添加 Jenkinsfile 文件 Jenkinsfile 内容见:Jenkins Pipeline 流水线 - 完整构建 Pipeline S