diff options
Diffstat (limited to 'netci.groovy')
-rw-r--r-- | netci.groovy | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/netci.groovy b/netci.groovy index 83d30da9a..af7627fae 100644 --- a/netci.groovy +++ b/netci.groovy @@ -8,6 +8,10 @@ def project = GithubProject // The input branch name (e.g. master) def branch = GithubBranchName +def imageVersionMap = ['Windows_NT':'latest-or-auto', + 'OSX':'latest-or-auto', + 'Ubuntu':'20170118'] + // Innerloop build OS's def osList = ['Ubuntu', 'OSX', 'Windows_NT'] @@ -26,14 +30,18 @@ def osList = ['Ubuntu', 'OSX', 'Windows_NT'] def newJobName = Utilities.getFullJobName(project, lowercaseConfiguration + '_' + os.toLowerCase(), isPR) def buildString = ""; def prJobDescription = "${os} ${configuration}"; - + if (configuration == 'Debug') { + prJobDescription += " and CoreCLR tests" + } + // Calculate the build commands if (os == 'Windows_NT') { buildString = "build.cmd ${lowercaseConfiguration}" + testScriptString = "tests\\runtest.cmd /coreclr " } else { - // On other OS's we skipmscorlib but run the pal tests buildString = "./build.sh ${lowercaseConfiguration}" + testScriptString = "tests/runtest.sh -coreclr " } // Create a new job with the specified name. The brace opens a new closure @@ -46,24 +54,45 @@ def osList = ['Ubuntu', 'OSX', 'Windows_NT'] batchFile(buildString) if (configuration == 'Debug') { - prJobDescription += " + CoreCLR tests" - batchFile("tests\\runtest.cmd /coreclr Top200") + if (isPR) { + // Run a small set of BVTs during PR validation + batchFile(testScriptString + "Top200") + } + else { + // Run the full set of known passing tests in the post-commit job + batchFile(testScriptString + "KnownGood") + } } } else { shell(buildString) + + if (configuration == 'Debug') { + if (isPR) { + // Run a small set of BVTs during PR validation + shell(testScriptString + "top200") + } + else { + // Run the full set of known passing tests in the post-commit job + + // Todo: Enable push test jobs once we establish a reasonable passing set of tests + // shell(testScriptString + "KnownGood") + } + } } } } // This call performs test run checks for the CI. Utilities.addXUnitDotNETResults(newJob, '**/testResults.xml') - Utilities.setMachineAffinity(newJob, os, 'latest-or-auto') + Utilities.setMachineAffinity(newJob, os, imageVersionMap[os]) Utilities.standardJobSetup(newJob, project, isPR, "*/${branch}") if (isPR) { Utilities.addGithubPRTriggerForBranch(newJob, branch, prJobDescription) } else { + // Set a large timeout since the default (2 hours) is insufficient + Utilities.setJobTimeout(newJob, 1440) Utilities.addGithubPushTrigger(newJob) } } |