Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Mitchell <mmitche@microsoft.com>2017-05-25 00:57:42 +0300
committerGitHub <noreply@github.com>2017-05-25 00:57:42 +0300
commite9b0db7b9f067df86a8494e26f557fe621ec268a (patch)
tree122a2cc73d6677ec825420cfd552232d70c5a00d /buildpipeline
parent62bfba654acf00e4b0fc0811be057c637b135bba (diff)
Enable portable pipelines by default in CI (#20250)
* Enable portable pipelines by default in CI * Enable the portable innerloop pipelines by default * Modify the pipelines so that they access incoming parameters with "param.". This typically has no effect, but without "param.", you're implictly accessing the environment. If the incoming parameter is boolean, then it would be converted to a string, meaning that boolean checks like if (foo) would return true. * IsNotWindowsImplementation should exclude Nano. This is a temporary fix.
Diffstat (limited to 'buildpipeline')
-rw-r--r--buildpipeline/pipelinejobs.groovy4
-rw-r--r--buildpipeline/portable-linux.groovy18
-rw-r--r--buildpipeline/portable-windows.groovy18
3 files changed, 20 insertions, 20 deletions
diff --git a/buildpipeline/pipelinejobs.groovy b/buildpipeline/pipelinejobs.groovy
index 11653465b5..bbe401f4ee 100644
--- a/buildpipeline/pipelinejobs.groovy
+++ b/buildpipeline/pipelinejobs.groovy
@@ -22,7 +22,7 @@ def linuxPipeline = Pipeline.createPipelineForGithub(this, project, branch, 'bui
// CentOS 7.3, RedHat 7.3, Debian 8.7, Ubuntu 14.04, Ubuntu 16.04, Ubuntu 16.10, openSuSE 42.2 and Fedora 25
// One for just innerloop.
- linuxPipeline.triggerPipelineOnGithubPRComment("Portable ${osName} ${configurationGroup} Build", "(?i).*test\\W+portable\\W+linux\\W+${configurationGroup}\\W+pipeline.*",
+ linuxPipeline.triggerPipelineOnEveryGithubPR("Portable ${osName} ${configurationGroup} Build", "(?i).*test\\W+portable\\W+linux\\W+${configurationGroup}\\W+pipeline.*",
['Config':configurationGroup, 'OuterLoop':false])
// Add one for outerloop
linuxPipeline.triggerPipelineOnGithubPRComment("Portable Outerloop ${osName} ${configurationGroup} Build", "(?i).*test\\W+outerloop\\W+portable\\W+linux\\W+${configurationGroup}\\W+pipeline.*",
@@ -40,7 +40,7 @@ def windowsPipeline = Pipeline.createPipelineForGithub(this, project, branch, 'b
// Windows 10, Windows 7, Windows 8.1 and Windows Nano
// One for just innerloop
- windowsPipeline.triggerPipelineOnGithubPRComment("Portable ${osName} ${configurationGroup} Build", "(?i).*test\\W+portable\\W+windows\\W+${configurationGroup}\\W+pipeline.*",
+ windowsPipeline.triggerPipelineOnEveryGithubPR("Portable ${osName} ${configurationGroup} Build", "(?i).*test\\W+portable\\W+windows\\W+${configurationGroup}\\W+pipeline.*",
['Config':configurationGroup, 'OuterLoop':false])
// Add one for outerloop
windowsPipeline.triggerPipelineOnGithubPRComment("Portable Outerloop ${osName} ${configurationGroup} Build", "(?i).*test\\W+outerloop\\W+portable\\W+windows\\W+${configurationGroup}\\W+pipeline.*",
diff --git a/buildpipeline/portable-linux.groovy b/buildpipeline/portable-linux.groovy
index dd677c0826..57274c1a31 100644
--- a/buildpipeline/portable-linux.groovy
+++ b/buildpipeline/portable-linux.groovy
@@ -1,9 +1,9 @@
@Library('dotnet-ci') _
-// Incoming parameters
+// Incoming parameters. Access with "params.<param name>".
// Config - Build configuration. Note that we don't using 'Configuration' since it's used
// in the build scripts and this can cause problems.
-// Outerloop - If true, runs outerloop, if false runs just innerloop
+// OuterLoop - If true, runs outerloop, if false runs just innerloop
def submittedHelixJson = null
@@ -35,14 +35,14 @@ simpleDockerNode('microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2') {
sh "./sync.sh -p -portable -- /p:ArchGroup=x64"
}
stage ('Build Product') {
- sh "./build.sh -buildArch=x64 -${Config} -portable"
+ sh "./build.sh -buildArch=x64 -${params.Config} -portable"
}
stage ('Build Tests') {
def additionalArgs = ''
- if (OuterLoop == true) {
+ if (params.OuterLoop) {
additionalArgs = '-Outerloop'
}
- sh "./build-tests.sh -buildArch=x64 -${Config} -SkipTests ${additionalArgs} -- /p:ArchiveTests=true /p:EnableDumpling=true"
+ sh "./build-tests.sh -buildArch=x64 -${params.Config} -SkipTests ${additionalArgs} -- /p:ArchiveTests=true /p:EnableDumpling=true"
}
stage ('Submit To Helix For Testing') {
// Bind the credentials
@@ -66,7 +66,7 @@ simpleDockerNode('microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2') {
'fedora.25.amd64.Open']
- sh "./Tools/msbuild.sh src/upload-tests.proj /p:ArchGroup=x64 /p:ConfigurationGroup=${Config} /p:TestProduct=corefx /p:TimeoutInSeconds=1200 /p:TargetOS=Linux /p:HelixJobType=test/functional/portable/cli/ /p:HelixSource=${helixSource} /p:BuildMoniker=${helixBuild} /p:HelixCreator=${helixCreator} /p:CloudDropAccountName=dotnetbuilddrops /p:CloudResultsAccountName=dotnetjobresults /p:CloudDropAccessToken=\$CloudDropAccessToken /p:CloudResultsAccessToken=\$OutputCloudResultsAccessToken /p:HelixApiEndpoint=https://helix.dot.net/api/2017-04-14/jobs /p:TargetQueues=${targetHelixQueues.join('+')} /p:HelixLogFolder=${WORKSPACE}/${logFolder}/ /p:HelixCorrelationInfoFileName=SubmittedHelixRuns.txt"
+ sh "./Tools/msbuild.sh src/upload-tests.proj /p:ArchGroup=x64 /p:ConfigurationGroup=${params.Config} /p:TestProduct=corefx /p:TimeoutInSeconds=1200 /p:TargetOS=Linux /p:HelixJobType=test/functional/portable/cli/ /p:HelixSource=${helixSource} /p:BuildMoniker=${helixBuild} /p:HelixCreator=${helixCreator} /p:CloudDropAccountName=dotnetbuilddrops /p:CloudResultsAccountName=dotnetjobresults /p:CloudDropAccessToken=\$CloudDropAccessToken /p:CloudResultsAccessToken=\$OutputCloudResultsAccessToken /p:HelixApiEndpoint=https://helix.dot.net/api/2017-04-14/jobs /p:TargetQueues=${targetHelixQueues.join('+')} /p:HelixLogFolder=${WORKSPACE}/${logFolder}/ /p:HelixCorrelationInfoFileName=SubmittedHelixRuns.txt"
submittedHelixJson = readJSON file: "${logFolder}/SubmittedHelixRuns.txt"
}
@@ -75,11 +75,11 @@ simpleDockerNode('microsoft/dotnet-buildtools-prereqs:rhel7_prereqs_2') {
stage ('Execute Tests') {
def contextBase
- if (OuterLoop == true) {
- contextBase = "Linux x64 Tests w/outer - ${Config}"
+ if (params.OuterLoop) {
+ contextBase = "Linux x64 Tests w/outer - ${params.Config}"
}
else {
- contextBase = "Linux x64 Tests - ${Config}"
+ contextBase = "Linux x64 Tests - ${params.Config}"
}
waitForHelixRuns(submittedHelixJson, contextBase)
} \ No newline at end of file
diff --git a/buildpipeline/portable-windows.groovy b/buildpipeline/portable-windows.groovy
index 8f977ac172..0651df8a86 100644
--- a/buildpipeline/portable-windows.groovy
+++ b/buildpipeline/portable-windows.groovy
@@ -1,9 +1,9 @@
@Library('dotnet-ci') _
-// Incoming parameters
+// Incoming parameters. Access with "params.<param name>".
// Config - Build configuration. Note that we don't using 'Configuration' since it's used
// in the build scripts and this can cause problems.
-// Outerloop - If true, runs outerloop, if false runs just innerloop
+// OuterLoop - If true, runs outerloop, if false runs just innerloop
def submittedHelixJson = null
@@ -24,14 +24,14 @@ simpleNode('Windows_NT','latest') {
bat '.\\build-managed.cmd -GenerateVersion'
}
stage ('Build Product') {
- bat ".\\build.cmd -buildArch=x64 -${Config} -portable -- /p:SignType=real /p:RuntimeOS=win10"
+ bat ".\\build.cmd -buildArch=x64 -${params.Config} -portable -- /p:SignType=real /p:RuntimeOS=win10"
}
stage ('Build Tests') {
def additionalArgs = ''
- if (OuterLoop == true) {
+ if (params.OuterLoop) {
additionalArgs = '-Outerloop'
}
- bat ".\\build-tests.cmd -buildArch=x64 -${Config} -SkipTests -portable ${additionalArgs} -- /p:RuntimeOS=win10 /p:ArchiveTests=true"
+ bat ".\\build-tests.cmd -buildArch=x64 -${params.Config} -SkipTests -portable ${additionalArgs} -- /p:RuntimeOS=win10 /p:ArchiveTests=true"
}
stage ('Submit To Helix For Testing') {
// Bind the credentials
@@ -50,7 +50,7 @@ simpleNode('Windows_NT','latest') {
'Windows.7.Amd64.Open',
'Windows.81.Amd64.Open']
- bat "\"%VS140COMNTOOLS%\\VsDevCmd.bat\" && msbuild src\\upload-tests.proj /p:ArchGroup=x64 /p:ConfigurationGroup=${Config} /p:TestProduct=corefx /p:TimeoutInSeconds=1200 /p:TargetOS=Windows_NT /p:HelixJobType=test/functional/portable/cli/ /p:HelixSource=${helixSource} /p:BuildMoniker=${helixBuild} /p:HelixCreator=${helixCreator} /p:CloudDropAccountName=dotnetbuilddrops /p:CloudResultsAccountName=dotnetjobresults /p:CloudDropAccessToken=%CloudDropAccessToken% /p:CloudResultsAccessToken=%OutputCloudResultsAccessToken% /p:HelixApiEndpoint=https://helix.dot.net/api/2017-04-14/jobs /p:TargetQueues=\"${targetHelixQueues.join(',')}\" /p:HelixLogFolder= /p:HelixLogFolder=${WORKSPACE}\\${logFolder}\\ /p:HelixCorrelationInfoFileName=SubmittedHelixRuns.txt"
+ bat "\"%VS140COMNTOOLS%\\VsDevCmd.bat\" && msbuild src\\upload-tests.proj /p:ArchGroup=x64 /p:ConfigurationGroup=${params.Config} /p:TestProduct=corefx /p:TimeoutInSeconds=1200 /p:TargetOS=Windows_NT /p:HelixJobType=test/functional/portable/cli/ /p:HelixSource=${helixSource} /p:BuildMoniker=${helixBuild} /p:HelixCreator=${helixCreator} /p:CloudDropAccountName=dotnetbuilddrops /p:CloudResultsAccountName=dotnetjobresults /p:CloudDropAccessToken=%CloudDropAccessToken% /p:CloudResultsAccessToken=%OutputCloudResultsAccessToken% /p:HelixApiEndpoint=https://helix.dot.net/api/2017-04-14/jobs /p:TargetQueues=\"${targetHelixQueues.join(',')}\" /p:HelixLogFolder= /p:HelixLogFolder=${WORKSPACE}\\${logFolder}\\ /p:HelixCorrelationInfoFileName=SubmittedHelixRuns.txt"
submittedHelixJson = readJSON file: "${logFolder}\\SubmittedHelixRuns.txt"
}
@@ -59,11 +59,11 @@ simpleNode('Windows_NT','latest') {
stage ('Execute Tests') {
def contextBase
- if (OuterLoop == true) {
- contextBase = "Win x64 tests w/outer - ${Config}"
+ if (params.OuterLoop) {
+ contextBase = "Win x64 tests w/outer - ${params.Config}"
}
else {
- contextBase = "Win x64 tests - ${Config}"
+ contextBase = "Win x64 tests - ${params.Config}"
}
waitForHelixRuns(submittedHelixJson, contextBase)
} \ No newline at end of file