diff options
author | Matt Mitchell <mmitche@microsoft.com> | 2016-01-21 09:54:26 -0800 |
---|---|---|
committer | Matt Mitchell <mmitche@microsoft.com> | 2016-01-21 09:54:26 -0800 |
commit | 7cd958a67bf56e4c5640ca22889959729e8d3d46 (patch) | |
tree | adcc21f0df0a70c25354a8d46d79fa4efec9818a | |
parent | 0ec095a83173a6ef5d199a46184f5a5bf696631d (diff) | |
download | coreclr-7cd958a67bf56e4c5640ca22889959729e8d3d46.tar.gz coreclr-7cd958a67bf56e4c5640ca22889959729e8d3d46.tar.bz2 coreclr-7cd958a67bf56e4c5640ca22889959729e8d3d46.zip |
Add minopts for ubuntu and osx.
-rw-r--r-- | netci.groovy | 66 |
1 files changed, 45 insertions, 21 deletions
diff --git a/netci.groovy b/netci.groovy index 9304da6262..7961a1193d 100644 --- a/netci.groovy +++ b/netci.groovy @@ -64,8 +64,14 @@ def static genStressModeScriptStep(def os, def stressModeName, def stressModeVar } } else { - println("Unknown OS while creating testenv script step: ${os}") - assert false + // For these we don't use a script, we use directly + stepScript += "echo Setting variables for ${stressModeName}\n" + stressModeVars.each{ k, v -> + // Write out what we are writing to the script file + stepScript += "echo Setting ${k}=${v}\n" + // Write out the set itself to the script file` + stepScript += "${k}=${v}\n" + } } return stepScript } @@ -212,6 +218,11 @@ def static addTriggers(def job, def isPR, def architecture, def os, def configur Utilities.addGithubPRTrigger(job, "${os} ${architecture} ${configuration} IL RoundTrip Build and Test", "(?i).*test\\W+${os}\\W+ilrt.*") } break + case 'minopts': + assert (os == 'Windows_NT') || (os in Constants.crossList) + Utilities.addGithubPRTrigger(job, "${os} ${architecture} ${configuration} Build and Test (Jit - MinOpts)", + "(?i).*test\\W+${os}\\W+minopts.*") + break default: println("Unknown scenario: ${scenario}"); assert false @@ -555,36 +566,43 @@ combinedScenarios.each { scenario -> } // scenario // Create the Linux/OSX coreclr test leg for debug and release and each scenario -Constants.basicScenarios.each { scenario -> +combinedScenarios.each { scenario -> [true, false].each { isPR -> // Architectures. x64 only at this point ['x64'].each { architecture -> // Put the OS's supported for coreclr cross testing here Constants.crossList.each { os -> Constants.configurationList.each { configuration -> - - // Skip scenarios - switch (scenario) { - case 'pri1': - // Nothing skipped - break - case 'ilrt': - // Nothing skipped - break - case 'default': - // Nothing skipped - break - default: - println("Unknown scenario: ${scenario}") - assert false - break + + if (Constants.jitStressModeScenarios.containsKey(scenario)) { + if (configuration != 'Checked') { + return + } + } + else { + // Skip scenarios + switch (scenario) { + case 'pri1': + // Nothing skipped + break + case 'ilrt': + // Nothing skipped + break + case 'default': + // Nothing skipped + break + default: + println("Unknown scenario: ${scenario}") + assert false + break + } } def lowerConfiguration = configuration.toLowerCase() def osGroup = getOSGroup(os) def jobName = getJobName(configuration, architecture, os, scenario, false) + "_tst" def inputCoreCLRBuildName = Utilities.getFolderName(project) + '/' + - Utilities.getFullJobName(project, getJobName(configuration, architecture, os, scenario, false), isPR) + Utilities.getFullJobName(project, getJobName(configuration, architecture, os, 'default', false), isPR) // If this is a stress scenario, there isn't any difference in the build job // so we didn't create a build only job for windows_nt specific to that stress mode. Just copy // from the default scenario @@ -656,7 +674,13 @@ Constants.basicScenarios.each { scenario -> shell("unzip -q -o ./bin/tests/tests.zip -d ./bin/tests/Windows_NT.${architecture}.${configuration} || exit 0") // Execute the tests - shell(""" + // If we are running a stress mode, we'll set those variables first + def stressModeString = "" + if (Constants.jitStressModeScenarios.containsKey(scenario)) { + stressModeString = genStressModeScriptStep(os, scenario, Constants.jitStressModeScenarios[scenario], null) + } + + shell("""${stressModeString} ./tests/runtest.sh \\ --testRootDir=\"\${WORKSPACE}/bin/tests/Windows_NT.${architecture}.${configuration}\" \\ --testNativeBinDir=\"\${WORKSPACE}/bin/obj/${osGroup}.${architecture}.${configuration}/tests\" \\ |