Jenkins Pipeline 拉取 git 仓库代码 拉取 tag
jenkins 在 PipeLine scripts 中拉取远程git仓库
使用方法:
stage('Checkout external proj') { steps { git( url: 'https://github.com/<repo_name>.git', credentialsId: 'xpc', branch: "${branch}" ) sh "ls -lat" } }
或者写成一行
stage('Checkout external proj') { steps { git url: 'https://github.com/<repo_name>.git', credentialsId: 'xpc', branch: "${branch}" sh "ls -lat" } }
参数解释:
url: git 地址
branch:分支
credentialsId:认证信息,如果是公开仓库,可以省略
credentialsId 设置
使用 credentials 可以【参考官网】
创建一个用户名和密码
要创建一个用户名和密码 在Jenkins主面板左侧导航面板里找到 Credentials (凭证), 点击进入,配置即可。credentialsId 使用的是就是 ID 不是用户名。
添加一个ssh key
使用用户名和密码容易泄密,实际工作中常常使用 ssh 方式登陆。这里介绍下Jenkins 使用 ssh 连接远程仓库.
添加私钥类似以上添加用户名密码,Kind选择SSH username with private key,用户名即为你的git账户用户名,private key勾选Enter directly把我们本机的私钥添复制到框里面.
需要注意的是:ssh方式 和 http方式所使用的 git 地址是不一样的,一定要注意.
pipeline script 获取 git 最后一个 tag
pipeline{ // 定义本次构建使用哪个标签的构建环境,本示例中为 “slave-pipeline” agent{ node{ label 'slave-pipeline' } } stages{ // 定义第一个stage, 完成克隆源码的任务, 示例项目中包含用于本次构建的编排文件Jenkinsfile 和 应用部署文件deployment.yaml stage('git code'){ steps{ dir("scripts"){ git branch: "master", credentialsId: "http-wkj", url: 'https://git.letzgo.com.cn/wkj/jenkins.git' //sh 'git tag --sort version:refname | tail -1' } git branch: "${params.branch}", credentialsId: "${params.lbgitlab}", url: "${params.gitlab_url}" script{ env.GIT_TAG = sh(returnStdout: true, script: "cd scripts; git tag --sort version:refname | tail -1").trim() } } } stage('get tag'){ steps{ sh "echo $GIT_TAG" } } } }
扩展
pipeline script 使用 git parameter 插件
共 0 条评论