Add rich nav specific pipeline to enable Rich Navigation (#43374)
authorJessica Petty <jepetty@microsoft.com>
Wed, 3 Feb 2021 20:20:06 +0000 (12:20 -0800)
committerGitHub <noreply@github.com>
Wed, 3 Feb 2021 20:20:06 +0000 (12:20 -0800)
* Add new Rich Nav specific pipeline, temporarily enable RichNav in CI

* Temporarily fix template issue in arcade to test build

* Fix typo in build-job.yml

* Add Rich Nav package feed

* Thread 'enableRichCodeNavigation' parameter through, respond to PR feedback

* Remove change from templates

* Simplify templating and building after insight from Santiago

* Respond to pull request feedback from Santiago

* Specify environment manually, enable for allConfigurations

* Flow environment parameter through to build script

* HACK HACK HACK: replace normal CI with Rich Nav

* Increase timeout to 4 hours

* Empty commit to force another build

* Push empty commit to re-trigger build

* empty commit to force build

* fix build pipeline - remove script that no longer exists

* Add missing task

* Try changing the platform that is building this

* Update Rich Nav pipeline, revert changes to runtime pipeline

NuGet.config
eng/pipelines/common/global-build-job.yml
eng/pipelines/runtime-richnav.yml [new file with mode: 0644]
eng/pipelines/runtime.yml

index 5f29306..d99698b 100644 (file)
@@ -18,6 +18,8 @@
     <add key="dotnet5-transport" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet5-transport/nuget/v3/index.json" />
     <add key="dotnet6" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6/nuget/v3/index.json" />
     <add key="dotnet6-transport" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet6-transport/nuget/v3/index.json" />
+    <!-- Used for the Rich Navigation indexing task -->
+    <add key="richnav" value="https://pkgs.dev.azure.com/azure-public/vside/_packaging/vs-buildservices/nuget/v3/index.json" />
   </packageSources>
   <disabledPackageSources>
     <clear />
index d006c2c..3baff96 100644 (file)
@@ -25,6 +25,9 @@ parameters:
   testResultsFormat: ''
   extraStepsTemplate: ''
   extraStepsParameters: {}
+  enableRichCodeNavigation: false
+  richCodeNavigationLanguage: 'csharp'
+  richCodeNavigationEnvironment: 'production'
 
 jobs:
 - template: /eng/common/templates/job/job.yml
@@ -40,6 +43,9 @@ jobs:
 
     workspace:
       clean: all
+    enableRichCodeNavigation: ${{ parameters.enableRichCodeNavigation }}
+    richCodeNavigationLanguage: ${{ parameters.richCodeNavigationLanguage }}
+    richCodeNavigationEnvironment: ${{ parameters.richCodeNavigationEnvironment }}
 
     ${{ if and(ne(parameters.dependOnEvaluatePaths, true),ne(parameters.dependsOn,'')) }}:
       dependsOn: ${{ parameters.dependsOn }}
@@ -73,6 +79,12 @@ jobs:
           value: /p:OfficialBuildId=$(Build.BuildNumber)
         ${{ if ne(parameters.isOfficialBuild, true) }}:
           value: ''
+      
+      - name: _richCodeNavigationParam
+        ${{ if eq(parameters.enableRichCodeNavigation, true) }}:
+          value: /p:EnableRichCodeNavigation=true
+        ${{ if ne(parameters.enableRichCodeNavigation, true) }}:
+          value: ''
 
       - ${{ if eq(parameters.osGroup, 'Android') }}:
         - name: ANDROID_OPENSSL_AAR
@@ -106,7 +118,7 @@ jobs:
         displayName: Disk Usage before Build
 
     # Build
-    - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -ci -arch ${{ parameters.archType }} $(_osParameter) ${{ parameters.buildArgs }} $(_officialBuildParameter) $(_crossBuildPropertyArg) $(_cxx11Parameter)
+    - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -ci -arch ${{ parameters.archType }} $(_osParameter) ${{ parameters.buildArgs }} $(_officialBuildParameter) $(_crossBuildPropertyArg) $(_cxx11Parameter) $(_richCodeNavigationParam)
       displayName: Build product
       ${{ if eq(parameters.useContinueOnErrorDuringBuild, true) }}:
         continueOnError: ${{ parameters.shouldContinueOnError }}
diff --git a/eng/pipelines/runtime-richnav.yml b/eng/pipelines/runtime-richnav.yml
new file mode 100644 (file)
index 0000000..58ca2d1
--- /dev/null
@@ -0,0 +1,41 @@
+trigger:
+  branches:
+    include:
+      - master
+      - release/*.*
+
+variables:
+  - template: /eng/pipelines/common/variables.yml
+
+jobs:
+#
+# Evaluate paths
+#
+- ${{ if eq(variables.dependOnEvaluatePaths, true) }}:
+  - template: /eng/pipelines/common/evaluate-default-paths.yml
+
+- template: /eng/pipelines/common/platform-matrix.yml
+  parameters:
+    jobTemplate: /eng/pipelines/common/global-build-job.yml
+    buildConfig: debug
+    platforms:
+      - windows_x64
+    jobParameters:
+      enableRichCodeNavigation: true
+      richCodeNavigationEnvironment: "production"
+      richCodeNavigationLanguage: "csharp"
+      timeoutInMinutes: 240
+      buildArgs: -s libs.ref+libs.src -c debug -allConfigurations
+
+- template: /eng/pipelines/common/platform-matrix.yml
+  parameters:
+    jobTemplate: /eng/pipelines/common/global-build-job.yml
+    buildConfig: debug
+    platforms:
+      - windows_x64
+    jobParameters:
+      enableRichCodeNavigation: true
+      nameSuffix: Mono
+      richCodeNavigationEnvironment: "production"
+      richCodeNavigationLanguage: "csharp,cpp"
+      buildArgs: -s mono -c debug
index 14b5cf0..23ff8d9 100644 (file)
@@ -1050,4 +1050,4 @@ jobs:
         or(
           eq(dependencies.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true),
           eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
-          eq(variables['isFullMatrix'], true))
+          eq(variables['isFullMatrix'], true))
\ No newline at end of file