如何解决无法从Jenkins环境变量读取GIT commitId,Branch和URL
当我从build.gradle访问时,我从变量下面得到“空”值。仅当在Jenkinsfile中的git checkout阶段将代码克隆到Jenkins工作区中时,GITSCM值才会为空。
System.getenv('GIT_BRANCH')
System.getenv('GIT_COMMIT')
System.getenv('GIT_URL')
stage ('Check Out') {
steps {
echo 'Check-Out code from SCM'
echo "Git Name : ${env.APP_NAME}"
checkout([$class: 'GitSCM',branches: [[name: '**/${BRANCH}']],doGenerateSubmoduleConfigurations: false,extensions: [],submoduleCfg: [],userRemoteConfigs: [[
credentialsId: 'GITHUB_KEY',url: "git@github.com:tools-org/${env.APP_NAME}"]]])
}
}
您能协助如何读取结账块以获取build.gradle中的GIT(CommitId,branch,repo)详细信息吗?
解决方法
这些应分别以env.BRANCH_NAME
,env.GIT_COMMIT_ID
和env.GIT_URL
的形式提供。
您可以发布sh "printenv | sort"
查看所有变量。
我可以使用以下代码在init.gradle中获取GIT分支名称。
def branchStdOut = new ByteArrayOutputStream()
exec {
commandLine 'git','name-rev','--name-only','HEAD'
standardOutput = branchStdOut
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。