PipeLine中拉取远程git仓库

前面讲自由式任务的时候,我们可以看到通过自由式job里提供的图形界面配置git拉取非常方便的,实际上使用PipeLine也并不复杂.这一节我们展示一下如何在PipeLine任务中拉取git仓库代码.

node{

stage("check out"){

git credentialsId: '3c210def-c000-4e2a-9b2d-838986a6b172', url: 'https://github.com/mrtylerzhou/gitShow.git'

}

}

以上代码非常简单,通过使用git关键字,配置credentialsId和url后Jenkins就可以拉取远程git仓库代码了.Url很好理解,即为远程仓库的地址.这里比较费解的是credentialsId是什么,如何设置它?其实也非常简单,前面讲自由式任务的时候我们讲过如何在jenkins里添加添加一个git用户名和密码,这里的credentialsId即为我们创建的包含用户名和密码的用户信息的id(这个id是jenkins自动生成的)这里通过这个id,Jenkins便可以找到这个用户名和密码.

创建一个用户名和密码

要创建一个用户名和密码也不是非常复杂,我们在Jenkins主面板左侧导航面板里找到Credentials,点击进入,便可以看到以下一个面板

这里左侧Credentials下面有一个System我们点击一下,此时面板中央位置如下图

我们点击这个链接进入,此时左侧会出现一个添加Credentials按钮

点击便会出现一个可以设置用户名和密码的界面

如上图示,Kind使用默认的,添加一个用户名和密码.然后添加用户名和密码,此时id可以手输入,如果留空则Jenkins会自动生成一个.Description为一个简短描述,用户名和密码很多时方便区分.

添加成功后我们想要看到这条记录的id,点击板右侧的搬手螺丝刀图标就可以看到id了.我们把这个id复制到 PipeLine里credentialsId

添加一个ssh key

使用用户名和密码容易泄密,实际工作中常常使用ssh方式登陆,这里对如何生成ssh key,如何在远程仓库中添加公钥不再赘述,不熟悉的童鞋可以参考前面章节或者官方帮助文档以及在互联网上搜索相关材料.这里介绍下如何把ssh 私钥添加到Jenkins里,以便Jenkins使用ssh连接远程仓库.

添加私钥类似以上添加用户名密码,只是添加用户名密码时Kind选项使用的是默认的选择,这里Kind下拉一下,选择SSH username with private key,用户名即为你的git账户用户名,private key勾选Enter directly把我们本机的私钥添复制到框里面.

需要注意的是ssh和http地址是不一样的,一定要注意.

把代码拉到指定位置

Jenkins默认会的把项目拉到Jenkins安装目录下Workspace+项目名的目录下面,很多时候由于一些原因我们可能希望改变这一行为,把项目拉到自定义的一个目录下面,这时候可以使用dir函数,然后把要执行的代码写在dir函数代码块内.示例代码如下

node{

stage("check out"){

dir("projdir"){

git credentialsId: '3c210def-c000-4e2a-9b2d-838986a6b172', url: 'https://github.com/mrtylerzhou/gitShow.git'

}

}

}

以上语句执行后,可以看到jenkins会把代码拉到Workspace+项目名+projdir的目录下,当然也可以指定绝对路径.

git jenkins 子目录_持续集成高级篇之Jenkins Pipeline git拉取相关推荐

  1. idea集成git合并分支_持续集成:合并故事

    idea集成git合并分支 六个月项目如何成为Vaporware的真实故事 北美游戏" 永远的毁灭公爵"的封面艺术. 经过15年的发展,它于2011年发布,这是Vaporware的 ...

  2. Jenkins 流水线 获取git 分支列表_持续集成工具Jenkins看这篇就够啦!

    本文以基于当前最新的 LTS 版本 2.164.1 ,理论上适应于Jenkins 2.x所有版本. 一.下载 前往Jenkins官网 ,按需下载.如用于生产,建议下载Long-term Support ...

  3. 【Jenkins+RF】从零搭建Jenkins+Robot Framework持续集成环境

    转自:https://www.jianshu.com/p/ef8d3109ac5f    感恩 安装Jenkins 系统环境:CentOS Linux release 7.3.1611 x86_64 ...

  4. 构建基于Jenkins + Github的持续集成环境

    登录 | 注册 John_cdy的专栏 学无止境 目录视图 摘要视图 订阅 有奖征资源,博文分享有内涵 6月推荐文章汇总 CSDN博文大赛初赛晋级名单公布 关注CSDN社区微信,福利多多 构建基于Je ...

  5. Jenkins与Allure持续集成

    Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能. 通过Jenkins与Allure的集成,可以 ...

  6. 基于Jenkins快速搭建持续集成环境

    看了园友张善友的博文,尝试成功.便有此作.原网址: 基于 Jenkins 快速搭建持续集成环境 天下事有难易乎?为之,则难者亦易矣:不为,则易者亦难矣. 首先要学会使用MSBuild构建脚本 附网址: ...

  7. 自动生成html_服务搭建篇二·Jenkins+Jmeter+Gitlab持续集成实现接口流程自动化

    今天分享服务搭建第二篇:Jenkins+Jmeter+Ant自动化集成(服务) 一.Ant 服务配置 1.配置报告模板和 ant build 确定脚本的目录,当前放在Jmeter 目录下 #cd /u ...

  8. CI/CD——构建企业级Docker+Jenkins+Git+Harbor流水线自动化持续集成持续发布平台

    构建企业级Docker+Jenkins+Git+Harbor流水线自动化持续集成持续发布平台 CI/CD是什么? 持续集成(CI)/持续交付(CD)的优势 自动化部署流程图 Git Github Gi ...

  9. 【安卓开发系列 -- 开发环境】Unbuntu 下 Android 持续集成打包环境搭建 -- Jenkins 构建工具安装(gradle + git + android 工具)

    [安卓开发系列 -- 开发环境]Unbuntu 下 Android 持续集成打包环境搭建 -- Jenkins 构建工具安装(gradle + git + android 工具) [1]Unbuntu ...

最新文章

  1. 使用postman修改SAP Marketing Cloud contact主数据
  2. Mato的文件管理 (莫队)题解
  3. 端午前夕的班级小游戏
  4. JSP动作元素/活动元素
  5. 没有bug队——加贝——Python 57,58
  6. inner join 与 left join 之间的区别
  7. cdn加载插件和npm安装的差别_免费、快速且可靠的开源CDN-jsDelivr
  8. Luogu1613 跑路
  9. pokemon go 和 虚拟gps
  10. 稚晖君教你制作全球最迷你的自平衡机器人
  11. js 对中文字符的 解码 与 编码
  12. 推荐七个逆天神器APP,让你分分秒秒变优秀
  13. java myqq ui_myqq: Java版SWing“高”仿QQ即时通聊天系统
  14. 站在两个世界的边缘 程浩,一个认真生活过的人
  15. SpringBoot学期总结
  16. 感谢生命中的每一次遇见
  17. web第四天(使用CSS变换效果、过度效果、动画)
  18. 数据库基础(面试常见题)
  19. ◆2008 年广告创意设计师必备网址汇总◆
  20. 程序员年薪20万、30万、40万都是如何生活的?

热门文章

  1. 个人使用HEF4051遇到问题总结
  2. 零基础CSS教程(一)
  3. 16.JAVA之前端,HTML,CSS(选择器,盒子模型),JS,JQuery,Json,ajax
  4. 每当在测试之路迷茫的时候来看看这篇文章
  5. jmter生成的报告没有显示请求和响应明细数据
  6. 使用jquery完成元素拖拽效果的实现(鼠标拖动滑块)
  7. 3dsmax动画八、曲线编辑器。
  8. sqlmap测试靶机
  9. 用Vue大屏可视化,数据可视化平台酷屏优胜它
  10. 【服务器数据恢复】HP EVA系列存储出现故障如何恢复数据?