{"id":179,"date":"2022-04-01T10:30:32","date_gmt":"2022-04-01T02:30:32","guid":{"rendered":"http:\/\/blog.ohmmx.com\/?p=179"},"modified":"2022-04-01T10:30:32","modified_gmt":"2022-04-01T02:30:32","slug":"%e4%b8%80%e4%b8%aa%e7%ae%80%e5%8d%95%e7%9a%84jenkins%e6%b5%81%e6%b0%b4%e7%ba%bf%e9%85%8d%e7%bd%ae","status":"publish","type":"post","link":"http:\/\/blog.ohmmx.com\/?p=179","title":{"rendered":"\u4e00\u4e2a\u7b80\u5355\u7684Jenkins\u6d41\u6c34\u7ebf\u914d\u7f6e"},"content":{"rendered":"\n<p>\u4e0a\u6b21\u4f7f\u7528\u4e86\u811a\u672c\u6765\u8fdb\u884c\u9879\u76ee\u6784\u5efa\u548c\u53d1\u5e03\uff1b<\/p>\n\n\n\n<p>\u8fd9\u6b21\u4f7f\u7528Jenkins\u6765\u5e72\u540c\u6837\u4e00\u4ef6\u4e8b\u3002<\/p>\n\n\n\n<p>\u76f4\u63a5\u4e0a\u4ee3\u7801\uff0c\u5177\u4f53\u542b\u4e49\u8bf7\u67e5\u8be2\u76f8\u5173\u6587\u6863\uff1a<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>try {\r\n    node {\r\n        stage('Environment') {\r\n            env.JAVA_HOME=\"${tool 'Java'}\"\r\n            env.PATH=\"${env.PATH}:${JAVA_HOME}\/bin:${tool 'Gradle'}\/bin\"\r\n            echo \"PATH=${PATH}\"\r\n            echo \"USER_HOME=${USER_HOME}\"\r\n        }\r\n        stage('Source') {\r\n            git branch: 'master', credentialsId: '9e133113-0dda-4072-8d4a-2477e5fc9bf1', url: 'https:\/\/github.com\/ohmmx\/testproject.git'\r\n        }\r\n        stage('Build') {\r\n            sh \"gradle :prj-tomcat:war :prj-springboot:bootJar\"\r\n            sh \"cp -f ${JENKINS_HOME}\/workspace\/jenkins-project\/prj-tomcat\/build\/libs\/prj-tomcat.war ${USER_HOME}\/deploy\/tomcat\/webapps\/ROOT.war\"\r\n            sh \"cp -f ${JENKINS_HOME}\/workspace\/jenkins-project\/prj-springboot\/build\/libs\/prj-springboot.jar ${USER_HOME}\/deploy\/prj-springboot.jar\"\r\n        }\r\n    }\r\n} catch (err) {\r\n    currentBuild.result = \"FAILURE\"\r\n    echo err\r\n} finally {\r\n    node {\r\n        stage('Stop') {\r\n            sh \"fuser -k 8080\/tcp || true\"\r\n            sh \"fuser -k 9080\/tcp || true\"\r\n        }\r\n        stage('Start') {\r\n            parallel (\r\n                tomcat: {\r\n                    echo \"Ready to start prj-tomcat ......\"\r\n                    sh \"JENKINS_NODE_COOKIE=dontKillMe ${USER_HOME}\/deploy\/tomcat\/bin\/startup.sh\"\r\n                },\r\n                springboot: {\r\n                    echo \"Ready to start prj-springboot ......\"\r\n                    sh \"JENKINS_NODE_COOKIE=dontKillMe nohup java -Dprofile=dev -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=29080 -Dserver.port=9080 -jar ${USER_HOME}\/deploy\/prj-springboot.jar &amp;\"\r\n                }\r\n            )\r\n        }\r\n    }\r\n}<\/code><\/pre>\n\n\n\n<p>\u5176\u4e2d\uff1a<\/p>\n\n\n\n<p>credentialsId \u662f\u5728 Jenkins \u91cc\u914d\u7f6e Git \u7684\u7528\u6237\u540d\u5bc6\u7801\u540e\uff0c\u7531 Jenkins \u751f\u6210\u7684\u7528\u6237ID\u3002<\/p>\n\n\n\n<p>JENKINS_HOME \u8def\u5f84\u9ed8\u8ba4\u4e3a \/var\/lib\/jenkins\/<\/p>\n\n\n\n<p>jenkins-project \u4e3a Jenkins \u4efb\u52a1\u7684\u540d\u79f0\uff08\u5efa\u8bae\u4e0d\u8981\u4f7f\u7528\u4e2d\u6587\uff09<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e0a\u6b21\u4f7f\u7528\u4e86\u811a\u672c\u6765\u8fdb\u884c\u9879\u76ee\u6784\u5efa\u548c\u53d1\u5e03\uff1b \u8fd9\u6b21\u4f7f\u7528Jenkins\u6765\u5e72\u540c\u6837\u4e00\u4ef6\u4e8b\u3002 \u76f4 &hellip; <a href=\"http:\/\/blog.ohmmx.com\/?p=179\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":[36,29,7],"class_list":["post-179","post","type-post","status-publish","format-standard","hentry","category-java","tag-java","tag-linux","tag-7"],"_links":{"self":[{"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/posts\/179","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=179"}],"version-history":[{"count":1,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/posts\/179\/revisions"}],"predecessor-version":[{"id":180,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=\/wp\/v2\/posts\/179\/revisions\/180"}],"wp:attachment":[{"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=179"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.ohmmx.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}