chore: 增加jenkins自动化构建脚本
diff --git a/Jenkinsfile b/Jenkinsfile
new file mode 100644
index 0000000..57c5f87
--- /dev/null
+++ b/Jenkinsfile
@@ -0,0 +1,102 @@
+pipeline {
+  agent any
+
+  triggers {
+    // 每30分钟检查一下GIT仓库
+    pollSCM '*/30 * * * *'
+  }
+
+  options {
+    // 禁止因Multibranch pipeline index动作触发构建
+    overrideIndexTriggers false
+    // 禁止并发构建
+    disableConcurrentBuilds()
+    // 构建结果保留天数10天,最多保留10个
+    buildDiscarder logRotator(daysToKeepStr: '30', numToKeepStr: '10')
+    // 控制台打出时间戳
+    // timestamps()
+    // 构建超时设置:15分钟
+    timeout(30)
+  }
+
+  stages {
+
+    stage('Build & Test') {
+
+      steps {
+        withMaven(
+          // Jenkins全局工具设置的Maven的名字
+          maven: 'Maven3',
+          // Jenkins全局工具设置的JDK的名字,有JDK6,JDK7,JDK8可选
+          jdk: 'JDK8',
+          // 指定maven本地仓库路径为项目working dir下的.local-m2-reop,可以避免因并发构建导致本地仓库混乱的问题
+          mavenLocalRepo: '.local-m2-repo'
+        ) {
+          sh 'mvn clean package -DskipTests -DskipITs'
+        }
+      }
+
+    }
+
+    stage('Push nexus') {
+
+      when {
+        // 只有当前分支是develop时才执行本Stage
+        branch 'develop'
+        beforeAgent true
+      }
+
+      steps {
+        withMaven(
+          maven: 'Maven3',
+          jdk: 'JDK8',
+          mavenLocalRepo: '.local-m2-repo',
+          // 只是Deploy,因此把所有options都关闭掉(默认是都开启的)
+          publisherStrategy: 'EXPLICIT'
+        ) {
+          sh 'mvn clean package deploy -DskipTests -DskipITs'
+        }
+      }
+
+    }
+
+    stage ('Push harbor') {
+
+      when {
+        branch 'develop'
+        beforeAgent true
+      }
+
+      steps {
+        withMaven(
+          maven: 'Maven3',
+          jdk: 'JDK8',
+          mavenLocalRepo: '.local-m2-repo',
+          publisherStrategy: 'EXPLICIT'
+        ) {
+          sh 'mvn clean package -DskipTests -DskipITs dockerfile:build dockerfile:push'
+        }
+      }
+
+    }
+
+  }
+
+  post {
+    always {
+      // 发送邮件到本次change所包含的committer
+      emailext recipientProviders: [developers()],
+        subject: "Pipeline [${currentBuild.fullDisplayName}] built ${currentBuild.currentResult}",
+        body: "More details: ${currentBuild.absoluteUrl}"
+
+    }
+    cleanup {
+      // 清空workspace,节省Jenkins服务器磁盘空间
+      echo 'Cleanup workspace'
+      withMaven(maven: 'Maven3', jdk: 'JDK8', mavenLocalRepo: '.local-m2-repo') {
+        sh 'mvn clean'
+      }
+
+    }
+  }
+}