summaryrefslogtreecommitdiff
path: root/netci.groovy
diff options
context:
space:
mode:
authorEgor Chesakov <Egor.Chesakov@microsoft.com>2018-11-15 14:53:08 -0800
committerGitHub <noreply@github.com>2018-11-15 14:53:08 -0800
commitcc8de13a8853a76fb3eb99cc209a4986eb3b2585 (patch)
tree097e9b8c639ead22961c43586f2c175530eceda8 /netci.groovy
parent9d2f9c4b4eebcac13247fa414bc8ca1c3a1d5b03 (diff)
downloadcoreclr-cc8de13a8853a76fb3eb99cc209a4986eb3b2585.tar.gz
coreclr-cc8de13a8853a76fb3eb99cc209a4986eb3b2585.tar.bz2
coreclr-cc8de13a8853a76fb3eb99cc209a4986eb3b2585.zip
Stop using Hostx86/arm crossgen in crossgen_comparison scenario (#21021)
* And also create Linux arm64 crossgen_comparison scenarios in netci.groovy
Diffstat (limited to 'netci.groovy')
-rwxr-xr-xnetci.groovy47
1 files changed, 16 insertions, 31 deletions
diff --git a/netci.groovy b/netci.groovy
index 7dad76583d..2de56bb89f 100755
--- a/netci.groovy
+++ b/netci.groovy
@@ -32,18 +32,6 @@ def static getOSGroup(def os) {
return osGroupMap[os]
}
-def static getCrossArchitectures(def os, def architecture, def scenario) {
- switch (architecture) {
- case 'arm':
- return ['x86','x64']
-
- case 'arm64':
- return ['x64']
- }
-
- assert false
-}
-
// We use this class (vs variables) so that the static functions can access data here.
class Constants {
@@ -464,7 +452,7 @@ class Constants {
// 'gc_reliability_framework'
// 'illink'
// 'corefx_innerloop'
- // 'crossgen_comparison'
+ 'crossgen_comparison',
'pmi_asm_diffs',
'r2r_jitstress1',
'r2r_jitstress2',
@@ -930,7 +918,7 @@ def static isCrossGenComparisonScenario(def scenario) {
def static shouldGenerateCrossGenComparisonJob(def os, def architecture, def configuration, def scenario) {
assert isCrossGenComparisonScenario(scenario)
- return (os == 'Ubuntu' && architecture == 'arm' && (configuration == 'Checked' || configuration == 'Release'))
+ return ((os == 'Ubuntu' && architecture == 'arm') || (os == 'Ubuntu16.04' && architecture == 'arm64')) && (configuration == 'Checked' || configuration == 'Release')
}
def static getFxBranch(def branch) {
@@ -1333,7 +1321,7 @@ def static addNonPRTriggers(def job, def branch, def isPR, def architecture, def
// Check scenario.
switch (scenario) {
case 'crossgen_comparison':
- if (isFlowJob && os == 'Ubuntu' && architecture == 'arm' && (configuration == 'Checked' || configuration == 'Release')) {
+ if (isFlowJob && ((os == 'Ubuntu' && architecture == 'arm') || (os == 'Ubuntu16.04' && architecture == 'arm64')) && (configuration == 'Checked' || configuration == 'Release')) {
addPeriodicTriggerHelper(job, '@daily')
}
break
@@ -2568,14 +2556,14 @@ def static calculateBuildCommands(def newJob, def scenario, def branch, def isPR
def workspaceRelativeResultsDir = "_"
def workspaceRelativeArtifactsArchive = "${os}.${architecture}.${configuration}.${scenario}.zip"
def crossGenComparisonCmd = "python -u \${WORKSPACE}/${workspaceRelativeCrossGenComparisonScript} "
- getCrossArchitectures(os, architecture, scenario).each{ crossArch ->
- def crossGenExecutable = "\${WORKSPACE}/${workspaceRelativeProductBinDir}/${crossArch}/crossgen"
- def workspaceRelativeCrossArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${crossArch}_${architecture}.${configuration}"
-
- buildCommands += "${dockerCmd}mkdir -p \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
- buildCommands += "${dockerCmd}${crossGenComparisonCmd}crossgen_corelib --crossgen ${crossGenExecutable} --il_corelib \${WORKSPACE}/${workspaceRelativeCoreLib} --result_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
- buildCommands += "${dockerCmd}${crossGenComparisonCmd}crossgen_framework --crossgen ${crossGenExecutable} --core_root \${WORKSPACE}/${workspaceRelativeCoreRootDir} --result_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
- } // crossArch
+ def crossArch = "x64"
+ def crossGenExecutable = "\${WORKSPACE}/${workspaceRelativeProductBinDir}/${crossArch}/crossgen"
+ def workspaceRelativeCrossArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${crossArch}_${architecture}.${configuration}"
+
+ buildCommands += "${dockerCmd}mkdir -p \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
+ buildCommands += "${dockerCmd}${crossGenComparisonCmd}crossgen_corelib --crossgen ${crossGenExecutable} --il_corelib \${WORKSPACE}/${workspaceRelativeCoreLib} --result_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
+ buildCommands += "${dockerCmd}${crossGenComparisonCmd}crossgen_framework --crossgen ${crossGenExecutable} --core_root \${WORKSPACE}/${workspaceRelativeCoreRootDir} --result_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}"
+
buildCommands += "${dockerCmd}zip -r ${workspaceRelativeArtifactsArchive} ${workspaceRelativeCoreLib} ${workspaceRelativeCoreRootDir} ${workspaceRelativeCrossGenComparisonScript} ${workspaceRelativeResultsDir}"
Utilities.addArchival(newJob, "${workspaceRelativeArtifactsArchive}")
}
@@ -3525,6 +3513,9 @@ def static CreateNonWindowsCrossGenComparisonTestJob(def dslFactory, def project
def workspaceRelativeResultsDir = "_"
def workspaceRelativeNativeArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${architecture}_${architecture}.${configuration}"
+ def crossArch = "x64"
+ def workspaceRelativeCrossArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${crossArch}_${architecture}.${configuration}"
+
def jobFolder = getJobFolder(scenario)
def newJob = dslFactory.job(Utilities.getFullJobName(project, jobName, isPR, jobFolder)) {
parameters {
@@ -3555,18 +3546,12 @@ def static CreateNonWindowsCrossGenComparisonTestJob(def dslFactory, def project
shell("${crossGenComparisonCmd}crossgen_corelib --crossgen ${crossGenExecutable} --il_corelib \${WORKSPACE}/${workspaceRelativeCoreLib} --result_dir \${WORKSPACE}/${workspaceRelativeNativeArchResultDir}")
shell("${crossGenComparisonCmd}crossgen_framework --crossgen ${crossGenExecutable} --core_root \${WORKSPACE}/${workspaceRelativeCoreRootDir} --result_dir \${WORKSPACE}/${workspaceRelativeNativeArchResultDir}")
- getCrossArchitectures(os, architecture, scenario).each{ crossArch ->
- def workspaceRelativeCrossArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${crossArch}_${architecture}.${configuration}"
- shell("${crossGenComparisonCmd}compare --base_dir \${WORKSPACE}/${workspaceRelativeNativeArchResultDir} --diff_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}")
- } // crossArch
+ shell("${crossGenComparisonCmd}compare --base_dir \${WORKSPACE}/${workspaceRelativeNativeArchResultDir} --diff_dir \${WORKSPACE}/${workspaceRelativeCrossArchResultDir}")
} // steps
} // job
Utilities.addArchival(newJob, "${workspaceRelativeNativeArchResultDir}/**")
- getCrossArchitectures(os, architecture, scenario).each{ crossArch ->
- def workspaceRelativeCrossArchResultDir = "${workspaceRelativeResultsDir}/${osGroup}.${crossArch}_${architecture}.${configuration}"
- Utilities.addArchival(newJob, "${workspaceRelativeCrossArchResultDir}/**")
- } // crossArch
+ Utilities.addArchival(newJob, "${workspaceRelativeCrossArchResultDir}/**")
return newJob
}