...
|
...
|
@@ -16,7 +16,9 @@ pipeline { |
|
|
//常量参数,初始确定后一般不需更改
|
|
|
environment{
|
|
|
CRED_ID='2cb1761b-b258-4e3b-843f-8f0dab16d770'
|
|
|
QA_EMAIL='jimi.ji@yoho.cn'
|
|
|
QA_EMAIL='jimi.ji@yoho.cn'
|
|
|
AWS_IMAGE='860721417875.dkr.ecr.cn-north-1.amazonaws.com.cn'
|
|
|
QCLOUD_IMAGE='ccr.ccs.tencentyun.com'
|
|
|
}
|
|
|
|
|
|
options {
|
...
|
...
|
@@ -25,7 +27,6 @@ pipeline { |
|
|
}
|
|
|
|
|
|
stages {
|
|
|
|
|
|
stage('Define para && clean workdir'){
|
|
|
steps{
|
|
|
script {
|
...
|
...
|
@@ -39,8 +40,7 @@ pipeline { |
|
|
echo "print the para imageSource is : ${params.imageSource}......"
|
|
|
echo "print the para imageVersion is : ${params.imageVersion}......"
|
|
|
def localdir = "${workdir}/docker.sh"
|
|
|
def qcloudimage = "ccr.ccs.tencentyun.com/${params.imageSource}/${params.deployName}:${params.imageVersion}"
|
|
|
def awsimage = "860721417875.dkr.ecr.cn-north-1.amazonaws.com.cn/${params.imageSource}/${params.deployName}:${params.imageVersion}"
|
|
|
|
|
|
if(fileExists("$localdir")){
|
|
|
echo "starting delete the dir ${workdir}"
|
|
|
sh "rm -rf ${workdir}"
|
...
|
...
|
@@ -52,8 +52,8 @@ pipeline { |
|
|
stage('git clone project'){
|
|
|
steps{
|
|
|
script {
|
|
|
println workdir
|
|
|
//sh "git clone -b ${params.projectBranch} git@git.yoho.cn:${params.projectGitGroup}/${params.projectName}.git ${workdir}"
|
|
|
def workdir="${env.WORKSPACE}/$params.projectName"
|
|
|
sh "git clone -b ${params.projectBranch} git@git.yoho.cn:${params.projectGitGroup}/${params.projectName}.git ${workdir}"
|
|
|
}
|
|
|
}
|
|
|
}
|
...
|
...
|
@@ -62,6 +62,7 @@ pipeline { |
|
|
stage('build project'){
|
|
|
steps{
|
|
|
script {
|
|
|
def workdir="${env.WORKSPACE}/$params.projectName"
|
|
|
sh "cd ${workdir} && sh ${workdir}/docker.sh ${params.isNeedCdn} ${workdir}"
|
|
|
}
|
|
|
}
|
...
|
...
|
@@ -71,13 +72,15 @@ pipeline { |
|
|
stage('upload to CDN and nfs'){
|
|
|
steps{
|
|
|
script {
|
|
|
println "begin upload to cdn"
|
|
|
if(params.isNeedCdn=='YES'){
|
|
|
def workdir="${env.WORKSPACE}/$params.projectName"
|
|
|
def olddir = "/data/var-lib/jenkins/workspace/replace"
|
|
|
def repalceDir = "${workdir}/public/dist"
|
|
|
println repalceDir
|
|
|
sh "sed -i 's?${olddir}?${repalceDir}?g' ${env.WORKSPACE}/Docker-Node-Build/LocalUploadConfig"
|
|
|
// sh "/home/soft/qshell qupload 3 ${env.WORKSPACE}/Docker-Node-Build/LocalUploadConfig"
|
|
|
// sh "cp -r ${repalceDir} /nfs-ops/Data/app/node-ci/data"
|
|
|
//sh "/home/soft/qshell qupload 3 ${env.WORKSPACE}/Docker-Node-Build/LocalUploadConfig"
|
|
|
//sh "cp -r ${repalceDir} /nfs-ops/Data/app/node-ci/data"
|
|
|
}else {
|
|
|
println "params.isNeedCdn is not yes,no upload"
|
|
|
}
|
...
|
...
|
@@ -89,6 +92,8 @@ pipeline { |
|
|
steps {
|
|
|
script {
|
|
|
echo "begin bake image......"
|
|
|
def workdir="${env.WORKSPACE}/$params.projectName"
|
|
|
def qcloudimage = "${env.QCLOUD_IMAGE}/${params.imageSource}/${params.deployName}:${params.imageVersion}"
|
|
|
sh "docker build -t ${qcloudimage} ${workdir}"
|
|
|
sh "docker push ${qcloudimage}"
|
|
|
echo "end bake qcloud image......"
|
...
|
...
|
@@ -100,6 +105,8 @@ pipeline { |
|
|
steps {
|
|
|
script {
|
|
|
if(check_push_aws_images(params.projectName)){
|
|
|
def qcloudimage = "${env.QCLOUD_IMAGE}/${params.imageSource}/${params.deployName}:${params.imageVersion}"
|
|
|
def awsimage = "${env.AWS_IMAGE}/${params.imageSource}/${params.deployName}:${params.imageVersion}"
|
|
|
sh "docker tag ${qcloudimage} ${awsimage} "
|
|
|
sh "docker push ${awsimage}"
|
|
|
echo "upload images to aws : ${params.projectName}"
|
...
|
...
|
@@ -126,4 +133,3 @@ def check_push_aws_images(project_name){ |
|
|
lst.add("yohobuy-node");
|
|
|
return lst.contains(project_name);
|
|
|
} |
|
|
|
...
|
...
|
|