Jenkins 编译遇到的问题及解决方案
文章目录
- Jenkinsfile: git rev-parse —abbrev-ref HEAD returns HEAD
- Jenkins pipeline中获取 项目版本号
- JenkinsFile Demo
Jenkinsfile: git rev-parse —abbrev-ref HEAD returns HEAD
通过 git rev-parse —abbrev-ref HEAD 获取分支名时,返回为 HEAD,
通过安装 Jenkins 插件, 直接获取通过 ${BRANCH_NAME} 获取
参考链接:
- https://www.tikalk.com/posts/2017/05/21/how-to-evaluate-git-branch-name-in-a-jenkins-pipeline-using-gitscm/
- https://stackoverflow.com/questions/47098342/jenkinsfile-git-rev-parse-abbrev-ref-head-returns-head
- https://stackoverflow.com/questions/36304208/jenkins-workflow-checkout-accessing-branch-name-and-git-commit
Jenkins pipeline中获取 项目版本号
直接运行 mvn help:evaluate -Dexpression=project.version -q -DforceStdout
报错
获取 Project Version
TMP_VERSION = sh (
script: 'mvn help:evaluate -Dexpression=project.version -q -DforceStdout',
returnStdout: true
).trim()
参考链接
- https://blog.csdn.net/zimou5581/article/details/94016158
JenkinsFile Demo
#!/usr/bin/env groovy Jenkinsfile
pipeline{
agent { label "xinghai"}
triggers {
gitlab(triggerOnPush: false,
triggerOnMergeRequest: false,
branchFilterType: 'All',
secretToken: 'vDn8pTRxavakBM7K4rFJ'
)
}
environment {
DEST_YARN_DIR = "/YARN/${BRANCH_NAME}"
DEST_HDFS_DIR = "/HDFS/${BRANCH_NAME}"
SRC_DIR="hadoop-dist/target/tmp"
}
stages {
stage("get version and branch name") {
steps {
script {
TMP_VERSION = sh (
script: 'mvn help:evaluate -Dexpression=project.version -q -DforceStdout',
returnStdout: true
).trim()
env.VERSION=TMP_VERSION
echo "Project Branch: ${BRANCH_NAME} Version: ${TMP_VERSION}"
echo "DEST_YARN_DIR: ${DEST_YARN_DIR}, DEST_HDFS_DIR: ${DEST_HDFS_DIR}"
}
}
}
stage("mvn package") {
steps {
sh "sh hadoop-build.sh"
}
}
stage("push package") {
steps {
sh """ test -d ${DEST_YARN_DIR} || mkdir -p ${DEST_YARN_DIR} test -d ${DEST_HDFS_DIR} || mkdir -p ${DEST_HDFS_DIR} test -f ${DEST_YARN_DIR}/yarn-${VERSION}.tgz && rm -rf ${DEST_YARN_DIR}/yarn-${VERSION}.tgz test -f ${DEST_HDFS_DIR}//hadoop-${VERSION}.tgz && rm -rf ${DEST_HDFS_DIR}/hadoop-${VERSION}.tgz cp ${SRC_DIR}/hadoop-${VERSION}.tgz ${DEST_YARN_DIR}/yarn-${VERSION}.tgz cp ${SRC_DIR}/hadoop-${VERSION}.tgz ${DEST_HDFS_DIR}/hadoop-${VERSION}.tgz """
}
}
}
}
还没有评论,来说两句吧...