diff --git a/eng/pipelines/official.yml b/eng/pipelines/official.yml index 762771fd1..ddf50da9f 100644 --- a/eng/pipelines/official.yml +++ b/eng/pipelines/official.yml @@ -107,8 +107,6 @@ extends: - template: /eng/pipelines/templates/jobs/workload-build.yml@self parameters: stabilizePackageVersion: ${{ parameters.stabilizePackageVersion }} - publishToFeed: ${{ parameters.publishToFeed }} - feedForPublishing: ${{ parameters.feedForPublishing }} createVSInsertion: ${{ parameters.createVSInsertion }} usePreComponentsForVSInsertion: ${{ parameters.usePreComponentsForVSInsertion }} includeNonShippingWorkloads: ${{ parameters.includeNonShippingWorkloads }} @@ -116,3 +114,31 @@ extends: workloadDropNames: ${{ parameters.workloadDropNames }} primaryVsInsertionBranches: ${{ parameters.primaryVsInsertionBranches }} secondaryVsInsertionBranches: ${{ parameters.secondaryVsInsertionBranches }} + - stage: Publish + displayName: Publish + dependsOn: Build + condition: succeeded() + jobs: + - deployment: PublishFeed + displayName: Publish to feed + environment: DotNet-SDK-Workloads + pool: + name: $(DncEngInternalBuildPool) + image: 1es-windows-2022 + os: windows + templateContext: + type: releaseJob + isProduction: true + strategy: + runOnce: + deploy: + steps: + - task: 1ES.DownloadPipelineArtifact@1 + displayName: 🟣 Import PackageArtifacts from Previous Stage + inputs: + artifactName: PackageArtifacts + targetPath: $(Pipeline.Workspace)/PackageArtifacts + - template: /eng/pipelines/templates/steps/workload-publish.yml@self + parameters: + publishToFeed: ${{ parameters.publishToFeed }} + feedForPublishing: ${{ parameters.feedForPublishing }} \ No newline at end of file diff --git a/eng/pipelines/templates/jobs/workload-build.yml b/eng/pipelines/templates/jobs/workload-build.yml index aa519dd4c..4efa56b6f 100644 --- a/eng/pipelines/templates/jobs/workload-build.yml +++ b/eng/pipelines/templates/jobs/workload-build.yml @@ -62,18 +62,6 @@ jobs: /p:StabilizePackageVersion=${{ parameters.stabilizePackageVersion }} displayName: 🟣 Build solution - - ${{ if eq(parameters.publishToFeed, true) }}: - - task: 1ES.PublishNuget@1 - displayName: 🟣 Publish NuGet package - inputs: - useDotNetTask: true - packagesToPush: $(Build.SourcesDirectory)/artifacts/packages/**/*.nupkg - packageParentPath: $(Build.SourcesDirectory)/artifacts/packages - publishVstsFeed: ${{ parameters.feedForPublishing }} - nuGetFeedType: internal - allowPackageConflicts: false - publishPackageMetadata: true - - ${{ if eq(parameters.createVSInsertion, true) }}: # The variables comprised of workloadShortName and workloadType are set during create-workload-drops.ps1 in Microsoft.NET.Workloads.Vsman.csproj. - ${{ each workloadShortName in parameters.workloadDropNames }}: diff --git a/eng/pipelines/templates/steps/workload-publish.yml b/eng/pipelines/templates/steps/workload-publish.yml new file mode 100644 index 000000000..49b6c50dd --- /dev/null +++ b/eng/pipelines/templates/steps/workload-publish.yml @@ -0,0 +1,16 @@ +parameters: + publishToFeed: false + feedForPublishing: '' + +steps: +- task: 1ES.PublishNuget@1 + condition: ${{ eq(parameters.publishToFeed, true) }} + displayName: 🟣 Publish package to AzDO + inputs: + useDotNetTask: true + packagesToPush: $(Pipeline.Workspace)/PackageArtifacts/*.nupkg + packageParentPath: $(Pipeline.Workspace)/PackageArtifacts + publishVstsFeed: ${{ parameters.feedForPublishing }} + nuGetFeedType: internal + allowPackageConflicts: false + publishPackageMetadata: true \ No newline at end of file