From d38943cb0c24b8d3d78d1611c6bc062c952c0e24 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Fri, 31 Oct 2025 17:33:32 -0400 Subject: [PATCH 01/14] Publish installation nupkg to dotnet-tools feed --- .vsts-dnup-ci.yml | 6 +++ .../jobs/dnup/dnup-library-publish.yml | 39 +++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml diff --git a/.vsts-dnup-ci.yml b/.vsts-dnup-ci.yml index 6af482154a3c..3d4932dea59e 100644 --- a/.vsts-dnup-ci.yml +++ b/.vsts-dnup-ci.yml @@ -134,3 +134,9 @@ extends: name: $(DncEngInternalBuildPool) image: 1es-windows-2022 os: windows + ### Publishing ### + - stage: publish + displayName: 🚀 Publish dnup packages + dependsOn: package + jobs: + - template: /eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml@self diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml new file mode 100644 index 000000000000..076477b723bf --- /dev/null +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -0,0 +1,39 @@ +parameters: + ### GENERAL ### + variables: {} + dependsOn: '' + # helixTargetQueue: '' + oneESCompat: + templateFolderName: templates + publishTaskPrefix: '' + # container: '' + # helixTargetContainer: '' + categoryName: dnup + # runTests: true + # publishRetryConfig: false + # publishXunitResults: false + # enableSbom: true + # timeoutInMinutes: 150 + +jobs: +- template: /eng/common/${{ parameters.oneESCompat.templateFolderName }}/job/job.yml + templateContext: + type: releaseJob + parameters: + steps: + # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/inputs + - task: 1ES.DownloadPipelineArtifact@1 + displayName: 🟣 Download build artifacts + inputs: + artifactName: Artifacts + targetPath: $(System.DefaultWorkingDirectory)/artifacts + # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages + # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 + - ${{ if eq(false, true) }}: + - task: 1ES.PublishNuget@1 + displayName: 🟣 Publish packages to AzDO + inputs: + useDotNetTask: true + packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/packages/**/*.nupkg + packageParentPath: $(System.DefaultWorkingDirectory)/artifacts + publishVstsFeed: public/dotnet-tools \ No newline at end of file From 417e0dc1c7ef6fdde8013efbf15a667767092661 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Mon, 3 Nov 2025 10:02:11 -0500 Subject: [PATCH 02/14] Switch to deployment --- .../jobs/dnup/dnup-library-publish.yml | 47 +++++++++++-------- 1 file changed, 28 insertions(+), 19 deletions(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index 076477b723bf..e7f34d3ee335 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -16,24 +16,33 @@ parameters: # timeoutInMinutes: 150 jobs: -- template: /eng/common/${{ parameters.oneESCompat.templateFolderName }}/job/job.yml +# - template: /eng/common/${{ parameters.oneESCompat.templateFolderName }}/job/job.yml +- deployment: PublishPackages + displayName: '🚀 Publish dnup library packages' + environment: DotNet-SDK-Workloads + pool: + name: $(DncEngInternalBuildPool) + image: 1es-windows-2022 + os: windows templateContext: type: releaseJob - parameters: - steps: - # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/inputs - - task: 1ES.DownloadPipelineArtifact@1 - displayName: 🟣 Download build artifacts - inputs: - artifactName: Artifacts - targetPath: $(System.DefaultWorkingDirectory)/artifacts - # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages - # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 - - ${{ if eq(false, true) }}: - - task: 1ES.PublishNuget@1 - displayName: 🟣 Publish packages to AzDO - inputs: - useDotNetTask: true - packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/packages/**/*.nupkg - packageParentPath: $(System.DefaultWorkingDirectory)/artifacts - publishVstsFeed: public/dotnet-tools \ No newline at end of file + strategy: + runOnce: + deploy: + steps: + # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/inputs + - task: 1ES.DownloadPipelineArtifact@1 + displayName: 🟣 Download build artifacts + inputs: + artifactName: Artifacts + targetPath: $(System.DefaultWorkingDirectory)/artifacts + # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages + # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 + - ${{ if eq(false, true) }}: + - task: 1ES.PublishNuget@1 + displayName: 🟣 Publish packages to AzDO + inputs: + useDotNetTask: true + packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/packages/**/*.nupkg + packageParentPath: $(System.DefaultWorkingDirectory)/artifacts + publishVstsFeed: public/dotnet-tools \ No newline at end of file From 88b2b8e50f6185f7eb22453a8bdd7a0a2a4ec17c Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Mon, 3 Nov 2025 15:50:29 -0500 Subject: [PATCH 03/14] Set as production --- eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index e7f34d3ee335..4c4e4d1e8861 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -26,6 +26,7 @@ jobs: os: windows templateContext: type: releaseJob + isProduction: true strategy: runOnce: deploy: From c17c6696ffcc311fbe480d00448844c9f693552a Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Mon, 3 Nov 2025 19:38:58 -0500 Subject: [PATCH 04/14] Fix artifact name --- eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index 4c4e4d1e8861..be1e7fe1d11e 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -35,7 +35,7 @@ jobs: - task: 1ES.DownloadPipelineArtifact@1 displayName: 🟣 Download build artifacts inputs: - artifactName: Artifacts + artifactName: dnup-library-packages targetPath: $(System.DefaultWorkingDirectory)/artifacts # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 From 028ec30b02df090b3fb44d765f804a9d7e2e9685 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 11:05:48 -0500 Subject: [PATCH 05/14] Add binlogs to build --- .../templates/jobs/dnup/dnup-library-package.yml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml index 9d649a7b06d9..d7c1a1eb2c7c 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml @@ -44,17 +44,23 @@ jobs: targetPath: '$(Build.SourcesDirectory)/artifacts/packages/Release/NonShipping/' artifactName: 'dnup-library-packages' publishLocation: Container + - output: pipelineArtifact + displayName: '📊 Publish dnup library build binlogs' + condition: always() + targetPath: '$(Build.SourcesDirectory)/artifacts/binlogs/' + artifactName: 'dnup-library-binlogs' + publishLocation: Container steps: - ${{ if eq(parameters.pool.os, 'windows') }}: - powershell: | & .\restore.cmd displayName: 🍱 Bootstrap toolset (Windows) - powershell: | - & .\.dotnet\dotnet build test\dnup.Tests\dnup.Tests.csproj -c Release + & .\.dotnet\dotnet build test\dnup.Tests\dnup.Tests.csproj -c Release -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-build.binlog displayName: 💻 Build Windows - powershell: | - & .\.dotnet\dotnet pack .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.csproj + & .\.dotnet\dotnet pack .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.csproj -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-package.binlog displayName: 📦 Package dnup library - powershell: | - & .\.dotnet\dotnet build .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.sign.proj /t:Sign + & .\.dotnet\dotnet build .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog displayName: 🖋️ Sign dnup library packages with arcade signtool From a6eae084336e969952ee0d4ffdf56cb752ccd0c5 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 14:37:56 -0500 Subject: [PATCH 06/14] Set installation library package version --- .../Microsoft.Dotnet.Installation.csproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.csproj b/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.csproj index 42197569ad78..c9b2c6d4509f 100644 --- a/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.csproj +++ b/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.csproj @@ -13,8 +13,8 @@ Microsoft.Dotnet.Installation false .NET Installation Library - 1.0.0-alpha - $(Version) + 0.1.0 + preview From 3dc1d60570b203420fc8434299e1e4f58b1238c2 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 15:58:36 -0500 Subject: [PATCH 07/14] Move sign project out of project folder This makes it easier to run commands such as "dotnet pack" in the project folder --- .../templates/jobs/dnup/dnup-library-package.yml | 2 +- ...et.Installation.sign.proj => Installer.sign.proj} | 12 ++++-------- 2 files changed, 5 insertions(+), 9 deletions(-) rename src/Installer/{Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.sign.proj => Installer.sign.proj} (75%) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml index d7c1a1eb2c7c..34fc26f20c56 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml @@ -62,5 +62,5 @@ jobs: & .\.dotnet\dotnet pack .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.csproj -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-package.binlog displayName: 📦 Package dnup library - powershell: | - & .\.dotnet\dotnet build .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog + & .\.dotnet\dotnet build .\src\Installer\Installer.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog displayName: 🖋️ Sign dnup library packages with arcade signtool diff --git a/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.sign.proj b/src/Installer/Installer.sign.proj similarity index 75% rename from src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.sign.proj rename to src/Installer/Installer.sign.proj index baea2590e599..bdae83fe8dbd 100644 --- a/src/Installer/Microsoft.Dotnet.Installation/Microsoft.Dotnet.Installation.sign.proj +++ b/src/Installer/Installer.sign.proj @@ -1,17 +1,13 @@  net10.0 - - <_RepoRoot Condition="'$(RepoRoot)' != ''">$(RepoRoot) - <_RepoRoot Condition="'$(_RepoRoot)' == ''">$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..\..\..\')) - - $(_RepoRoot)artifacts\packages\Release\ - $(_RepoRoot)artifacts\obj\Sign\ - $(_RepoRoot)artifacts\log\Sign\ + $(RepoRoot)artifacts\packages\Release\ + $(RepoRoot)artifacts\obj\Sign\ + $(RepoRoot)artifacts\log\Sign\ - $(_RepoRoot).dotnet\dotnet.exe + $(RepoRoot).dotnet\dotnet.exe true true From dc1deb5a222ffff334f7d302530f5299e47eadf5 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 17:33:05 -0500 Subject: [PATCH 08/14] Flow build ID through to build --- .../templates/jobs/dnup/dnup-library-package.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml index 34fc26f20c56..b8cd9c251795 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml @@ -31,6 +31,8 @@ jobs: enableSbom: ${{ parameters.enableSbom }} variables: - ${{ insert }}: ${{ parameters.variables }} + - name: _officialBuildProperties + value: /p:OfficialBuilder=Microsoft /p:OfficialBuildId=$(Build.BuildNumber) dependsOn: ${{ parameters.dependsOn }} preSteps: ${{ parameters.preSteps }} templateContext: @@ -53,14 +55,14 @@ jobs: steps: - ${{ if eq(parameters.pool.os, 'windows') }}: - powershell: | - & .\restore.cmd + & .\restore.cmd $(_officialBuildProperties) displayName: 🍱 Bootstrap toolset (Windows) - powershell: | - & .\.dotnet\dotnet build test\dnup.Tests\dnup.Tests.csproj -c Release -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-build.binlog + & .\.dotnet\dotnet build test\dnup.Tests\dnup.Tests.csproj -c Release -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-build.binlog $(_officialBuildProperties) displayName: 💻 Build Windows - powershell: | - & .\.dotnet\dotnet pack .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.csproj -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-package.binlog + & .\.dotnet\dotnet pack .\src\Installer\Microsoft.Dotnet.Installation\Microsoft.Dotnet.Installation.csproj -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-package.binlog $(_officialBuildProperties) displayName: 📦 Package dnup library - powershell: | - & .\.dotnet\dotnet build .\src\Installer\Installer.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog + & .\.dotnet\dotnet build .\src\Installer\Installer.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog $(_officialBuildProperties) displayName: 🖋️ Sign dnup library packages with arcade signtool From a2db49cdcdd5fc4f9a04fcbcd61e6a8af6a1d31c Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 18:11:27 -0500 Subject: [PATCH 09/14] Enable publishing to NuGet feed --- eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index be1e7fe1d11e..c242c72241ca 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -39,7 +39,7 @@ jobs: targetPath: $(System.DefaultWorkingDirectory)/artifacts # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 - - ${{ if eq(false, true) }}: + - ${{ if eq(true, true) }}: - task: 1ES.PublishNuget@1 displayName: 🟣 Publish packages to AzDO inputs: From 53baf7c41df984032b5e306527489ba8cce5c8f4 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 18:59:46 -0500 Subject: [PATCH 10/14] Fix packages path to push --- eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index c242c72241ca..42255db9da52 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -37,6 +37,8 @@ jobs: inputs: artifactName: dnup-library-packages targetPath: $(System.DefaultWorkingDirectory)/artifacts + - powershell: | + & Get-ChildItem -Path $(System.DefaultWorkingDirectory)/artifacts -Recurse -File | Select-Object -ExpandProperty FullName # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 - ${{ if eq(true, true) }}: @@ -44,6 +46,6 @@ jobs: displayName: 🟣 Publish packages to AzDO inputs: useDotNetTask: true - packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/packages/**/*.nupkg + packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/**/*.nupkg packageParentPath: $(System.DefaultWorkingDirectory)/artifacts publishVstsFeed: public/dotnet-tools \ No newline at end of file From dcdd02fa18b390475b6d5a18d20b73d176fe1793 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Tue, 4 Nov 2025 20:07:45 -0500 Subject: [PATCH 11/14] Don't try to publish symbol package separately --- eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml index 42255db9da52..4e9a58d999fe 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml @@ -46,6 +46,6 @@ jobs: displayName: 🟣 Publish packages to AzDO inputs: useDotNetTask: true - packagesToPush: $(System.DefaultWorkingDirectory)/artifacts/**/*.nupkg + packagesToPush: '!$(System.DefaultWorkingDirectory)/artifacts/**/*.symbols.nupkg;$(System.DefaultWorkingDirectory)/artifacts/**/*.nupkg' packageParentPath: $(System.DefaultWorkingDirectory)/artifacts publishVstsFeed: public/dotnet-tools \ No newline at end of file From 5881a86cd0e95ff2188bb31316937d4a66e8d923 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Wed, 5 Nov 2025 10:27:21 -0500 Subject: [PATCH 12/14] Don't use separate stage for library publishing --- .vsts-dnup-ci.yml | 8 +-- .../jobs/dnup/dnup-library-package.yml | 7 +++ .../jobs/dnup/dnup-library-publish.yml | 51 ------------------- 3 files changed, 8 insertions(+), 58 deletions(-) delete mode 100644 eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml diff --git a/.vsts-dnup-ci.yml b/.vsts-dnup-ci.yml index 3d4932dea59e..e3c570bf7e2f 100644 --- a/.vsts-dnup-ci.yml +++ b/.vsts-dnup-ci.yml @@ -133,10 +133,4 @@ extends: pool: name: $(DncEngInternalBuildPool) image: 1es-windows-2022 - os: windows - ### Publishing ### - - stage: publish - displayName: 🚀 Publish dnup packages - dependsOn: package - jobs: - - template: /eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml@self + os: windows \ No newline at end of file diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml index b8cd9c251795..0c5139b138a4 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml @@ -66,3 +66,10 @@ jobs: - powershell: | & .\.dotnet\dotnet build .\src\Installer\Installer.sign.proj /t:Sign -bl:$(Build.SourcesDirectory)/artifacts/binlogs/dnup-library-sign.binlog $(_officialBuildProperties) displayName: 🖋️ Sign dnup library packages with arcade signtool + - task: 1ES.PublishNuget@1 + displayName: 🟣 Publish packages to AzDO + inputs: + useDotNetTask: true + packagesToPush: '!$(System.DefaultWorkingDirectory)/packages/Release/**/*.symbols.nupkg;$(System.DefaultWorkingDirectory)/packages/Release/**/*.nupkg' + packageParentPath: $(System.DefaultWorkingDirectory)/packages/Release + publishVstsFeed: public/dotnet-tools diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml deleted file mode 100644 index 4e9a58d999fe..000000000000 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-publish.yml +++ /dev/null @@ -1,51 +0,0 @@ -parameters: - ### GENERAL ### - variables: {} - dependsOn: '' - # helixTargetQueue: '' - oneESCompat: - templateFolderName: templates - publishTaskPrefix: '' - # container: '' - # helixTargetContainer: '' - categoryName: dnup - # runTests: true - # publishRetryConfig: false - # publishXunitResults: false - # enableSbom: true - # timeoutInMinutes: 150 - -jobs: -# - template: /eng/common/${{ parameters.oneESCompat.templateFolderName }}/job/job.yml -- deployment: PublishPackages - displayName: '🚀 Publish dnup library packages' - environment: DotNet-SDK-Workloads - pool: - name: $(DncEngInternalBuildPool) - image: 1es-windows-2022 - os: windows - templateContext: - type: releaseJob - isProduction: true - strategy: - runOnce: - deploy: - steps: - # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/inputs - - task: 1ES.DownloadPipelineArtifact@1 - displayName: 🟣 Download build artifacts - inputs: - artifactName: dnup-library-packages - targetPath: $(System.DefaultWorkingDirectory)/artifacts - - powershell: | - & Get-ChildItem -Path $(System.DefaultWorkingDirectory)/artifacts -Recurse -File | Select-Object -ExpandProperty FullName - # 1ES docs: https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/1es-pipeline-templates/features/outputs/nuget-packages - # DotNetCoreCLI@2 docs: https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2 - - ${{ if eq(true, true) }}: - - task: 1ES.PublishNuget@1 - displayName: 🟣 Publish packages to AzDO - inputs: - useDotNetTask: true - packagesToPush: '!$(System.DefaultWorkingDirectory)/artifacts/**/*.symbols.nupkg;$(System.DefaultWorkingDirectory)/artifacts/**/*.nupkg' - packageParentPath: $(System.DefaultWorkingDirectory)/artifacts - publishVstsFeed: public/dotnet-tools \ No newline at end of file From cabe44a35e261c647de7ec5388368c51d286aad2 Mon Sep 17 00:00:00 2001 From: Daniel Plaisted Date: Wed, 5 Nov 2025 11:43:48 -0500 Subject: [PATCH 13/14] Fix packages directory --- eng/pipelines/templates/jobs/dnup/dnup-library-package.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml index 0c5139b138a4..4645d5f0f935 100644 --- a/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml +++ b/eng/pipelines/templates/jobs/dnup/dnup-library-package.yml @@ -70,6 +70,6 @@ jobs: displayName: 🟣 Publish packages to AzDO inputs: useDotNetTask: true - packagesToPush: '!$(System.DefaultWorkingDirectory)/packages/Release/**/*.symbols.nupkg;$(System.DefaultWorkingDirectory)/packages/Release/**/*.nupkg' - packageParentPath: $(System.DefaultWorkingDirectory)/packages/Release + packagesToPush: '$(Build.SourcesDirectory)/artifacts/packages/Release/**/*.nupkg;!$(Build.SourcesDirectory)/artifacts/packages/Release/**/*.symbols.nupkg' + packageParentPath: $(Build.SourcesDirectory)/artifacts/packages/Release publishVstsFeed: public/dotnet-tools From d6fb259a4b71d3f21c05da806c0d8d633ac27441 Mon Sep 17 00:00:00 2001 From: Noah Gilson Date: Wed, 5 Nov 2025 11:09:15 -0800 Subject: [PATCH 14/14] run dnup pr ci on all dnup branches - alternative, D:\sdk\eng\pipelines\templates\jobs\dnup as paths include if this enables on sdk runs --- .vsts-dnup-pr.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/.vsts-dnup-pr.yml b/.vsts-dnup-pr.yml index be58e8dfa3a2..2cd23a4ca40f 100644 --- a/.vsts-dnup-pr.yml +++ b/.vsts-dnup-pr.yml @@ -7,12 +7,6 @@ pr: include: - dnup - release/dnup - paths: - include: - - src/Installer/dnup/ - - test/dnup.Tests/ - - global.json - - .vsts-dnup-tests.yml parameters: - name: enableArm64Job