node() {
stage ('Checkout') {
parallel 'Checkout':{
dir('MyProduct') {
git url: 'g...@github.com:MyCompany/MyProduct.git'
}
dir('RelatedRepo1') {
git url: 'g...@github.com:MyCompany/RelatedRepo1.git'
}
dir('RelatedRepo2') {
git url: 'g...@github.com:MyCompany/RelatedRepo2.git'
}
dir('RelatedRepo3') {
git url: 'g...@github.com:MyCompany/RelatedRepo3.git'
}
}
}
stage ('Build') {
bat 'nuget restore "MyProduct/MyProduct all projects.sln"'
bat '"C:\\Program Files (x86)\\MSBuild\\14.0\\bin\\msbuild.exe" "MyProduct\\MyProduct all projects.sln" /p:Configuration=Release'
}
stage ('Test') {
bat '"C:\\Program Files (x86)\\NUnit 2.6.4\\bin\\nunit-console-x86.exe" "MyProduct\\UnitTestMyProduct\\bin\\Release\\UnitTestMyProduct.dll"'
step([$class: 'NUnitPublisher', testResultsPattern: 'TestResult.xml', debug: false, keepJUnitReports: true, skipJUnitArchiver:false, failIfNoResults: true])
}
stage ('Archive') {
archiveArtifacts 'MyProduct\\MyProduct\\bin\\Release\\*'
}
}