From b8c2943495150d50f4fb6fb290a8b0d060e6a0c4 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 16:26:50 -0700 Subject: [PATCH 01/15] Change generate-offsets jobs to be based on the global build job --- .../mono/templates/generate-offsets.yml | 88 ------------------- eng/pipelines/runtime-official.yml | 59 +++++++++---- eng/pipelines/runtime.yml | 51 +++++++---- 3 files changed, 80 insertions(+), 118 deletions(-) delete mode 100644 eng/pipelines/mono/templates/generate-offsets.yml diff --git a/eng/pipelines/mono/templates/generate-offsets.yml b/eng/pipelines/mono/templates/generate-offsets.yml deleted file mode 100644 index 8d8d781dd3262e..00000000000000 --- a/eng/pipelines/mono/templates/generate-offsets.yml +++ /dev/null @@ -1,88 +0,0 @@ -parameters: - buildConfig: 'Debug' - osGroup: '' - osSubGroup: '' - platform: '' - container: '' - timeoutInMinutes: '' - variables: {} - pool: '' - condition: true - isOfficialBuild: false - templatePath: 'templates' - -### Product build -jobs: -- template: /eng/pipelines/common/templates/runtimes/xplat-job.yml - parameters: - templatePath: ${{ parameters.templatePath }} - buildConfig: ${{ parameters.buildConfig }} - osGroup: ${{ parameters.osGroup }} - osSubGroup: ${{ parameters.osSubGroup }} - helixType: 'build/product/' - enableMicrobuild: true - pool: ${{ parameters.pool }} - condition: ${{ parameters.condition }} - dependOnEvaluatePaths: ${{ parameters.dependOnEvaluatePaths }} - logsName: 'BuildLogs_Attempt$(System.JobAttempt)_Mono_Offsets_$(osGroup)$(osSubGroup)' - - # Compute job name from template parameters - name: ${{ format('mono_{0}{1}_offsets', parameters.osGroup, parameters.osSubGroup) }} - displayName: ${{ format('Mono {0}{1} AOT offsets', parameters.osGroup, parameters.osSubGroup) }} - - # Run all steps in the container. - # Note that the containers are defined in platform-matrix.yml - container: ${{ parameters.container }} - - timeoutInMinutes: ${{ parameters.timeoutInMinutes }} - - gatherAssetManifests: true - variables: - - name: osGroup - value: ${{ parameters.osGroup }} - - name: osSubGroup - value: ${{ parameters.osSubGroup }} - - name: officialBuildIdArg - value: '' - - ${{ if eq(parameters.isOfficialBuild, true) }}: - - name: officialBuildIdArg - value: '/p:OfficialBuildId=$(Build.BuildNumber)' - - name: osOverride - value: -os linux - - name: archType - value: x64 - - ${{ parameters.variables }} - - steps: - - # Install native dependencies - # Linux builds use docker images with dependencies preinstalled, - # and FreeBSD builds use a build agent with dependencies - # preinstalled, so we only need this step for OSX and Windows. - - ${{ if in(parameters.osGroup, 'osx', 'maccatalyst', 'ios', 'iossimulator', 'tvos', 'tvossimulator') }}: - - script: $(Build.SourcesDirectory)/eng/install-native-dependencies.sh $(osGroup) - displayName: Install native dependencies - - # Build - - ${{ if ne(parameters.osGroup, 'windows') }}: - - script: ./build$(scriptExt) -subset mono.aotcross -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoGenerateOffsetsOSGroups=$(osGroup) - displayName: Generate AOT offsets - - ${{ if eq(parameters.osGroup, 'windows') }}: - - script: build$(scriptExt) -subset mono.aotcross -c $(buildConfig) -arch $(archType) $(osOverride) -ci $(officialBuildIdArg) /p:MonoGenerateOffsetsOSGroups=$(osGroup) - displayName: Generate AOT offsets - - # Upload offset files - - task: CopyFiles@2 - displayName: Collect offset files - inputs: - sourceFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/' - contents: '**/offsets-*.h' - targetFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles/' - - - template: /eng/pipelines/common/templates/publish-pipeline-artifacts.yml - parameters: - displayName: Upload offset files - isOfficialBuild: ${{ parameters.isOfficialBuild }} - inputs: - targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' - artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index 23f19405abea7c..fc1ffbec7a6f26 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -381,11 +381,13 @@ extends: parameters: name: MonoRuntimePacks + # Build Mono AOT offset headers once, for consumption elsewhere + # Only when mono changed # - template: /eng/pipelines/common/platform-matrix.yml parameters: - jobTemplate: /eng/pipelines/mono/templates/generate-offsets.yml + jobTemplate: /eng/pipelines/common/global-build-job.yml buildConfig: release platforms: - android_x64 @@ -395,8 +397,35 @@ extends: - ios_arm64 - maccatalyst_x64 jobParameters: - templatePath: 'templates-official' - isOfficialBuild: ${{ variables.isOfficialBuild }} + nameSuffix: MonoAOTOffsets + buildArgs: -s mono.aotcross -c $(_BuildConfig) /p:MonoGenerateOffsetsOSGroups=$(osGroup) + variables: + - name: _osParameter + value: -os linux + - name: _archParameter + value: -arch x64 + postBuildSteps: + # Upload offset files + - task: CopyFiles@2 + displayName: Collect offset files + inputs: + sourceFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/' + contents: '**/offsets-*.h' + targetFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles/' + + - template: /eng/pipelines/common/templates/publish-pipeline-artifacts.yml + parameters: + displayName: Upload offset files + isOfficialBuild: ${{ variables.isOfficialBuild }} + inputs: + targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' + artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' + # needed by crossaot + condition: >- + or( + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), + eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), + eq(variables['isRollingBuild'], true)) # # Build Mono release AOT cross-compilers @@ -418,9 +447,9 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -446,9 +475,9 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -474,12 +503,12 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets - - mono_tvos_offsets - - mono_ios_offsets - - mono_maccatalyst_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets + - build_tvos_arm64_release_MonoAOTOffsets + - build_ios_arm64_release_MonoAOTOffsets + - build_maccatalyst_x64_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index ace914f9ecf60b..772d95c11f41a2 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -753,8 +753,7 @@ extends: # - template: /eng/pipelines/common/platform-matrix.yml parameters: - jobTemplate: /eng/pipelines/mono/templates/generate-offsets.yml - templatePath: 'templates' + jobTemplate: /eng/pipelines/common/global-build-job.yml buildConfig: release platforms: - android_x64 @@ -764,7 +763,29 @@ extends: - ios_arm64 - maccatalyst_x64 jobParameters: - isOfficialBuild: false + nameSuffix: MonoAOTOffsets + buildArgs: -s mono.aotcross -c $(_BuildConfig) /p:MonoGenerateOffsetsOSGroups=$(osGroup) + variables: + - name: _osParameter + value: -os linux + - name: _archParameter + value: -arch x64 + postBuildSteps: + # Upload offset files + - task: CopyFiles@2 + displayName: Collect offset files + inputs: + sourceFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/' + contents: '**/offsets-*.h' + targetFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles/' + + - template: /eng/pipelines/common/templates/publish-pipeline-artifacts.yml + parameters: + displayName: Upload offset files + isOfficialBuild: false + inputs: + targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' + artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' # needed by crossaot condition: >- or( @@ -1245,9 +1266,9 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -1272,9 +1293,9 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -1303,12 +1324,12 @@ extends: nameSuffix: CrossAOT_Mono runtimeVariant: crossaot dependsOn: - - mono_android_offsets - - mono_browser_offsets - - mono_wasi_offsets - - mono_tvos_offsets - - mono_ios_offsets - - mono_maccatalyst_offsets + - build_android_x64_release_MonoAOTOffsets + - build_browser_wasm_release_MonoAOTOffsets + - build_wasi_wasm_release_MonoAOTOffsets + - build_tvos_arm64_release_MonoAOTOffsets + - build_ios_arm64_release_MonoAOTOffsets + - build_maccatalyst_x64_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser From 7db38d12f917f352ef67b9a56891f2c4c4238878 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 16:34:51 -0700 Subject: [PATCH 02/15] Convert the workloads build to a global build job build --- .../mono/templates/workloads-build.yml | 117 ------------------ eng/pipelines/runtime-official.yml | 71 ++++++++++- 2 files changed, 69 insertions(+), 119 deletions(-) delete mode 100644 eng/pipelines/mono/templates/workloads-build.yml diff --git a/eng/pipelines/mono/templates/workloads-build.yml b/eng/pipelines/mono/templates/workloads-build.yml deleted file mode 100644 index 89404db6b29201..00000000000000 --- a/eng/pipelines/mono/templates/workloads-build.yml +++ /dev/null @@ -1,117 +0,0 @@ -parameters: - archType: '' - buildConfig: '' - container: '' - dependsOn: [] - isOfficialBuild: false - osGroup: '' - osSubgroup: '' - platform: '' - pool: '' - runtimeVariant: '' - testGroup: '' - timeoutInMinutes: '' - templatePath: 'templates' - variables: {} - -jobs: -- template: /eng/pipelines/common/templates/runtimes/xplat-job.yml - parameters: - templatePath: ${{ parameters.templatePath }} - archType: ${{ parameters.archType }} - buildConfig: ${{ parameters.buildConfig }} - container: ${{ parameters.container }} - condition: and(succeeded(), ${{ parameters.isOfficialBuild }}) - helixType: 'build/product/' - osGroup: ${{ parameters.osGroup }} - osSubgroup: ${{ parameters.osSubgroup }} - pool: ${{ parameters.pool }} - runtimeVariant: ${{ parameters.runtimeVariant }} - timeoutInMinutes: ${{ parameters.timeoutInMinutes }} - logsName: WorkloadLogs_Attempt$(System.JobAttempt) - - dependsOn: ${{ parameters.dependsOn }} - - name: workloadsbuild - displayName: Build Workloads - - variables: - - name: officialBuildIdArg - value: '' - - ${{ if eq(parameters.isOfficialBuild, true) }}: - - name: officialBuildIdArg - value: '/p:OfficialBuildId=$(Build.BuildNumber)' - - name: SignType - value: $[ coalesce(variables.OfficialSignType, 'real') ] - - name: workloadPackagesPath - value: $(Build.SourcesDirectory)/artifacts/workloadPackages - - name: workloadArtifactsPath - value: $(Build.SourcesDirectory)/artifacts/workloads - - ${{ parameters.variables }} - - steps: - - task: DownloadPipelineArtifact@2 - inputs: - artifact: 'IntermediateArtifacts' - path: $(workloadPackagesPath) - patterns: | - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.browser-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.wasi-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.wasi-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.android-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.browser-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.ios-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.iossimulator-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.tvos-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.tvossimulator-*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.wasi-wasm*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net6.Manifest*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net7.Manifest*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net8.Manifest*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoTargets.Sdk*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoAOTCompiler.Task*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Sdk*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Wasi*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Templates*.nupkg - IntermediateArtifacts/windows_arm64/Shipping/Microsoft.NETCore.App.Runtime.win-arm64*.nupkg - IntermediateArtifacts/windows_x64/Shipping/Microsoft.NETCore.App.Runtime.win-x64*.nupkg - IntermediateArtifacts/windows_x86/Shipping/Microsoft.NETCore.App.Runtime.win-x86*.nupkg - IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Sdk.WebAssembly.Pack*.nupkg - - - task: CopyFiles@2 - displayName: Flatten packages - inputs: - sourceFolder: $(workloadPackagesPath) - contents: '*/Shipping/*.nupkg' - cleanTargetFolder: false - targetFolder: $(workloadPackagesPath) - flattenFolders: true - - - script: $(Build.SourcesDirectory)$(dir)build$(scriptExt) -subset mono.workloads -arch $(archType) -c $(buildConfig) $(officialBuildIdArg) -ci - displayName: Build workload artifacts - - # Upload packages wrapping msis - - template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml - parameters: - name: workloads - - # Delete wixpdb files before they are uploaded to artifacts - - task: DeleteFiles@1 - displayName: Delete wixpdb's - inputs: - SourceFolder: $(workloadArtifactsPath) - Contents: '*.wixpdb' - - # Upload artifacts to be used for generating VS components - - template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml - parameters: - name: workloads-vs - publishPackagesCondition: false - publishVSSetupCondition: true diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index fc1ffbec7a6f26..fe89fa40da52cd 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -628,12 +628,79 @@ extends: # - template: /eng/pipelines/common/platform-matrix.yml parameters: - jobTemplate: /eng/pipelines/mono/templates/workloads-build.yml + jobTemplate: /eng/pipelines/common/global-build-job.yml buildConfig: release platforms: - windows_x64 jobParameters: - templatePath: 'templates-official' + nameSuffix: Workloads + preBuildSteps: + - task: DownloadPipelineArtifact@2 + inputs: + artifact: 'IntermediateArtifacts' + path: $(Build.SourcesDirectory)/artifacts/workloadPackages + patterns: | + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.android-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.android-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.browser-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.browser-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-x64.Cross.wasi-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.AOT.win-arm64.Cross.wasi-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.android-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.browser-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.ios-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.iossimulator-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.multithread.browser-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.tvos-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.tvossimulator-*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NETCore.App.Runtime.Mono.wasi-wasm*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net6.Manifest*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net7.Manifest*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Workload.Mono.ToolChain.net8.Manifest*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoTargets.Sdk*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.MonoAOTCompiler.Task*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Sdk*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Wasi*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Runtime.WebAssembly.Templates*.nupkg + IntermediateArtifacts/windows_arm64/Shipping/Microsoft.NETCore.App.Runtime.win-arm64*.nupkg + IntermediateArtifacts/windows_x64/Shipping/Microsoft.NETCore.App.Runtime.win-x64*.nupkg + IntermediateArtifacts/windows_x86/Shipping/Microsoft.NETCore.App.Runtime.win-x86*.nupkg + IntermediateArtifacts/MonoRuntimePacks/Shipping/Microsoft.NET.Sdk.WebAssembly.Pack*.nupkg + + - task: CopyFiles@2 + displayName: Flatten packages + inputs: + sourceFolder: $(Build.SourcesDirectory)/artifacts/workloadPackages + contents: '*/Shipping/*.nupkg' + cleanTargetFolder: false + targetFolder: $(Build.SourcesDirectory)/artifacts/workloadPackages + flattenFolders: true + + buildArgs: -s mono.workloads -c $(_BuildConfig) + + postBuildSteps: + # Upload packages wrapping msis + - template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml + parameters: + name: workloads + + # Delete wixpdb files before they are uploaded to artifacts + - task: DeleteFiles@1 + displayName: Delete wixpdb's + inputs: + SourceFolder: $(Build.SourcesDirectory)/artifacts/workloads + Contents: '*.wixpdb' + + # Upload artifacts to be used for generating VS components + - template: /eng/pipelines/common/upload-intermediate-artifacts-step.yml + parameters: + name: workloads-vs + publishPackagesCondition: false + publishVSSetupCondition: always() + isOfficialBuild: ${{ variables.isOfficialBuild }} timeoutInMinutes: 120 dependsOn: From 0092fb82c23ea6a94cdc7f5a83d2b7b421c3f195 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 16:58:49 -0700 Subject: [PATCH 03/15] Move prepare-signed-artifacts onto Arcade's templates --- .../jobs/prepare-signed-artifacts.yml | 105 +++++++----------- 1 file changed, 41 insertions(+), 64 deletions(-) diff --git a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml index 24fd2df48d74be..55ac08d15b14b0 100644 --- a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml +++ b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml @@ -1,76 +1,53 @@ parameters: - dependsOn: [] PublishRidAgnosticPackagesFromPlatform: '' isOfficialBuild: false logArtifactName: 'Logs-PrepareSignedArtifacts_Attempt$(System.JobAttempt)' jobs: -- job: PrepareSignedArtifacts - displayName: Prepare Signed Artifacts - dependsOn: ${{ parameters.dependsOn }} - pool: - name: $(DncEngInternalBuildPool) - demands: ImageOverride -equals 1es-windows-2022 - # Double the default timeout. - timeoutInMinutes: 240 - workspace: - clean: all - - variables: - - name: SignType - value: $[ coalesce(variables.OfficialSignType, 'real') ] - - templateContext: - outputs: - - output: pipelineArtifact - displayName: 'Publish BuildLogs' - condition: succeededOrFailed() - targetPath: '$(Build.StagingDirectory)\BuildLogs' - artifactName: ${{ parameters.logArtifactName }} - - steps: - - checkout: self - clean: true - fetchDepth: 20 - - - ${{ if eq(parameters.isOfficialBuild, true) }}: - - task: NuGetAuthenticate@1 - - - task: MicroBuildSigningPlugin@2 - displayName: Install MicroBuild plugin for Signing - inputs: - signType: $(SignType) - zipSources: false - feedSource: https://dnceng.pkgs.visualstudio.com/_packaging/MicroBuildToolset/nuget/v3/index.json - continueOnError: false - condition: and(succeeded(), - in(variables['SignType'], 'real', 'test')) - - - task: DownloadBuildArtifacts@0 - displayName: Download IntermediateArtifacts - inputs: - artifactName: IntermediateArtifacts - downloadPath: $(Build.SourcesDirectory)\artifacts\PackageDownload - checkDownloadedFiles: true - - - script: >- +- template: /eng/common/templates-official/job/job.yml + parameters: + name: 'PrepareSignedArtifacts' + displayName: 'Prepare Signed Artifacts' + + pool: + name: $(DncEngInternalBuildPool) + demands: ImageOverride -equals 1es-windows-2022 + + # Double the default timeout. + timeoutInMinutes: 240 + + workspace: + clean: all + + enableMicrobuild: true + + variables: + - name: '_SignType' + value: $[ coalesce(variables.OfficialSignType, 'real') ] + + templateContext: + inputs: + - input: pipelineArtifact + artifactName: IntermediateArtifacts + targetPath: $(Build.SourcesDirectory)\artifacts\PackageDownload + outputs: + - output: pipelineArtifact + displayName: 'Publish BuildLogs' + condition: succeededOrFailed() + targetPath: '$(Build.StagingDirectory)\BuildLogs' + artifactName: ${{ parameters.logArtifactName }} + + steps: + - checkout: self + clean: true + fetchDepth: 20 + - script: >- build.cmd -ci -subset publish -configuration Release /p:PublishRidAgnosticPackagesFromPlatform=${{ parameters.PublishRidAgnosticPackagesFromPlatform }} /p:OfficialBuildId=$(Build.BuildNumber) - /p:SignType=$(SignType) - /p:DotNetSignType=$(SignType) + /p:SignType=$(_SignType) + /p:DotNetSignType=$(_SignType) /bl:$(Build.SourcesDirectory)\prepare-artifacts.binlog - displayName: Prepare artifacts and upload to build - - - task: CopyFiles@2 - displayName: Copy Files to $(Build.StagingDirectory)\BuildLogs - inputs: - SourceFolder: '$(Build.SourcesDirectory)' - Contents: | - **/*.log - **/*.binlog - TargetFolder: '$(Build.StagingDirectory)\BuildLogs' - continueOnError: true - condition: succeededOrFailed() \ No newline at end of file + displayName: Prepare artifacts and upload to build \ No newline at end of file From 5f5436b2d6a2e6814e7100538f458caa329266b8 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:19:35 -0700 Subject: [PATCH 04/15] Extra indent --- .../official/jobs/prepare-signed-artifacts.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml index 55ac08d15b14b0..acdac2b1d0be21 100644 --- a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml +++ b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml @@ -42,12 +42,12 @@ jobs: clean: true fetchDepth: 20 - script: >- - build.cmd -ci - -subset publish - -configuration Release - /p:PublishRidAgnosticPackagesFromPlatform=${{ parameters.PublishRidAgnosticPackagesFromPlatform }} - /p:OfficialBuildId=$(Build.BuildNumber) - /p:SignType=$(_SignType) - /p:DotNetSignType=$(_SignType) - /bl:$(Build.SourcesDirectory)\prepare-artifacts.binlog + build.cmd -ci + -subset publish + -configuration Release + /p:PublishRidAgnosticPackagesFromPlatform=${{ parameters.PublishRidAgnosticPackagesFromPlatform }} + /p:OfficialBuildId=$(Build.BuildNumber) + /p:SignType=$(_SignType) + /p:DotNetSignType=$(_SignType) + /bl:$(Build.SourcesDirectory)\prepare-artifacts.binlog displayName: Prepare artifacts and upload to build \ No newline at end of file From 4d938be71a5a949c8c3aecde7c38c28dec0002ee Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:20:50 -0700 Subject: [PATCH 05/15] Add back copy for logs --- .../official/jobs/prepare-signed-artifacts.yml | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml index acdac2b1d0be21..abfdbbc26f22a4 100644 --- a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml +++ b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml @@ -50,4 +50,15 @@ jobs: /p:SignType=$(_SignType) /p:DotNetSignType=$(_SignType) /bl:$(Build.SourcesDirectory)\prepare-artifacts.binlog - displayName: Prepare artifacts and upload to build \ No newline at end of file + displayName: Prepare artifacts and upload to build + + - task: CopyFiles@2 + displayName: Copy Files to $(Build.StagingDirectory)\BuildLogs + inputs: + SourceFolder: '$(Build.SourcesDirectory)' + Contents: | + **/*.log + **/*.binlog + TargetFolder: '$(Build.StagingDirectory)\BuildLogs' + continueOnError: true + condition: succeededOrFailed() \ No newline at end of file From 89bd6aa58d38dee7b2b9438e90e0ab149bdd5a28 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:21:43 -0700 Subject: [PATCH 06/15] Fix indentation --- .../jobs/prepare-signed-artifacts.yml | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml index abfdbbc26f22a4..a0d6bf1a52b42b 100644 --- a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml +++ b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml @@ -50,15 +50,15 @@ jobs: /p:SignType=$(_SignType) /p:DotNetSignType=$(_SignType) /bl:$(Build.SourcesDirectory)\prepare-artifacts.binlog - displayName: Prepare artifacts and upload to build + displayName: Prepare artifacts and upload to build - task: CopyFiles@2 - displayName: Copy Files to $(Build.StagingDirectory)\BuildLogs - inputs: - SourceFolder: '$(Build.SourcesDirectory)' - Contents: | - **/*.log - **/*.binlog - TargetFolder: '$(Build.StagingDirectory)\BuildLogs' - continueOnError: true - condition: succeededOrFailed() \ No newline at end of file + displayName: Copy Files to $(Build.StagingDirectory)\BuildLogs + inputs: + SourceFolder: '$(Build.SourcesDirectory)' + Contents: | + **/*.log + **/*.binlog + TargetFolder: '$(Build.StagingDirectory)\BuildLogs' + continueOnError: true + condition: succeededOrFailed() \ No newline at end of file From 1ab3bad5a6dae32d5ac9bccf29e881fa54ed7838 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:23:49 -0700 Subject: [PATCH 07/15] fixup! Change generate-offsets jobs to be based on the global build job --- eng/pipelines/runtime-official.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index fe89fa40da52cd..c3f1acc9eaaaf9 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -396,14 +396,14 @@ extends: - tvos_arm64 - ios_arm64 - maccatalyst_x64 + variables: + - name: _osParameter + value: -os linux + - name: _archParameter + value: -arch x64 jobParameters: nameSuffix: MonoAOTOffsets buildArgs: -s mono.aotcross -c $(_BuildConfig) /p:MonoGenerateOffsetsOSGroups=$(osGroup) - variables: - - name: _osParameter - value: -os linux - - name: _archParameter - value: -arch x64 postBuildSteps: # Upload offset files - task: CopyFiles@2 From c3dabd0e68930b56cc0dc6a8007e81c510df582a Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:25:09 -0700 Subject: [PATCH 08/15] fixup! Change generate-offsets jobs to be based on the global build job --- eng/pipelines/runtime.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 772d95c11f41a2..e053b2502a0053 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -762,14 +762,14 @@ extends: - tvos_arm64 - ios_arm64 - maccatalyst_x64 + variables: + - name: _osParameter + value: -os linux + - name: _archParameter + value: -arch x64 jobParameters: nameSuffix: MonoAOTOffsets buildArgs: -s mono.aotcross -c $(_BuildConfig) /p:MonoGenerateOffsetsOSGroups=$(osGroup) - variables: - - name: _osParameter - value: -os linux - - name: _archParameter - value: -arch x64 postBuildSteps: # Upload offset files - task: CopyFiles@2 From d9a867a47a894d4f0c2f41118ebc5a88f30c02fc Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:26:37 -0700 Subject: [PATCH 09/15] Set the right template path --- eng/pipelines/runtime-official.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index c3f1acc9eaaaf9..0a6d023b3e3a32 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -402,6 +402,7 @@ extends: - name: _archParameter value: -arch x64 jobParameters: + templatePath: 'templates-official' nameSuffix: MonoAOTOffsets buildArgs: -s mono.aotcross -c $(_BuildConfig) /p:MonoGenerateOffsetsOSGroups=$(osGroup) postBuildSteps: @@ -633,6 +634,7 @@ extends: platforms: - windows_x64 jobParameters: + templatePath: 'templates-official' nameSuffix: Workloads preBuildSteps: - task: DownloadPipelineArtifact@2 From e0e15ec78f4425309c0cd65f769e31d9e8d23ca2 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:38:52 -0700 Subject: [PATCH 10/15] Use templateContext.outputs and publish for the official AOT offsets jobs as strongly-typed template parameters don't allow unknown parameters and I don't want to declare a ton of optional ones we aren't going to ever use. --- eng/pipelines/common/global-build-job.yml | 4 ++++ .../templates/publish-pipeline-artifacts.yml | 17 ----------------- eng/pipelines/runtime-official.yml | 14 +++++++------- eng/pipelines/runtime.yml | 10 +++------- 4 files changed, 14 insertions(+), 31 deletions(-) delete mode 100644 eng/pipelines/common/templates/publish-pipeline-artifacts.yml diff --git a/eng/pipelines/common/global-build-job.yml b/eng/pipelines/common/global-build-job.yml index 1812fc318bb2ee..8273417557052b 100644 --- a/eng/pipelines/common/global-build-job.yml +++ b/eng/pipelines/common/global-build-job.yml @@ -34,6 +34,7 @@ parameters: extraVariablesTemplates: [] preBuildSteps: [] templatePath: 'templates' + templateContext: '' jobs: - template: /eng/common/${{ parameters.templatePath }}/job/job.yml @@ -51,6 +52,9 @@ jobs: enablePublishTestResults: ${{ parameters.enablePublishTestResults }} testResultsFormat: ${{ parameters.testResultsFormat }} + ${{ if ne(parameters.templateContext, '') }}: + templateContext: ${{ parameters.templateContext }} + artifacts: publish: logs: diff --git a/eng/pipelines/common/templates/publish-pipeline-artifacts.yml b/eng/pipelines/common/templates/publish-pipeline-artifacts.yml deleted file mode 100644 index 81f292ec5528ce..00000000000000 --- a/eng/pipelines/common/templates/publish-pipeline-artifacts.yml +++ /dev/null @@ -1,17 +0,0 @@ -parameters: -- name: displayName - type: string -- name: inputs - type: object -- name: isOfficialBuild - type: boolean - -steps: - - ${{ if parameters.isOfficialBuild }}: - - task: 1ES.PublishPipelineArtifact@1 - displayName: ${{ parameters.displayName }} - inputs: ${{ parameters.inputs }} - - ${{ else }}: - - task: PublishPipelineArtifact@1 - displayName: ${{ parameters.displayName }} - inputs: ${{ parameters.inputs }} \ No newline at end of file diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index 0a6d023b3e3a32..dee1103a430b5a 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -414,13 +414,13 @@ extends: contents: '**/offsets-*.h' targetFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles/' - - template: /eng/pipelines/common/templates/publish-pipeline-artifacts.yml - parameters: - displayName: Upload offset files - isOfficialBuild: ${{ variables.isOfficialBuild }} - inputs: - targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' - artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' + templateContext: + outputs: + - output: pipelineArtifact + displayName: 'Publish Mono AOT offsets' + condition: succeeded() + targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' + artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' # needed by crossaot condition: >- or( diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index e053b2502a0053..360b37922c5f36 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -779,13 +779,9 @@ extends: contents: '**/offsets-*.h' targetFolder: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles/' - - template: /eng/pipelines/common/templates/publish-pipeline-artifacts.yml - parameters: - displayName: Upload offset files - isOfficialBuild: false - inputs: - targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' - artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' + - publish: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' + artifact: Mono_Offsets_$(osGroup)$(osSubGroup) + displayName: Upload offset files # needed by crossaot condition: >- or( From 62f3f2bef621463e6e060455f0c44a7f907e9158 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Mon, 15 Apr 2024 17:42:12 -0700 Subject: [PATCH 11/15] Fix job names --- eng/pipelines/runtime-official.yml | 12 ++++++------ eng/pipelines/runtime.yml | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index dee1103a430b5a..1702de6146fe49 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -449,8 +449,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -477,8 +477,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -505,8 +505,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets - build_tvos_arm64_release_MonoAOTOffsets - build_ios_arm64_release_MonoAOTOffsets - build_maccatalyst_x64_release_MonoAOTOffsets diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 360b37922c5f36..d7a0a87668063c 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -1263,8 +1263,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -1290,8 +1290,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets monoCrossAOTTargetOS: - android - browser @@ -1321,8 +1321,8 @@ extends: runtimeVariant: crossaot dependsOn: - build_android_x64_release_MonoAOTOffsets - - build_browser_wasm_release_MonoAOTOffsets - - build_wasi_wasm_release_MonoAOTOffsets + - build_browser_wasm_linux_release_MonoAOTOffsets + - build_wasi_wasm_linux_release_MonoAOTOffsets - build_tvos_arm64_release_MonoAOTOffsets - build_ios_arm64_release_MonoAOTOffsets - build_maccatalyst_x64_release_MonoAOTOffsets From b3296d73950f8d9a51f8005f082654c9488f8a12 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 16 Apr 2024 09:16:49 -0700 Subject: [PATCH 12/15] Fix workloads paths --- eng/pipelines/runtime-official.yml | 2 +- src/workloads/workloads.csproj | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index 1702de6146fe49..dd9c4003468990 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -681,7 +681,7 @@ extends: targetFolder: $(Build.SourcesDirectory)/artifacts/workloadPackages flattenFolders: true - buildArgs: -s mono.workloads -c $(_BuildConfig) + buildArgs: -s mono.workloads -c $(_BuildConfig) /p:PackageSource=$(Build.SourcesDirectory)/artifacts/workloadPackages /p:WorkloadOutputPath=$(Build.SourcesDirectory)/artifacts/workloads postBuildSteps: # Upload packages wrapping msis diff --git a/src/workloads/workloads.csproj b/src/workloads/workloads.csproj index 29669de949b9de..98586f23bc4055 100644 --- a/src/workloads/workloads.csproj +++ b/src/workloads/workloads.csproj @@ -9,9 +9,7 @@ $(ArtifactsObjDir)workloads/ $(WorkloadIntermediateOutputPath)VS/ $(ArtifactsBinDir)workloads/ - $(workloadArtifactsPath)/ $(ArtifactsShippingPackagesDir) - $(workloadPackagesPath)/ false From e69a8df5029145c2782d5e7f68bc29b212bb4a5d Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 16 Apr 2024 10:38:36 -0700 Subject: [PATCH 13/15] Add a trailing slash --- src/workloads/workloads.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/workloads/workloads.csproj b/src/workloads/workloads.csproj index 98586f23bc4055..54eb3b3664ff4b 100644 --- a/src/workloads/workloads.csproj +++ b/src/workloads/workloads.csproj @@ -139,7 +139,7 @@ - From abdcde205a2120864da0f85abb1ece6ad1da997c Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Tue, 16 Apr 2024 18:47:05 -0700 Subject: [PATCH 14/15] Specify checkout through the 1es template instead of as a manual step (to get it in the right place in the pipeline) --- eng/pipelines/official/jobs/prepare-signed-artifacts.yml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml index a0d6bf1a52b42b..f52d685e964ef7 100644 --- a/eng/pipelines/official/jobs/prepare-signed-artifacts.yml +++ b/eng/pipelines/official/jobs/prepare-signed-artifacts.yml @@ -27,6 +27,10 @@ jobs: templateContext: inputs: + - input: checkout + repository: self + clean: true + fetchDepth: 20 - input: pipelineArtifact artifactName: IntermediateArtifacts targetPath: $(Build.SourcesDirectory)\artifacts\PackageDownload @@ -38,9 +42,6 @@ jobs: artifactName: ${{ parameters.logArtifactName }} steps: - - checkout: self - clean: true - fetchDepth: 20 - script: >- build.cmd -ci -subset publish From d0b88b921c342910d4728edb2efaa6f332722fad Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Thu, 18 Apr 2024 14:38:00 -0700 Subject: [PATCH 15/15] Apply suggestions from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Alexander Köplinger --- eng/pipelines/runtime-official.yml | 7 ------- 1 file changed, 7 deletions(-) diff --git a/eng/pipelines/runtime-official.yml b/eng/pipelines/runtime-official.yml index dd9c4003468990..cf856d94df6164 100644 --- a/eng/pipelines/runtime-official.yml +++ b/eng/pipelines/runtime-official.yml @@ -383,7 +383,6 @@ extends: # Build Mono AOT offset headers once, for consumption elsewhere - # Only when mono changed # - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -421,12 +420,6 @@ extends: condition: succeeded() targetPath: '$(Build.SourcesDirectory)/artifacts/obj/mono/offsetfiles' artifactName: 'Mono_Offsets_$(osGroup)$(osSubGroup)' - # needed by crossaot - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) # # Build Mono release AOT cross-compilers