@@ -1775,11 +1775,24 @@ combinedScenarios.each { scenario ->
1775
1775
def armemul_path = ' /opt/linux-arm-emulator'
1776
1776
def armrootfs_mountpath = ' /opt/linux-arm-emulator-root'
1777
1777
1778
- // Call the ARM emulator build script to cross build using the ARM emulator rootfs
1779
- buildCommands + = " ./ tests/scripts/arm32_ci_script.sh --emulatorPath= ${ armemul_path } --mountPath= ${ armrootfs_mountpath } --buildConfig= ${ lowerConfiguration } "
1778
+ // Unzip the Windows test binaries first. Exit with 0
1779
+ buildCommands + = " unzip -q -o ./bin/ tests/tests.zip -d ./bin/tests/Windows_NT.x64. ${ configuration } || exit 0 "
1780
1780
1781
+ // Unpack the corefx binaries
1782
+ buildCommands + = " tar -xf ./bin/build.tar.gz"
1781
1783
1782
- // Basic archiving of the build, no pal tests
1784
+ // Call the ARM emulator build script to cross build and test using the ARM emulator rootfs
1785
+ buildCommands + = """ ./tests/scripts/arm32_ci_script.sh \\
1786
+ --emulatorPath=${ armemul_path} \\
1787
+ --mountPath=${ armrootfs_mountpath} \\
1788
+ --buildConfig=${ lowerConfiguration} \\
1789
+ --testRootDir=./bin/tests/Windows_NT.x64.${ configuration} \\
1790
+ --coreFxNativeBinDir=./bin/Linux.arm-softfp.${ configuration} \\
1791
+ --coreFxBinDir=\" ./bin/Linux.AnyCPU.${ configuration} ;./bin/Unix.AnyCPU.${ configuration} ;./bin/AnyOS.AnyCPU.${ configuration} \" \\
1792
+ --testDirFile=./tests/testsRunningInsideARM.txt"""
1793
+
1794
+
1795
+ // Basic archiving of the build
1783
1796
Utilities . addArchival(newJob, " bin/Product/**" )
1784
1797
break
1785
1798
}
@@ -1803,6 +1816,35 @@ combinedScenarios.each { scenario ->
1803
1816
}
1804
1817
}
1805
1818
else {
1819
+ // Setup corefx and Windows test binaries for Linux ARM Emulator Build
1820
+ if (isLinuxEmulatorBuild) {
1821
+ // Define the Windows Tests and Corefx build job names
1822
+ def WindowTestsName = projectFolder + ' /' +
1823
+ Utilities . getFullJobName(project,
1824
+ getJobName(lowerConfiguration,
1825
+ ' x64' ,
1826
+ ' windows_nt' ,
1827
+ ' default' ,
1828
+ true ),
1829
+ false )
1830
+ def corefxFolder = Utilities . getFolderName(' dotnet/corefx' ) + ' /' +
1831
+ Utilities . getFolderName(branch)
1832
+
1833
+ // Copy the Windows test binaries and the Corefx build binaries
1834
+ copyArtifacts(WindowTestsName ) {
1835
+ excludePatterns(' **/testResults.xml' , ' **/*.ni.dll' )
1836
+ buildSelector {
1837
+ latestSuccessful(true )
1838
+ }
1839
+ }
1840
+ copyArtifacts(" ${ corefxFolder} /linuxarmemulator_cross_${ lowerConfiguration} " ) {
1841
+ includePatterns(' bin/build.tar.gz' )
1842
+ buildSelector {
1843
+ latestSuccessful(true )
1844
+ }
1845
+ }
1846
+ }
1847
+
1806
1848
buildCommands. each { buildCommand ->
1807
1849
shell(buildCommand)
1808
1850
}
0 commit comments