فهرست منبع

新增部署文档

zhangqiankun 3 سال پیش
والد
کامیت
e624e58e7d

+ 128 - 0
doc/calendar-center.sql

@@ -0,0 +1,128 @@
+CREATE DATABASE IF NOT EXISTS `calendar-center` DEFAULT CHARACTER SET = utf8;
+Use `calendar-center`;
+
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
+
+-- ----------------------------
+-- Table structure for work_calendar
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar`;
+CREATE TABLE `work_calendar`  (
+  `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '主键ID',
+  `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'defaultId' COMMENT '项目ID',
+  `CALENDAR_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '同一PROJECT_ID下唯一,代码判断',
+  `CALENDAR_DESC` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作历描述',
+  `CREATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建时间',
+  `UPDATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新时间',
+  `UPDATE_USER` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作用户ID',
+  `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '0-正常;1-删除',
+  `GROUP_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  PRIMARY KEY (`ID`) USING BTREE,
+  INDEX `NK_CALENDAR_GROUP_AND_NAME`(`DEL_FLAG`, `PROJECT_ID`, `CALENDAR_NAME`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '工作历主表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for work_calendar_date
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar_date`;
+CREATE TABLE `work_calendar_date`  (
+  `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT 'ID',
+  `RULE_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规则ID',
+  `CALENDAR_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工作历ID',
+  `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目ID',
+  `CALENDAR_NAME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作历名称',
+  `CALENDAR_DESC` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作历描述',
+  `DICT_TYPE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典类型',
+  `DICT_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典数据的code',
+  `WORK_DATE_START` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '新版YYYYMMDD,新版中和规则同步;老版YYYYMMDDHHMMSS,老版中和规则没有关系',
+  `WORK_DATE_END` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '新版YYYYMMDD,新版中和规则同步;老版YYYYMMDDHHMMSS,老版中和规则没有关系',
+  `WORK_DATE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '具体执行日期,新接口YYYYMMDD',
+  `WORK_TIME` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '具体时间段',
+  `CREATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建时间',
+  `UPDATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新时间',
+  `UPDATE_USER` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作用户ID',
+  `CUSTOM_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '0-非自定义;1-自定义,默认0',
+  `GROUP_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  INDEX `NK_CALENDAR_ID`(`CALENDAR_ID`, `PROJECT_ID`) USING BTREE COMMENT '工作历ID,普通索引',
+  INDEX `NK_WORK_FROM_AND_TO`(`WORK_DATE_START`, `WORK_DATE_END`) USING BTREE COMMENT '日期的联合索引',
+  INDEX `NK_WORK_CALENDAR_WORK_DATE`(`WORK_DATE`) USING BTREE COMMENT '当天日期普通索引'
+) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '工作历作息时间表,此表只有新增,无修改[新版]' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for work_calendar_dict
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar_dict`;
+CREATE TABLE `work_calendar_dict`  (
+  `GROUP_CODE` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  `CALENDAR_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '工作历ID',
+  `DICT_TYPE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典类型',
+  `DICT_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典数据的code',
+  `DICT_DESC` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典类型描述',
+  UNIQUE INDEX `UK_DICT_CALENDAR_TYPE`(`DICT_TYPE`, `CALENDAR_ID`, `DICT_DESC`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '工作历字典表,后台维护,没有前端' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for work_calendar_label
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar_label`;
+CREATE TABLE `work_calendar_label`  (
+  `ID` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '主键ID',
+  `GROUP_CODE` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  `CALENDAR_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工作历ID',
+  `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目ID',
+  `LABEL_DATE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'label所属日期',
+  `DICT_TYPE` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典类型',
+  `DICT_CODE` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '字典数据的code',
+  `DIY_LABEL` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '0-非自定义,1-自定义',
+  `DIY_VALUE` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '自定义时对应的标签集合',
+  `CREATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建时间',
+  `UPDATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新时间',
+  `UPDATE_USER` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作用户ID',
+  PRIMARY KEY (`ID`) USING BTREE,
+  INDEX `NK_LABEL_CALENDAR_ID_PROJECT`(`CALENDAR_ID`, `PROJECT_ID`) USING BTREE,
+  INDEX `NK_LABEL_LABEL_DATE`(`LABEL_DATE`) USING BTREE
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for work_calendar_object
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar_object`;
+CREATE TABLE `work_calendar_object`  (
+  `GROUP_CODE` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  `CALENDAR_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工作历ID',
+  `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '项目ID',
+  `OBJECT_ID` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '对象ID',
+  `CREATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建时间',
+  `UPDATE_USER` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '操作用户ID',
+  UNIQUE INDEX `UK_OBJECT_OBJECT_ID`(`OBJECT_ID`, `PROJECT_ID`) USING BTREE COMMENT '对象ID索引',
+  INDEX `NK_OBJECT_CALENDAR_ID`(`CALENDAR_ID`) USING BTREE COMMENT '工作历ID索引'
+) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Table structure for work_calendar_rule
+-- ----------------------------
+DROP TABLE IF EXISTS `work_calendar_rule`;
+CREATE TABLE `work_calendar_rule`  (
+  `ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '规则ID',
+  `CALENDAR_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '工作历ID',
+  `PROJECT_ID` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目ID',
+  `DICT_TYPE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典类型',
+  `DICT_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '字典数据的code',
+  `RULE_DATE_START` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规则生效的开始日期YYYYMMDD',
+  `RULE_DATE_END` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规则生效的结束日期YYYYMMDD',
+  `RULE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '规则生效的具体时间点HHMMSS',
+  `CREATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建时间',
+  `UPDATE_TIME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '更新时间',
+  `UPDATE_USER` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '最后操作者ID',
+  `DEL_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '0-正常;1-删除',
+  `RULE_FLAG` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT '0' COMMENT '0-新接口规则;1-老接口规则,方便后续解析',
+  `VALUE` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '老版服务接口',
+  `GROUP_CODE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '集团编码',
+  PRIMARY KEY (`ID`) USING BTREE,
+  INDEX `NK_PARSE_RULE_INDEX`(`DEL_FLAG`, `RULE_DATE_END`, `RULE_DATE_START`) USING BTREE COMMENT '快速查找',
+  INDEX `NK_RULE_CALENDAR_ID`(`DEL_FLAG`, `CALENDAR_ID`) USING BTREE COMMENT '工作历ID,普通索引',
+  INDEX `NK_CALENDAR_RULE_TYPE`(`PROJECT_ID`, `DICT_TYPE`, `DICT_CODE`) USING BTREE COMMENT '同项目下类型和code唯一'
+) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '工作历规则表' ROW_FORMAT = Dynamic;
+
+SET FOREIGN_KEY_CHECKS = 1;

+ 27 - 0
doc/docker/Dockerfile

@@ -0,0 +1,27 @@
+FROM java:8-jre
+MAINTAINER fanzhongyuan<fanzhongyuan@persagy.com>
+
+LABEL tier backend
+LABEL product integrated
+LABEL project calendar-center
+LABEL name 工作历
+
+ENV JAVA_OPTS -Dfile.encoding=UTF-8 -Xms2048m -Xmx2048m
+ENV TZ Asia/Shanghai
+ARG WORKER_HOME
+
+RUN apt-get install -y --no-install-recommends tzdata && rm -rf /var/lib/apt/lists/*
+RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime	&& echo 'Asia/Shanghai' > /etc/timezone
+
+RUN mkdir -p $WORKER_HOME/config
+
+COPY *.jar $WORKER_HOME/
+COPY entrypoint.sh $WORKER_HOME/
+
+#EXPOSE 9971
+
+WORKDIR $WORKER_HOME
+
+RUN ls
+
+ENTRYPOINT ["sh","./entrypoint.sh"]

+ 15 - 0
doc/docker/calendar-center.yml

@@ -0,0 +1,15 @@
+version: '3'
+services:
+  dict-center:
+    image: $DOCKER_IMAGE
+    container_name: $APPLICATION_NAME
+    restart: always
+    ports:
+      - $SERVER_PORT:$SERVER_PORT
+    environment:
+      - SERVER_PORT=$SERVER_PORT
+      - EUREKA_CLIENT_DEFAULT_ZONE=$EUREKA_CLIENT_DEFAULT_ZONE
+      - EUREKA_INSTANCE_IP_ADDRESS=$EUREKA_INSTANCE_IP_ADDRESS
+      - JAVA_OPTS=-Dfile.encoding=UTF-8 -Xms2048m -Xmx2048m
+    volumes:
+      - $SERVER_LOGS_LOCAL_PATH:$WORKER_ROOT_HOME/logs/$APPLICATION_NAME

+ 6 - 0
doc/docker/deploy.sh

@@ -0,0 +1,6 @@
+#!/bin/bash
+docker stop $1
+docker rm $1
+docker rmi $(docker images | grep "<none>" | awk "{print $3}")
+docker rmi $(docker images | grep "$1" | awk "{print $3}")
+docker-compose --env-file $2/.env -f $2/$1.yml up -d

+ 3 - 0
doc/docker/entrypoint.sh

@@ -0,0 +1,3 @@
+#!/bin/bash
+echo "entrypoint run..."
+java -jar $JAVA_OPTS calendar-center.jar

+ 95 - 0
doc/docker/pipeline.txt

@@ -0,0 +1,95 @@
+pipeline { //pipeline 顶层
+    //any 在任何可用的agent上执行Pipeline或stage
+    agent any
+    //environment 自定义的环境变量
+    environment {
+        PROGRAM_ID = "integrated-calendar-center"     					//项目名称
+        APPLICATION_NAME = "calendar-center"     						//项目应用名-镜像名称
+        PROJECT_JAR_PATH = "integrated-business/integrated-calendar-center"					//项目打包后所在相对路径
+        WORKSPACE = "/root/jenkins"    							//jenkins home 宿主机路径
+        PROJECT_ROOT_PATH = "integrated-calendar-center"						//项目根路径名称,jenkins制作pipeline时,自定义的
+        WORKER_ROOT_HOME = "/mnt/integrated"								//工作目录根目录-容器内的路径 
+        WORKER_HOME = "$WORKER_ROOT_HOME/$APPLICATION_NAME"   				//项目运行所在路径-容器内的路径 
+        DEPLOY_FILE_PATH = "integrated-doc/docker/$PROGRAM_ID"				//部署文件所在路径
+        MAVEN_PACKAGE_PATH = "$WORKSPACE/workspace/$PROJECT_ROOT_PATH"		//maven打包根路径
+        IMAGE_REPOSITORY_PREFIX="labisenlin.persagy.com"					//私有镜像仓库的前缀域名
+        DOCKER_IMAGE = "$IMAGE_REPOSITORY_PREFIX/$IMAGE_REPOSITORY_PROJECT/$APPLICATION_NAME:$VERSION"	//镜像全路径
+        BACKUP_PATH = "$JENKINS_HOME/program-backup/$PROJECT_ROOT_PATH/$PROGRAM_ID/$VERSION"	//备份路径
+        
+        SERVER_PORT = "8815"													// yml部署文件中服务端口号
+        EUREKA_CLIENT_DEFAULT_ZONE = "http://frame:123456@192.168.64.18:9931/eureka/"	// yml部署文件中eureka注册地址
+        EUREKA_INSTANCE_IP_ADDRESS = "192.168.64.17"							// yml部署文件中eureka登录自身IP地址
+        SERVER_LOGS_LOCAL_PATH = "/mnt/integrated/logs/$APPLICATION_NAME"		// yml部署文件中,服务日志,宿主机存放位置
+        
+        REMOTE_DEPLOY = "true"									// false本机部署,true-指定部署服务器
+        REMOTE_PORT = "22"										// 远程服务器ssh登录端口
+        REMOTE_USER_IP = "root@192.168.64.17"					// 远程服务器ssh登录用户及IP
+        REMOTE_DEPLOY_PATH = "/mnt/integrated/docker"			// 远程服务器部署所需的文件存放位置
+    }
+    //不允许并行执行Pipeline,可用于防止同时访问共享资源等
+    options {
+        disableConcurrentBuilds()
+    }
+    stages {
+        //部署流程一:从SVN或者Git上拉取项目程序代码
+        stage('git checkout') {
+            steps {
+                checkout([$class: 'GitSCM', branches: [[name: '*/$GIT_BRANCH']], doGenerateSubmoduleConfigurations: false, extensions: [], submoduleCfg: [], userRemoteConfigs: [[credentialsId: 'gitlab-integrated-server-deploy', url: 'http://39.106.8.246:3003/persagy/integrated-platform.git']]])
+            }
+        }
+        //部署流程二:Java程序进行maven打包
+        stage('maven build') {
+            steps {
+                sh 'mvn clean install -Dmaven.test.skip=true -f $MAVEN_PACKAGE_PATH/pom.xml'
+            }
+        }
+        //部署流程三:根据项目dockerfile创建项目的docker镜像
+        stage('image buid') {
+            steps {
+                sh 'chmod -R +x ./$DEPLOY_FILE_PATH/'
+                sh 'rm -rf ./$DEPLOY_FILE_PATH/*.jar && cp ./$PROJECT_JAR_PATH/target/*.jar ./$DEPLOY_FILE_PATH'
+                sh 'docker build -f ./$DEPLOY_FILE_PATH/Dockerfile --build-arg WORKER_HOME=$WORKER_HOME -t $DOCKER_IMAGE ./$DEPLOY_FILE_PATH'
+            }
+        }
+        //部署流程四:项目推送到本地私有仓库
+        stage('repository push') {
+            steps {
+                sh 'docker login $IMAGE_REPOSITORY_PREFIX -u $DOCKER_USERNAME -p $DOCKER_PASSWORD'
+                sh 'docker push $DOCKER_IMAGE'
+                sh 'docker logout $IMAGE_REPOSITORY_PREFIX'
+            }
+        }
+        //部署流程五:项目版本本地备份
+        stage('backup') {
+            steps {
+                sh 'rm -rf $BACKUP_PATH/'
+                sh 'mkdir -p $BACKUP_PATH/'
+                sh 'cp ./$PROJECT_JAR_PATH/target/*.jar $BACKUP_PATH/'
+            }
+        }
+        //创建环境变量文件,分发文件
+        stage('deploy') {
+            steps {
+            	sh '''
+					cat >$MAVEN_PACKAGE_PATH/$DEPLOY_FILE_PATH/.env <<-EOF 
+					SERVER_PORT=$SERVER_PORT
+					DOCKER_IMAGE=$DOCKER_IMAGE
+					WORKER_ROOT_HOME=$WORKER_ROOT_HOME
+					APPLICATION_NAME=$APPLICATION_NAME
+					SERVER_LOGS_LOCAL_PATH=$SERVER_LOGS_LOCAL_PATH
+					EUREKA_CLIENT_DEFAULT_ZONE=$EUREKA_CLIENT_DEFAULT_ZONE
+					EUREKA_INSTANCE_IP_ADDRESS=$EUREKA_INSTANCE_IP_ADDRESS
+					EOF
+				'''
+            	script {
+                    if (env.REMOTE_DEPLOY == 'true') {
+                    	sh 'scp -q -r -P $REMOTE_PORT $MAVEN_PACKAGE_PATH/$DEPLOY_FILE_PATH/ $REMOTE_USER_IP:$REMOTE_DEPLOY_PATH'
+                        sh 'ssh -tt -p $REMOTE_PORT $REMOTE_USER_IP "$REMOTE_DEPLOY_PATH/$PROGRAM_ID/deploy.sh $APPLICATION_NAME $REMOTE_DEPLOY_PATH/$PROGRAM_ID && exit"'
+                    } else {
+                    	sh '$MAVEN_PACKAGE_PATH/$DEPLOY_FILE_PATH/deploy.sh $APPLICATION_NAME $MAVEN_PACKAGE_PATH/$DEPLOY_FILE_PATH'
+                    }
+                }
+            }
+        }
+    }
+}

BIN
doc/工作历-程序设计文档V2.0.0.doc