diff --git a/jobs/HRB_APP_Commit_Build/config.xml b/jobs/HRB_APP_Commit_Build/config.xml index 2a5eb676597628f2f565157920e27c66654dd7e3..01fc7849de0892d23ced91059db8489d232cadc0 100644 --- a/jobs/HRB_APP_Commit_Build/config.xml +++ b/jobs/HRB_APP_Commit_Build/config.xml @@ -43,35 +43,73 @@ Jenkins will send email to RD Team if build fails. false false false - - - - true - true - false - false - false - false - never - true - Jenkins please retry a build - true - true - true - RegexBasedFilter - - - (.*release.*|.*hotfix.*|.*develop|.*master) - - {AQAAABAAAAAQOWG138LyDlzsNOkwf4VcngJKesFwnZvSqzefJtqP9F8=} - - false - - + false - npm run test + #!/bin/groovy +pipeline { + tools { + nodejs 'default-nodejs' + } + stages { + stage('Startup') { + steps { + script { + sh 'npm install' + } + } + } + stage('Test') { + steps { + script { + sh 'npm run test' + } + } + post { + always { + step([$class: 'CoberturaPublisher', coberturaReportFile: 'output/coverage/jest/cobertura-coverage.xml']) + } + } + } + stage('Build') { + steps { + script { + sh 'npm start' + sh 'npm pack' + } + } + } + stage('Deploy') { + when { + expression { + currentBuild.result == null || currentBuild.result == 'SUCCESS' + } + } + steps { + script { + def server = Artifactory.server 'My_Artifactory' + uploadArtifact(server) + } + } + } + } +} +def uploadArtifact(server) { + def uploadSpec = """{ + "files": [ + { + "pattern": "continuous-test-code-coverage-guide*.tgz", + "target": "npm-stable/" + } + ] + }""" + server.upload(uploadSpec) + + def buildInfo = Artifactory.newBuildInfo() + server.upload spec: uploadSpec, buildInfo: buildInfo + server.publishBuildInfo buildInfo +}