diff --git a/eng/pipelines/templates/stages/archetype-net-release.yml b/eng/pipelines/templates/stages/archetype-net-release.yml index 8f64d1cb8de5..4b951ebffd43 100644 --- a/eng/pipelines/templates/stages/archetype-net-release.yml +++ b/eng/pipelines/templates/stages/archetype-net-release.yml @@ -61,13 +61,11 @@ stages: deploy: steps: - checkout: self - - pwsh: | - Get-ChildItem $(Pipeline.Workspace)/${{parameters.ArtifactName}}-signed - New-Item -Type Directory -Name ${{artifact.safeName}} -Path $(Pipeline.Workspace) - Copy-Item $(Pipeline.Workspace)/${{parameters.ArtifactName}}-signed/${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* $(Pipeline.Workspace)/${{artifact.safeName}} - Get-ChildItem $(Pipeline.Workspace)/${{artifact.safeName}} - displayName: Stage artifacts - timeoutInMinutes: 5 + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: ${{parameters.ArtifactName}}-signed + TargetFolder: ${{artifact.safeName}} + FileFilter: ${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* - template: /eng/common/pipelines/templates/steps/create-tags-and-git-release.yml parameters: ArtifactLocation: $(Pipeline.Workspace)/${{artifact.safeName}} @@ -90,11 +88,15 @@ stages: deploy: steps: - checkout: none + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: ${{parameters.ArtifactName}}-signed + TargetFolder: staging + FileFilter: ${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* - pwsh: | - New-Item -Type Directory -Name staging -Path $(Pipeline.Workspace) - Copy-Item $(Pipeline.Workspace)/${{parameters.ArtifactName}}-signed/${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* $(Pipeline.Workspace)/staging - Get-ChildItem $(Pipeline.Workspace)/staging - displayName: Copying ${{artifact.name}} to staging directory + Get-ChildItem -Recurse $(Pipeline.Workspace)/staging + workingDirectory: $(Pipeline.Workspace) + displayName: Output Visible Artifacts - task: NuGetCommand@2 displayName: 'Publish ${{artifact.name}} package to NuGet.org' inputs: @@ -125,11 +127,15 @@ stages: steps: - checkout: none - template: tools/clone-buildtools/clone-buildtools.yml@azure-sdk-build-tools + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: ${{parameters.ArtifactName}}-signed + TargetFolder: staging + FileFilter: ${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* - pwsh: | - New-Item -Type Directory -Name staging -Path $(Pipeline.Workspace) - Copy-Item $(Pipeline.Workspace)/${{parameters.ArtifactName}}-signed/${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* $(Pipeline.Workspace)/staging - Get-ChildItem $(Pipeline.Workspace)/staging - displayName: Copying ${{artifact.name}} to staging directory + Get-ChildItem -Recurse $(Pipeline.Workspace)/staging + workingDirectory: $(Pipeline.Workspace) + displayName: Output Visible Artifacts - task: MSBuild@1 displayName: 'Upload Symbols for ${{artifact.name}}' inputs: @@ -137,8 +143,8 @@ stages: msbuildArguments: '/p:PackagesPath=$(Pipeline.Workspace)/staging /p:MSPublicSymbolsPAT=$(azuresdk-microsoftpublicsymbols-devops-pat) /p:MSSymbolsPAT=$(azuresdk-microsoft-devops-pat) /p:AzureSDKSymbolsPAT=$(azuresdk-azure-sdk-devops-pat)' - ${{if ne(artifact.options.skipPublishDocs, 'true')}}: - - deployment: PublishDocs - displayName: Publish Docs to GitHub pages + - deployment: PublicDocsMS + displayName: Publish to Docs.MS condition: and(succeeded(), ne(variables['Skip.PublishDocs'], 'true')) environment: githubio dependsOn: PublishPackage @@ -151,14 +157,54 @@ stages: deploy: steps: - checkout: self + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: ${{parameters.ArtifactName}}-signed + TargetFolder: ${{artifact.safeName}} + FileFilter: ${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* - pwsh: | - New-Item -Type Directory -Name ${{artifact.safeName}} -Path $(Pipeline.Workspace) - New-Item -Type Directory -Name packages -Path $(Pipeline.Workspace)/${{artifact.safeName}} - New-Item -Type Directory -Name Docs.${{artifact.name}} -Path $(Pipeline.Workspace)/${{artifact.safeName}} + Get-ChildItem -Recurse $(Pipeline.Workspace)/${{artifact.safeName}} + workingDirectory: $(Pipeline.Workspace) + displayName: Output Visible Artifacts + - template: /eng/common/pipelines/templates/steps/docs-metadata-release.yml + parameters: + ArtifactLocation: $(Pipeline.Workspace)/${{artifact.safeName}} + PackageRepository: Nuget + ReleaseSha: $(Build.SourceVersion) + RepoId: Azure/azure-sdk-for-net + WorkingDirectory: $(System.DefaultWorkingDirectory) + TargetDocRepoOwner: ${{parameters.TargetDocRepoOwner}} + TargetDocRepoName: ${{parameters.TargetDocRepoName}} + PRBranchName: 'smoke-test-rdme' + ArtifactName: ${{parameters.ArtifactName}} + Language: '.net' + DocRepoDestinationPath: 'api/overview/azure/' - Copy-Item -Recurse $(Pipeline.Workspace)/${{parameters.ArtifactName}}/${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* $(Pipeline.Workspace)/${{artifact.safeName}}/packages - Copy-Item -Recurse $(Pipeline.Workspace)/Docs.${{artifact.name}}/* $(Pipeline.Workspace)/${{artifact.safeName}}/Docs.${{artifact.name}} - displayName: Stage artifacts + - ${{if ne(artifact.options.skipPublishDocs, 'true')}}: + - deployment: PublishDocs + displayName: Publish Docs to GitHub pages + condition: and(succeeded(), ne(variables['Skip.PublishDocs'], 'true')) + environment: githubio + dependsOn: PublishPackage + + pool: + vmImage: windows-2019 + + strategy: + runOnce: + deploy: + steps: + - checkout: self + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: ${{parameters.ArtifactName}}-signed + TargetFolder: ${{artifact.safeName}}/packages + FileFilter: ${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* + - template: /eng/pipelines/templates/steps/stage-artifacts.yml + parameters: + SourceFolder: Docs.${{artifact.name}} + TargetFolder: ${{artifact.safeName}}/Docs.${{artifact.name}} + FileFilter: '*' - pwsh: | Get-ChildItem -Recurse $(Pipeline.Workspace)/${{artifact.safeName}} workingDirectory: $(Pipeline.Workspace) diff --git a/eng/pipelines/templates/stages/archetype-sdk-client.yml b/eng/pipelines/templates/stages/archetype-sdk-client.yml index a506a83a41bf..26739e110158 100644 --- a/eng/pipelines/templates/stages/archetype-sdk-client.yml +++ b/eng/pipelines/templates/stages/archetype-sdk-client.yml @@ -1,7 +1,9 @@ parameters: Artifacts: [] ServiceDirectory: not-specified - + TargetDocRepoOwner: 'Azure' + TargetDocRepoName: 'azure-docs-sdk-dotnet' + stages: - stage: Build jobs: @@ -19,4 +21,6 @@ stages: ServiceDirectory: ${{parameters.ServiceDirectory}} DependsOn: Build Artifacts: ${{parameters.Artifacts}} - ArtifactName: packages \ No newline at end of file + ArtifactName: packages + TargetDocRepoOwner: ${{parameters.TargetDocRepoOwner}} + TargetDocRepoName: ${{parameters.TargetDocRepoName}} \ No newline at end of file diff --git a/eng/pipelines/templates/steps/stage-artifacts.yml b/eng/pipelines/templates/steps/stage-artifacts.yml new file mode 100644 index 000000000000..ee0c0c0d8392 --- /dev/null +++ b/eng/pipelines/templates/steps/stage-artifacts.yml @@ -0,0 +1,11 @@ +parameters: + SourceFolder: '' # ArtifactName (aka "packages") + TargetFolder: '' # artifact.safename (azuretemplate) + FileFilter: '' #${{artifact.name}}.[0-9]*.[0-9]*.[0-9]* + +steps: + - pwsh: | + New-Item -Force -Type Directory -Name ${{parameters.TargetFolder}} -Path $(Pipeline.Workspace) + Write-Host "Copy-Item -Force $(Pipeline.Workspace)/${{parameters.SourceFolder}}/${{parameters.FileFilter}} $(Pipeline.Workspace)/${{parameters.TargetFolder}}" + Copy-Item -Force $(Pipeline.Workspace)/${{parameters.SourceFolder}}/${{parameters.FileFilter}} $(Pipeline.Workspace)/${{parameters.TargetFolder}} + displayName: Stage artifacts diff --git a/sdk/template/Azure.Template/CHANGELOG.md b/sdk/template/Azure.Template/CHANGELOG.md index b7fc02e2c00b..091023c70c07 100644 --- a/sdk/template/Azure.Template/CHANGELOG.md +++ b/sdk/template/Azure.Template/CHANGELOG.md @@ -1,5 +1,11 @@ # Release History +## 1.0.2-preview.13 (2020-03-23) +- Test release pipeline + +## 1.0.2-preview.12 (2020-03-23) +- Test release pipeline + ## 1.0.2-preview.11 (2020-03-23) - Test release pipeline diff --git a/sdk/template/Azure.Template/src/Azure.Template.csproj b/sdk/template/Azure.Template/src/Azure.Template.csproj index 206d48dc911d..7cef26351213 100644 --- a/sdk/template/Azure.Template/src/Azure.Template.csproj +++ b/sdk/template/Azure.Template/src/Azure.Template.csproj @@ -2,7 +2,7 @@ This is a template project to demonstrate how to create a package that uses code generation as well as use for testing our build and release pipelines Azure SDK Template - 1.0.2-preview.11 + 1.0.2-preview.13 Azure Template $(RequiredTargetFrameworks) false