pipeline { agent none stages { stage('Build') { parallel { stage('Unix') { agent { label 'net-core' } stages { stage('Components') { steps { sh 'sh ./build/scripts/components.sh' } } stage('Common') { steps { sh 'sh ./build/scripts/common.sh' } } stage('Client') { steps { sh 'sh ./build/scripts/client.sh' } } stage('People') { steps { sh 'sh ./build/scripts/people.sh' } } } } stage('Windows') { agent { label 'master' } stages { stage('Components') { steps { bat '"C:\\Program Files\\Git\\bin\\bash.exe" build\\scripts\\components.sh' } } stage('Common') { steps { bat 'bash.exe build\\scripts\\common.sh' } } stage('Client') { steps { bat 'bash.exe build\\scripts\\client.sh' } } stage('People') { steps { bat 'bash.exe build\\scripts\\people.sh' } } } } } } stage('Test') { agent { label 'net-core' } steps { sh "cd ${env.WORKSPACE}/web/ASC.Web.Components && yarn test:coverage --ci --reporters=default --reporters=jest-junit || true" } post { success { junit 'web/ASC.Web.Components/junit.xml' publishHTML target: [ allowMissing : false, alwaysLinkToLastBuild: false, keepAll : true, reportDir : 'web/ASC.Web.Components/coverage/lcov-report', reportFiles : 'index.html', reportName : 'Test Report' ] } } } } }