You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
4.6 KiB
109 lines
4.6 KiB
|
|
pipeline {
|
|
agent any
|
|
// environment {
|
|
// def imageName = "cloud/${project_names_and_port}"
|
|
// def tag="latest"
|
|
// }
|
|
tools {
|
|
maven "maven-3.6.3"
|
|
}
|
|
stages {
|
|
stage('check out') {
|
|
steps {
|
|
script{
|
|
def gitea_url
|
|
if("${gitea_server}" == "136Git")
|
|
{
|
|
gitea_url = "$local136_gitea_url"
|
|
}
|
|
if("${gitea_server}" == "aliyunGitea")
|
|
{
|
|
gitea_url = "$aliyun_gitea_url"
|
|
}
|
|
echo "================${gitea_url}"
|
|
checkout([$class: 'GitSCM', branches: [[name: '*/master']], extensions: [], userRemoteConfigs: [[credentialsId: "${gitea_server}", url: gitea_url]]])
|
|
|
|
}
|
|
}
|
|
}
|
|
stage('building dependency') {
|
|
steps {
|
|
sh '''
|
|
mvn -f renren-commons clean install -Dautoconfig.skip=true -Dmaven.test.skip=false -Dmaven.test.failure.ignore=true
|
|
'''
|
|
}
|
|
}
|
|
|
|
stage('test get param') {
|
|
steps {
|
|
script {
|
|
echo "registry_url=${registry_url}"
|
|
// project_names_and_port=renren-register@8761
|
|
// select_ssh_name=aliyun@server1,195@server1,195@server2,195@server3
|
|
def selectedProject = "${project_names_and_port}".split(',')
|
|
def selectedDeployServer = "${select_ssh_name}".split(',')
|
|
for(int i=0; i<selectedProject.size();i++)
|
|
{
|
|
def module_name = selectedProject[i].split('@')[0]
|
|
def register_port = selectedProject[i].split('@')[1]
|
|
|
|
sh "$shell_path/delete_image.sh $group_id/$module_name $latest_tag > /opt/jenkins_shell/delete_image.log 2>&1"
|
|
|
|
sh "mvn -f $module_name clean install dockerfile:build -Dautoconfig.skip=true -Dmaven.test.skip=false -Dmaven.test.failure.ignore=true"
|
|
|
|
sh "$shell_path/upload_image.sh $group_id/$module_name $latest_tag $registry_url > /opt/jenkins_shell/upload_image.log 2>&1"
|
|
|
|
echo "######### module_name=${module_name},register_port=${register_port}"
|
|
|
|
|
|
for(int j=0; j<selectedDeployServer.size();j++)
|
|
{
|
|
def deployServerName = selectedDeployServer[j].split('@')[0]
|
|
def deployServiceConfig = selectedDeployServer[j].split('@')[1]
|
|
echo "deployServerName=${deployServerName}"
|
|
echo "deployServiceConfig=${deployServiceConfig}"
|
|
// 获取eureka profile
|
|
//fastwave_dev_master,fastwave_dev_slave1,fastwave_dev_slave2
|
|
|
|
def profile = "--spring.profiles.active=" + deployServiceConfig
|
|
// def latest_tag = deployServiceConfig
|
|
//注册中心地址
|
|
def eureka_url
|
|
|
|
if(deployServiceConfig == "server1"){
|
|
register_port = "8761"
|
|
if(deployServerName == "195"){
|
|
eureka_url = "192.168.1.195:" + register_port
|
|
}else{
|
|
eureka_url = "47.93.219.55:" + register_port
|
|
}
|
|
}else if(deployServiceConfig == "server2"){
|
|
register_port = "8762"
|
|
eureka_url = "192.168.1.195:" + register_port
|
|
}else if(deployServiceConfig == "server3"){
|
|
register_port = "8763"
|
|
eureka_url = "192.168.1.195:" + register_port
|
|
}
|
|
// $group_id/$module_name:cloud/renren-register
|
|
// register_port:8761
|
|
// register_port:8761
|
|
// latest_tag:latest
|
|
// registry_url:47.93.219.55:5001
|
|
// eureka_url:192.168.1.195:8761(8762,8763)或47.93.219.55:8761
|
|
// deployServiceConfig:cloud/renren-register
|
|
// profile:cloud/renren-register
|
|
sshPublisher(publishers: [sshPublisherDesc(configName: "$deployServerName", transfers: [sshTransfer(cleanRemote: false, excludes: '',
|
|
execCommand: "/data/jenkins_shell/deploy_image_eureka.sh $group_id/$module_name $register_port $registry_url $eureka_url $deployServiceConfig $profile > /data/jenkins_shell/deploy_image_eureka.log 2>&1", execTimeout: 120000, flatten: false, makeEmptyDirs: false, noDefaultExcludes: false, patternSeparator: '[, ]+', remoteDirectory: '', remoteDirectorySDF: false, removePrefix: '', sourceFiles: '')], usePromotionTimestamp: false, useWorkspaceInPromotion: false, verbose: false)])
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|