|
|
|
@@ -2,6 +2,7 @@ node { |
|
|
|
def workspace=pwd() |
|
|
|
// 版本 |
|
|
|
def tag = "0.8" |
|
|
|
def ali_registry = "registry.cn-beijing.aliyuncs.com" |
|
|
|
// 镜像仓库的地址 |
|
|
|
// def harbor_url = "192.168.81.102:85" |
|
|
|
// 镜像仓库的项目,这里建议项目名称和jenkins的item项目名称、以及harbor的项目名称保持一致,否则用一下脚本会出问题 |
|
|
|
@@ -13,9 +14,17 @@ node { |
|
|
|
} |
|
|
|
// 代码静态检查 |
|
|
|
stage('Maven Package and Sonar') { |
|
|
|
|
|
|
|
sh "${mavenPath}/bin/mvn clean package -e -U -Dmaven.test.skip=true sonar:sonar" |
|
|
|
|
|
|
|
if ("${project_name}" == 'digimeta-MultiSaas' ) { |
|
|
|
echo '打包根目录' |
|
|
|
sh 'mvn clean package sonar:sonar' |
|
|
|
} else { |
|
|
|
echo "打包子目录并进行代码检查 ${project_name}" |
|
|
|
script { |
|
|
|
sh "${mavenPath}/bin/mvn clean install" |
|
|
|
sh "${mavenPath}/bin/mvn -f ${project_name} clean package -e -U -Dmaven.test.skip=true sonar:sonar" |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//script { |
|
|
|
//引入Jenkins SonarQube-Scanner全局工具 "全局配置中以SonarQube-Scanner命名的工具" |
|
|
|
@@ -28,14 +37,16 @@ node { |
|
|
|
// $mavenPath/bin/mvn sonar:sonar |
|
|
|
//} |
|
|
|
} |
|
|
|
// 编译并推送镜像仓库 |
|
|
|
// build Docker并推送镜像仓库 |
|
|
|
stage('build project') { |
|
|
|
if ("${project_name}" == 'digimeta-MultiSaas' ) { |
|
|
|
echo '打包根目录' |
|
|
|
sh 'mvn clean package' |
|
|
|
echo '仅做代码检查,不打包目录' |
|
|
|
} else { |
|
|
|
echo "打包子目录 ${project_name}" |
|
|
|
sh "mvn clean package" |
|
|
|
echo "构件微服务 ${project_name},并推送到镜像仓库" |
|
|
|
sh "docker login --username=缔智元2023 ${ali_registry}" |
|
|
|
sh "docker build --tag ${ali_registry}/digitalman-multisaas/${project_name}:${version}" |
|
|
|
sh "docker push ${ali_registry}/digitalman-multisaas/${project_name}:${version}" |
|
|
|
|
|
|
|
} |
|
|
|
//echo "把jar上传镜像仓库" |
|
|
|
//def oldImageName = "${project_name}:latest" |
|
|
|
|