![](https://img-blog.csdnimg.cn/20200109164537494.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Jenkins
文章平均质量分 70
All of Jenkins.
gis2all
这个作者很懒,什么都没留下…
展开
-
Jenkins Pipeline项目无法在windows子节点中执行cmd命令
最近遇到了一个非常特别的issue,测试的pipeline项目脚本如下执行输出的时候, 可以正常显示, 却总是不显示,但是也不报错于是, 我做了以下测试 (我的主节点为 windows, 子节点也为 windows)也就是说windows子节点无法在pipeline风格项目中直接执行cmd命令,尝试过的方法包括以下(但是都不起作用)那么最后的解决方法是什么呢? 就是在共享库中定义子节点执行cmd命令的一个方法 ,然后在pipeline项目中导入共享库,并且调用该方法不知道大家没有没遇到过这个问题原创 2022-08-08 16:15:36 · 1539 阅读 · 1 评论 -
Jenkins升级后服务无法启动, 插件不匹配问题
注意, 旧版本jenkins依赖 jdk 8, 新版本的jenkins依赖 jdk 11,如果没有更新Jenkins依赖的 jdk, 可能会导致部分插件不能正常工作, 将下载。结论 - Jenkins版本不对, 需要重新选择版本, 在。Jenkins升级至最新版本后从服务里启动失败。中java执行路径, 然后重启服务。下载列表尝试哪个版本的启动正常。...原创 2022-08-08 10:11:20 · 6639 阅读 · 1 评论 -
认证Jenkins工程师(CJE)考试资料分享,已过
目录一、报名二、复习三、结果一、报名平常工作中经常和Jenkins打交道,所以就想着考个相关的证书,我考的是 Certified Jenkins Engineer (CJE) ,报名的网站在这里 https://www.cloudbees.com/jenkins/certification, 需要一张 VISA信用卡,考试的方式分为线下实地考试和线上网络考试,线下费用 $150,线上费用$99,我选择的是线下,因为线下考试的含金量更高些报名的过程照着网站一步步提示就好了,最后邮箱会受到一封邮件,提示原创 2021-08-16 01:10:05 · 1414 阅读 · 1 评论 -
Jenkins + Groovy脚本 = 高效✔✔ (纯干货)
目录一、IntelliJ IDEA中配置Groovy二、Pipeline中使用Groovy脚本1. 使用默认jdk提供的方法2. 使用三方库中的方法三、使用Shared Libraries复用代码四、脚本安全性检查1. 不进行groovy沙箱检查2. 在共享库总声明具体类型五、Piepline中自定义函数参数传递六、最佳实践总结一、IntelliJ IDEA中配置Groovy我们写在Jenkinsfile中写脚本的模式是, 先在IDE中验证脚本, 然后复制代码至Jenkinsfile, 关于在Inte原创 2021-07-29 12:30:49 · 19731 阅读 · 2 评论 -
IntelliJ IDEA配置Groovy教程
写这篇文章的起因是因为经常性的需要更新Jenkins脚本,而Jenkins脚本是用Groovy写的, 所以不可避免的会用到Groovy,这里简单记录下自己调试Groovy脚本的过程一、IntelliJ IDEA设置社区版够用, 一路下载安装就可以了,原版界面太丑,这里利用插件美化下, 在 Setting -> Plugin -> Placemarket中安装以下插件分别实现替换文件图标、设置成中文和使用VS Code配色主题的功能另外再更改字体为Consolas 以及更换调试快捷键原创 2021-07-24 16:58:42 · 12147 阅读 · 1 评论 -
Jenkins集成Docker的三种方式(Docker Desktop),万字长文!
目录一、直接在脚本中通过shell调用 (Docker Shell)二、把Docker配置成一个云,作为一个单独的Jenkins代理节点使用 (Docker as Agent)1. 配置持久的Docker代理节点1.1. Jenkins和Docker配置1.1.1. Docker Desktop设置1.1.2. 配置Docker代理节点1.1.3. Docker镜像选择1.1.4. Docker容器启动方式1.2. Pipeline脚本使用1.3. 配置总结2. 配置临时的Docker代理节点原创 2021-07-13 18:37:33 · 5006 阅读 · 0 评论 -
Jenkins添加Ubuntu代理节点
目录一、原理二、Ubuntu设置三、Jenkins设置四、参考资料一、原理原理如下, Jenkins通过ip连接ubuntu,ubuntu使用SSH验证连接,另外Jenkins通过java在Ubuntu上相应操作控制该代理节点,所以关键点在于SSH在Jenkins和Ubuntu上的配置Ubuntu配置Java面就看看在Jenkins和Ubuntu上具体需要设置的内容二、Ubuntu设置Ubuntu设置包括两个方面的内容SSH连接访问Java安装SSH访问设置参考我的这篇文章,原创 2021-07-12 16:46:08 · 993 阅读 · 3 评论 -
Jenkins书籍推荐
关于书籍推荐,我一向不建议阅读国人的书籍,有可能是因为应试教育的原因,在原理理解和阅读性方面往往没有国外专家写的透彻,当然不排除一些例外个人总结的Jenkins技术路线。Jenkins 1.x 和Jenkins 2.x存在较大差异,建议先熟悉Jenkins 1.x 然后过渡到Jenkins 2.x1. Jenkins权威指南作者:Jobn Ferguson SmartJenkins入门书籍,看完这本书就会对Jenkins整体有概的认识,体会到持续集成的好处2. Jenkins2.x实践指南原创 2021-01-18 11:06:36 · 2723 阅读 · 2 评论 -
【Jenkins】查看所有全局变量
全局变量分为两种,一种是系统全局变量, 一种是Jenkins全局变量系统全局变量,也就是我们电脑上定义变量和Jenkins Java内置的一些变量, 在Pipeline脚本中查看stage('Show Environment Variable'){ steps{ script{ // 将所有系统变量打印出来, 区分Unix系统和Windows系统 if(isUnix()){原创 2020-12-04 11:53:15 · 3296 阅读 · 0 评论 -
【Jenkins】 手把手教你如何集成Jenkins和Github
一、理解webhook工作原理Webhook是什么,这里引用Github官方的描述WebhooksEventsPing EventWebhooks允许您构建或设置集成,例如GitHub Apps或OAuth Apps,这些集成订阅了GitHub.com上的某些事件。当这些事件之一被触发时,我们将向Webhook的配置URL发送HTTP POST有效负载。 Webhooks可用于更新外部问题跟踪器,触发CI构建,更新备份镜像,甚至部署到您的生产服务器。您仅受您的想象力限制。Webhooks可原创 2020-12-03 11:48:52 · 2274 阅读 · 1 评论 -
【Jenkins】备份配置与项目
在一次更换密码的过程中,意外的丢失了大多数Jenkins项目,导致一个个配置很麻烦,虽然已经使用的SCM Pipeline的方式简化了配置模式, 但手动的配置还是让我花费1个小时才完成所有项目的恢复,所以备份真的很重要这里的的备份内容主要有Jenkins自身 - 包括Manager Jenkins里面的内容项目 - 项目的配置,输出的结果等这里推荐使用插件 ThinBackup安装后在 Manage Jenkins -> ThinBackup找到它首先配置ThinBackup, 最重原创 2020-11-13 13:56:56 · 1262 阅读 · 0 评论 -
【Jenkins】增加Windows子节点
目录一、主节点配置1 . 设置节点TCP2. 增加Windows子节点二、子节点配置1. 环境设置2. 连接主节点在Jenkins上增加Linux系统(Mac,Ubantu)的子节点比较容易,可以参考我的这篇文章【增加Mac子节点】,而增加Windows子节点就有些麻烦,不过尝试很多次之后总算成功了,这里写下配置的过程????一、主节点配置我们使用的连接方式是 Launch agent by connecting it to the master,那么为什么使用这种方式呢?这是因为Windows系原创 2020-09-16 16:17:30 · 1615 阅读 · 0 评论 -
【Jenkins】Pipeline集成Groovy脚本
目录一、Groovy脚本的创建1. 设置SDK2. Groovy项目二、Jenkins集成1. Pipeline设置2. 使用Jenkins环境变量一、Groovy脚本的创建1. 设置SDK为方便编辑和调试脚本, IDE建议选择 IntelliJ IDEA, 社区版够用。安装完IDE后,还需安装groovy sdk, http://groovy-lang.org/download.html下载后解压,然后放置特定目录,并将此目录加入系统的Path变量中2. Groovy项目在Intelli原创 2020-09-11 11:59:54 · 6444 阅读 · 2 评论 -
【Jenkins】增加Mac子节点
由于平台的限制, iOS应用只能在Mac电脑上编译. 为方便维护, Windows上的Jenkins为主节点, Mac上的Jenkins为子节点, 统一在主节点上管理, 示意图如下所以关键点在于ssh密钥的设置与分配一、ssh设置1. 公私钥ssh我们需要在主节点的机器上(Windows)上创建ssh密钥 , 如果你已经安装Git, 启动Windows PowerShell,使用以下命令创建ssh密钥ssh-keygen然后剩下选项均按Enter跳过最后在.ssh隐藏文件夹中生成私钥和公原创 2020-09-09 17:16:35 · 1058 阅读 · 0 评论 -
【Jenkins】使用VS Code插件校验Jenkinsfile格式
目录一、插件安装与配置二、检验效果在编写Jenkinsfile时候,经常由于代码格式不正确而导致项目编译失败,而Jenkins并没有提供很好的解决方法,大部分的时候只能现在一个临时项目里检查代码是否错误,然后再提交Jenkinsfile到脚本仓库,中间的过程过于繁琐????,实在不优雅????。不过好在VS Code有插件提供Jenkinsfile文件的校验一、插件安装与配置安装插件 Jenkins Pipeline Linter Connecter转到文件 —> 首选项 —> 扩展原创 2020-06-21 12:31:39 · 3313 阅读 · 2 评论 -
【Jenkins】在Stage块修改环境变量的值
在默认的情况下,一旦设置了新的环境变量,那么这个环境变量在整个Pipeline生命周期里都不会改变,但是有时我们需要在Stage阶段临时修改变量值,传递给其他命令使用,那么如何实现呢?So easy!使用withEnv命令即可,它会让环境变量在withEnv语句块临时被修改,一旦不在withEnv语句块则还是原始值pipeline { agent any environment { Name = 'null' } stages {原创 2020-05-26 16:20:51 · 3580 阅读 · 0 评论 -
【Jenkins】在Pipeline和Ant中使用环境变量
环境变量包括 系统环境变量 和自定义环境变量系统环境变量就是Jenkins自带的变量,如 BUILD_NUMBER,BUILD_URL等,使用格式为${env.BUILD_NUMBER}{env.BUILD_NUMBER}${BUILD_NUMBER}推荐使用 ${env.BUILD_NUMBER}和{env.BUILD_NUMBER}这种格式,因为带前缀env能表明这是系统环境变量,可以和后面的自定义环境变量区分开。注意,如果是在Script块引用到,就只需env.BUILD_NUMBER这原创 2020-05-09 13:57:05 · 1720 阅读 · 0 评论 -
【Jenkins】Pipeline遇到的问题和解决方法
目录一、从指定阶段重新构建二、实时修改脚本并运行一、从指定阶段重新构建一个项目完整Build时间过长,如果想从某个阶段运行脚本,该如何实现解决方案选择 Build Number ,从指定阶段重新运行,并设置需要指定的某个步骤二、实时修改脚本并运行对于Pipeline项目而言,是使用Git对Jenkinsfile进行统一管理,如果我想测试某个步骤但又不想频繁更新脚本该如何实现?解决方...原创 2020-04-22 12:03:21 · 10298 阅读 · 1 评论 -
【Jenkins】忽略警告
一、问题Jenkins的警告类型分为两种系统警告 : 一般提醒用户有新版本Jenkins可升级插件警告 :插件升级或安全警告但是一般我们不想去升级,如何去掉这显眼的红色警告呢?二、解决方法忽略Jenkins系统警告 转到Manage Jenkins => Configure System => Administrative monitors configuratio...原创 2020-04-21 18:27:46 · 2451 阅读 · 0 评论 -
【Jenkins】在Bat脚本中使用环境变量
一、问题我司的PE有这样一个需求:编译C#项目不同分支时,首先需要参数化选择要Build的分支,传递Branch_Name,Git下载编译该分支项目,最后把编译好的输出文件复制到远程服务器上,并且父目录名称也是分支名称,这样易于辨认。难点就在于怎么把参数化的变量传递给Bat脚本二、解决方法需要安装插件 Environment Injector, 首先这是我们需要传递的变量对于不同项目而...原创 2020-04-17 19:57:09 · 3410 阅读 · 0 评论 -
【Jenkins】从零配置.Net单元测试项目
经常忘,还是做个总结吧原创 2020-03-21 04:37:18 · 292 阅读 · 0 评论 -
【Jenkins】解决本地文件依赖
文章目录一、依赖关系二、解决本机依赖三、案例1. Repo管理机制2. 全局工具设置3. 引用依赖项目脚本一、依赖关系在使用Jenkins配置项目的时候,有时会遇到要使用外部依赖文件的情况,比如我要复制某个本地文件或要用到某个外部程序做什么,但是这些外部依赖都是本机文件或程序,一旦位置改变就会导致项目Build失败。我个人理解的Jenkins项目的设计思想就是依赖越少越好,因为众多的依赖中一旦...原创 2020-03-19 19:32:57 · 1428 阅读 · 0 评论 -
【Jenkins】.Net Core单元测试报告和代码覆盖率
文章目录一、测试报告1. 使用logger参数2. 将trx文件转成html文件二、代码覆盖率1. 安装clover2. 对测试文件生成覆盖率文件3. 将xml文件转换为html文件一、测试报告1. 使用logger参数在我们使用vstext.console运行单元测试命令,加入/logger参数"vstest.console.exe" "MyJenkins\MyJenkinsTests\...原创 2020-03-19 19:25:31 · 1264 阅读 · 0 评论 -
【Jenkins】xcopy无效的驱动器规格
一、问题在Jenkins里面使用 Window batch command 从远程服务器复制文件到另一个服务器时,发生错误 Invalid drive specification原始脚本:xcopy \\marchine1\dir1\folder1 \marchine2\dir2\folder2 /D/S/Q/I/Y错误原因:Jenkins没有访问 marchine1的权限二、解...原创 2020-03-10 15:43:18 · 3105 阅读 · 1 评论 -
【Jenkins】登录失败的问题
前段时间手滑不小心点错Jenkins登录设置,结果再怎么也登不进去。这里汇总网上资料,最终解决了该问题。一、问题登录时候输入正确的用户名和密码,弹出如下错误信息二、解决方法在系统服务中停止运行Jenkins修改Jenkins安装目录下的config.xml文件<1> 将<userSecurity>true</useSecurity>中...原创 2020-03-03 16:01:03 · 2222 阅读 · 0 评论 -
【Jenkins】参数化选择Git分支
一、项目配置要完成参数化选择Git分支,并Pull分支代码需要以下Jenkins插件参数化构建插件: Parameterized BuildGit插件:Git新建任一项目,选择参数化构建这个项目,选择String parameter,这里的 Branch_Name 是项目变量(待测试分支的名称)然后在Git设置里面设置测试的分支,变量可以传递过来作为分支名,格式如下${Branc...原创 2020-03-03 15:37:51 · 1388 阅读 · 0 评论 -
【Jenkins】时间格式
Jenkins时间表使用的UNIX知名的Cron语法cron语法包括以空格分隔的五个字段,示意如下:* * * * *第一个* 分钟 [0,59]第二个* 小时 [0,23]第三个* 月的一天 [1,31]第四个* 月 [1,12]第五个* 周的一天 [0,7] 0和7是星期日值的范围表示方法* 9-17 * * * 表示每天上午9点和下午17点之间的每一分...原创 2020-01-09 16:42:23 · 1192 阅读 · 0 评论 -
【Jenkins】更换Jenkins主题
一、实现的效果二、 如何制作1. 下载主题并上传logojenkins-material-theme选择截图中的选项2. 配置Css文件在Jenkins安装路径的userContent目录下新建layout文件夹<1>. 复制Step1中下载到的文件到layout文件夹下<2>. 新建title.css文件,更换Jenkins Title, 内容如下...原创 2020-01-09 16:14:22 · 3739 阅读 · 1 评论 -
【Jenkins】Pull Request触发项目构建
一、GitHub Pull Requset Builder1. Jenkin安装插件2. 配置插件GitHub Server API1. Github: https://api.github.com2. Github Enterprise: https://your-enterprise-server/api/v3Credentials, 注意,如果后续你的密码更改了...原创 2020-01-09 16:00:42 · 2267 阅读 · 0 评论