【Jenkins】构建本地/svn/流水线任务

一、构建本地任务

1、创建本地任务

在这里插入图片描述
在这里插入图片描述

2、添加构建

构建中可以执行不同平台下的指令,此处以windows下执行bat脚本为例。
在这里插入图片描述
在这里插入图片描述
构建时需要注意工作目录,此示例中HelloWorld.cpp直接放在工作目录下,所以可以直接调用,否则需要指定路径。
在这里插入图片描述
修改工作目录、设置定时构建、日志保留等其他构建时可设定的内容,设定方式参考Jenkins中一些常规设定

3、开始构建

在这里插入图片描述

4、查看构建结果

在这里插入图片描述

二、构建svn任务

仅列出与构建本地任务存在差分的部分。

1、安装插件

subversion.hpi

插件安装方式参考Jenkins的四种插件安装方式

2、创建项目

在这里插入图片描述

3、选择从SVN下载代码并输入URL

svn检出时可以指定版本,默认检出最新版本
svn路径@head:强制检出最新版本
svn路径@版本号:检出指定版本
在这里插入图片描述

4、添加证书(svn检出使用的账号密码)

在这里插入图片描述

在这里插入图片描述

5、多段检出

如果一个项目中不知要检出一个路径的svn信息,则可以添加新的svn检出模块。
在这里插入图片描述

三、构建流水线任务

仅列出与构建本地任务存在差分的部分。

1、安装插件

流水线相关插件过多,建议在线安装,在线安装直接搜索pipeline进行安装即可,离线安装建议在能在线的电脑上安装jenkins在线下载完之后直接复制jpi到离线电脑上。
插件安装方式参考Jenkins的四种插件安装方式

2、创建流水线任务

在这里插入图片描述

3、选择脚本导入方式

可以选择直接在构建中写pipeline脚本,也可以从svn中导出pipeline脚本。
在这里插入图片描述

4、在线脚本

选择Pipeline script后会提供了一些示例脚本(途中红框中进行选择)。
在这里插入图片描述

5、svn中检出脚本

svn路径和证书的设定方式同构建svn任务。
在这里插入图片描述

6、可以利用片段生成器中生成pipeline中需要的代码

在这里插入图片描述
可以选择运行平台中使用的语言,例:windows下使用bat,则选择bat Windows Batch Script。
在这里插入图片描述
在这里插入图片描述
注意:片段生成器生成的代码主要是将指令调整为流水线的格式,不对Batch Script中的内容进行判断。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是Jenkins流水线配置SVN拉包的步骤: 1. 在Jenkins中安装Subversion插件,以便Jenkins能够与SVN进行交互。 2. 在Jenkins中创建一个新的流水线项目。 3. 在流水线项目的配置页面中,选择“Pipeline script”作为流水线的定义方式。 4. 在Pipeline脚本中,使用SVN插件提供的checkout命令从SVN仓库中拉取代码。例如: ```groovy checkout([$class: 'SubversionSCM', additionalCredentials: [], excludedCommitMessages: '', excludedRegions: '', excludedRevprop: '', excludedUsers: '', filterChangelog: false, ignoreDirPropChanges: false, includedRegions: '', locations: [[credentialsId: 'svn-credentials', depthOption: 'infinity', ignoreExternalsOption: true, local: '.', remote: 'http://svn.example.com/repo/trunk']], workspaceUpdater: [$class: 'UpdateUpdater']]) ``` 其中,`svn-credentials`是在Jenkins中配置的SVN凭据ID,`http://svn.example.com/repo/trunk`是SVN仓库的URL。 5. 接下来,您可以在Pipeline脚本中执行其他操作,例如编译代码、运行测试、构建部署包等。 6. 最后,您可以使用SSH插件将构建好的部署包上传到远程Linux服务器。例如: ```groovy sshPublisher(publishers: [sshPublisherDesc(configName: 'my-ssh-server', transfers: [sshTransfer(execCommand: "sudo /bin/bash /path/to/deploy.sh", execTimeout: 120000, flatten: false, remoteDirectory: '.', sourceFiles: '/path/to/deploy-package.tgz')])]) ``` 其中,`my-ssh-server`是在Jenkins中配置的SSH服务器ID,`/path/to/deploy.sh`是远程Linux服务器上的部署脚本,`/path/to/deploy-package.tgz`是要上传的部署包。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值