Add pr.yml ci.yml internal.yml pipelines to /eng/pipelines (#25385)
authorEgor Chesakov <Egor.Chesakov@microsoft.com>
Tue, 25 Jun 2019 19:59:49 +0000 (12:59 -0700)
committerGitHub <noreply@github.com>
Tue, 25 Jun 2019 19:59:49 +0000 (12:59 -0700)
azure-pipelines.yml
eng/pipelines/ci.yml [new file with mode: 0644]
eng/pipelines/internal.yml [new file with mode: 0644]
eng/pipelines/pr.yml [new file with mode: 0644]

index 4a934a6..e6243b6 100644 (file)
@@ -114,41 +114,12 @@ jobs:
         - Windows_NT_x86
       ${{ if and(in(variables['Build.Reason'], 'IndividualCI', 'BatchedCI'), eq(variables['Build.DefinitionName'], 'coreclr-ci')) }}:
         platformGroup: all
-      ${{ if in(variables['Build.DefinitionName'], 'coreclr-outerloop', 'coreclr-outerloop-jitstress', 'coreclr-outerloop-jitstressregs', 'coreclr-outerloop-jitstress2-jitstressregs') }}:
+      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop') }}:
         platformGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-arm') }}:
-        platforms:
-        - Linux_arm64
-        - Windows_NT_arm64
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-x86') }}:
-        platforms:
-        - Linux_x64
-        - OSX_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstressregs-x86') }}:
-        platforms:
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-      ${{ if in(variables['Build.DefinitionName'], 'coreclr-outerloop-gcstress0x3-gcstress0xc', 'coreclr-outerloop-gcstress-extra', 'coreclr-outerloop-r2r-extra') }}:
-        platformGroup: gcstress
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-r2r') }}:
-        platforms:
-        - Linux_arm
-        - Linux_arm64
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
       ${{ if in(variables['Build.DefinitionName'], 'coreclr-corefx', 'coreclr-corefx-jitstress', 'coreclr-corefx-jitstressregs', 'coreclr-corefx-jitstress2-jitstressregs') }}:
         platforms:
         - Linux_x64
         - Windows_NT_x64
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
-        platforms:
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
 
 #
 # Release builds
@@ -207,62 +178,15 @@ jobs:
         - Windows_NT_x64
         - Windows_NT_x86
         helixQueueGroup: pr
-      ${{ if in(variables['Build.DefinitionName'], 'coreclr-outerloop', 'coreclr-outerloop-jitstress', 'coreclr-outerloop-jitstressregs', 'coreclr-outerloop-jitstress2-jitstressregs') }}:
+      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop') }}:
         platformGroup: all
         helixQueueGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-arm') }}:
-        platforms:
-        - Linux_arm64
-        - Windows_NT_arm64
-        helixQueueGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-x86') }}:
-        platforms:
-        - Linux_x64
-        - OSX_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-        helixQueueGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstressregs-x86') }}:
-        platforms:
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-        helixQueueGroup: all
-      ${{ if in(variables['Build.DefinitionName'], 'coreclr-outerloop-gcstress0x3-gcstress0xc', 'coreclr-outerloop-gcstress-extra') }}:
-        platformGroup: gcstress
-        helixQueueGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
-        platforms:
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-        helixQueueGroup: all
       jobParameters:
         ${{ if eq(variables['Build.DefinitionName'], 'coreclr-ci') }}:
           testGroup: innerloop
         ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop') }}:
           testGroup: outerloop
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress') }}:
-          testGroup: jitstress
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-arm') }}:
-          testGroup: jitstress-isas-arm
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress-isas-x86') }}:
-          testGroup: jitstress-isas-x86
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstressregs-x86') }}:
-          testGroup: jitstressregs-x86
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstressregs') }}:
-          testGroup: jitstressregs
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-jitstress2-jitstressregs') }}:
-          testGroup: jitstress2-jitstressregs
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-gcstress0x3-gcstress0xc') }}:
-          testGroup: gcstress0x3-gcstress0xc
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-gcstress-extra') }}:
-          testGroup: gcstress-extra
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
-          testGroup: outerloop
-          runInUnloadableContext: true
-          displayNameArgs: RunInContext
-
+        
 # ReadyToRun test jobs that are triggered by default from a PR.
 
 - ${{ if eq(variables['System.TeamProject'], 'public') }}:
@@ -277,24 +201,9 @@ jobs:
         - Windows_NT_x64
         - Windows_NT_x86
         helixQueueGroup: pr
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-r2r') }}:
-        platforms:
-        - Linux_arm
-        - Linux_arm64
-        - Linux_x64
-        - Windows_NT_x64
-        - Windows_NT_x86
-        helixQueueGroup: all
-      ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-r2r-extra') }}:
-        platformGroup: gcstress # r2r-extra testGroup runs gcstress15 scenario
-        helixQueueGroup: all
       jobParameters:
         ${{ if eq(variables['Build.DefinitionName'], 'coreclr-ci') }}:
           testGroup: innerloop
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-r2r') }}:
-          testGroup: outerloop
-        ${{ if eq(variables['Build.DefinitionName'], 'coreclr-outerloop-r2r-extra') }}:
-          testGroup: r2r-extra
         readyToRun: true
         displayNameArgs: R2R
 
diff --git a/eng/pipelines/ci.yml b/eng/pipelines/ci.yml
new file mode 100644 (file)
index 0000000..354a129
--- /dev/null
@@ -0,0 +1,92 @@
+trigger:
+- master
+
+pr: none
+
+jobs:
+#
+# Debug builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: debug
+    platforms:
+    - Linux_arm
+    - Linux_arm64
+    - Linux_musl_arm64
+    - Linux_musl_x64
+    - Linux_rhel6_x64
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_arm
+    - Windows_NT_arm64
+
+#
+# Checked builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: checked
+    platformGroup: all
+
+#
+# Release builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: release
+    platforms:
+    - Linux_arm
+    - Linux_musl_arm64
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_x86
+
+#
+# Checked test builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: checked
+    platformGroup: all
+    helixQueueGroup: ci
+    jobParameters:
+      testGroup: outerloop
+
+#
+# ReadyToRun test jobs
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: checked
+    platforms:
+    - Linux_arm64
+    - Linux_musl_x64
+    - Linux_musl_arm64
+    - Linux_rhel6_x64
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_x64
+    - Windows_NT_x86
+    - Windows_NT_arm
+    - Windows_NT_arm64
+    helixQueueGroup: ci
+    jobParameters:
+      testGroup: outerloop
+      readyToRun: true
+      displayNameArgs: R2R
+
+#
+# Formatting
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: format-job.yml
+    platforms:
+    - Linux_x64
+    - Windows_NT_x64
diff --git a/eng/pipelines/internal.yml b/eng/pipelines/internal.yml
new file mode 100644 (file)
index 0000000..38bf9f1
--- /dev/null
@@ -0,0 +1,84 @@
+trigger:
+  batch: true
+  branches:
+    include:
+    - release/3.0
+
+pr: none
+
+schedules:
+- cron: "0 13 * * *"
+  displayName: Mon through Sun at 5:00 AM (UTC-8:00)
+  branches:
+    include:
+    - master
+  always: true
+- cron: "0 1 * * *"
+  displayName: Mon through Sun at 5:00 PM (UTC-8:00)
+  branches:
+    include:
+    - master
+  always: true
+
+jobs:
+#
+# Release builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: release
+    platformGroup: all
+    jobParameters:
+      # Publishing packages to blob feeds sometimes takes a long time
+      # due to waiting for an exclusive lock on the feed.
+      # See https://github.com/dotnet/arcade/blob/master/Documentation/CorePackages/AsyncPublishing.md
+      timeoutInMinutes: 120
+
+#
+# Release test builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: release
+    platformGroup: all
+    helixQueueGroup: all
+    jobParameters:
+      testGroup: outerloop
+
+#
+# ReadyToRun test jobs
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: release
+    platformGroup: all
+    helixQueueGroup: all
+    jobParameters:
+      testGroup: outerloop
+      readyToRun: true
+      displayNameArgs: R2R
+
+# Publish build information to Build Assets Registry
+
+# This job gathers build assets from the pipeline (from each official
+# product build job), and publishes them to the build assets
+# registry. Its dependencies should be updated to include all of the
+# official builds if we add more platform/arch combinations.
+
+- template: /eng/finalize-publish.yml
+  parameters:
+    dependsOn:
+    - build_Linux_arm_release
+    - build_Linux_arm64_release
+    - build_Linux_musl_x64_release
+    - build_Linux_musl_arm64_release
+    - build_Linux_rhel6_x64_release
+    - build_Linux_x64_release
+    - build_OSX_x64_release
+    - build_Windows_NT_x64_release
+    - build_Windows_NT_x86_release
+    - build_Windows_NT_arm_release
+    - build_Windows_NT_arm64_release
diff --git a/eng/pipelines/pr.yml b/eng/pipelines/pr.yml
new file mode 100644 (file)
index 0000000..a84033b
--- /dev/null
@@ -0,0 +1,130 @@
+trigger: none
+
+pr:
+- master
+- release/2.1
+- release/2.2
+- release/3.0
+
+jobs:
+#
+# Debug builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: debug
+    platforms:
+    - Windows_NT_x64
+    - Windows_NT_x86
+
+#
+# Checked builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: checked
+    platforms:
+    - Linux_arm
+    - Linux_arm64
+    - Linux_musl_x64
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_arm
+    - Windows_NT_arm64
+    - Windows_NT_x64
+    - Windows_NT_x86
+
+#
+# Release builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: build-job.yml
+    buildConfig: release
+    platforms:
+    - Linux_arm64
+    - Linux_musl_x64
+    - Linux_rhel6_x64
+    - Windows_NT_arm
+    - Windows_NT_arm64
+    - Windows_NT_x64
+
+#
+# Checked test builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: checked
+    platforms:
+    - Linux_arm
+    - Linux_arm64
+    - Linux_musl_x64
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_arm
+    - Windows_NT_arm64
+    - Windows_NT_x64
+    - Windows_NT_x86
+    helixQueueGroup: pr
+    jobParameters:
+      testGroup: innerloop
+
+#
+# ReadyToRun test jobs
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: checked
+    platforms:
+    - Linux_x64
+    - OSX_x64
+    - Windows_NT_x64
+    - Windows_NT_x86
+    helixQueueGroup: pr
+    jobParameters:
+      testGroup: innerloop
+      readyToRun: true
+      displayNameArgs: R2R
+
+#
+# CoreFX test runs against CoreCLR
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: checked
+    platforms:
+    - Linux_x64
+    - Windows_NT_x64
+    helixQueueGroup: pr
+    jobParameters:
+      testGroup: innerloop
+      corefxTests: true
+      displayNameArgs: CoreFX
+
+#
+# Release test builds
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: test-job.yml
+    buildConfig: release
+    platforms:
+    - Linux_musl_x64
+    helixQueueGroup: pr
+    jobParameters:
+      testGroup: innerloop
+
+#
+# Formatting
+#
+- template: /eng/platform-matrix.yml
+  parameters:
+    jobTemplate: format-job.yml
+    platforms:
+    - Linux_x64
+    - Windows_NT_x64