azure-sdk-for-cpp/eng/common/pipelines/templates/steps/docs-metadata-release.yml
Azure SDK Bot 4c269ed610
Sync eng/common directory with azure-sdk-tools for PR 1274 (#1149)
* Added a step of skipping package json update for spring boot packages

* Added skip package json config

* Update the indentation

Co-authored-by: Sima Zhu <sizhu@microsoft.com>
2020-12-11 15:10:53 -08:00

140 lines
5.5 KiB
YAML

# intended to be used as part of a release process
parameters:
ArtifactLocation: 'not-specified'
PackageRepository: 'not-specified'
ReleaseSha: 'not-specified'
RepoId: $(Build.Repository.Name)
WorkingDirectory: ''
ScriptDirectory: eng/common/scripts
TargetDocRepoName: ''
TargetDocRepoOwner: ''
PRBranchName: 'master-rdme'
SourceBranchName: 'master'
PRLabels: 'auto-merge'
ArtifactName: ''
Language: ''
DocRepoDestinationPath: '' #usually docs-ref-services/
CIConfigs: '[]'
GHReviewersVariable: ''
GHTeamReviewersVariable: '' # externally set, as eng-common does not have the identity-resolver. Run as pre-step
OnboardingBranch: ''
CloseAfterOpenForTesting: false
SkipPackageJson: false
steps:
- pwsh: |
if ($IsWindows) {
REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem /f /v LongPathsEnabled /t REG_DWORD /d 1
git config --system core.longpaths true
}
else {
Write-Host "This script is not executing on Windows, skipping registry modification."
}
displayName: Enable Long Paths if Necessary
- pwsh: |
git clone https://github.com/${{ parameters.TargetDocRepoOwner }}/${{ parameters.TargetDocRepoName }} ${{ parameters.WorkingDirectory }}/repo
try {
Push-Location ${{ parameters.WorkingDirectory }}/repo
Write-Host "git checkout ${{ parameters.SourceBranchName }}"
git checkout ${{ parameters.SourceBranchName }}
} finally {
Pop-Location
}
displayName: Clone Documentation Repository
ignoreLASTEXITCODE: false
- task: PowerShell@2
displayName: 'Apply Documentation Updates From Artifact'
inputs:
targetType: filePath
filePath: ${{ parameters.ScriptDirectory }}/update-docs-metadata.ps1
arguments: >
-ArtifactLocation ${{ parameters.ArtifactLocation }}
-Repository ${{ parameters.PackageRepository }}
-ReleaseSHA ${{ parameters.ReleaseSha }}
-RepoId ${{ parameters.RepoId }}
-WorkDirectory "${{ parameters.WorkingDirectory }}"
-DocRepoLocation "${{ parameters.WorkingDirectory }}/repo"
-Language "${{parameters.Language}}"
-Configs "${{ parameters.CIConfigs }}"
pwsh: true
env:
GH_TOKEN: $(azuresdk-github-pat)
- task: PowerShell@2
displayName: 'Update Docs.MS CI Targeted Packages'
condition: and(succeededOrFailed(), eq('${{ parameters.OnboardingBranch }}',''), ne('${{ parameters.SkipPackageJson }}', true))
inputs:
targetType: filePath
filePath: ${{ parameters.ScriptDirectory }}/update-docs-ci.ps1
arguments: >
-ArtifactLocation ${{ parameters.ArtifactLocation }}
-WorkDirectory "${{ parameters.WorkingDirectory }}"
-RepoId ${{ parameters.RepoId }}
-Repository ${{ parameters.PackageRepository }}
-ReleaseSHA ${{ parameters.ReleaseSha }}
-DocRepoLocation "${{ parameters.WorkingDirectory }}/repo"
-Configs "${{ parameters.CIConfigs }}"
pwsh: true
env:
GH_TOKEN: $(azuresdk-github-pat)
- template: /eng/common/pipelines/templates/steps/create-pull-request.yml
parameters:
RepoName: ${{ parameters.TargetDocRepoName }}
RepoOwner: ${{ parameters.TargetDocRepoOwner }}
PRBranchName: ${{ parameters.PRBranchName }}
CommitMsg: "Update docs metadata and targeting for release of ${{ parameters.ArtifactName }}"
PRTitle: "Docs.MS Release Updates for ${{ parameters.ArtifactName }}"
BaseBranchName: ${{ parameters.SourceBranchName }}
WorkingDirectory: ${{ parameters.WorkingDirectory }}/repo
ScriptDirectory: ${{ parameters.WorkingDirectory }}/${{ parameters.ScriptDirectory }}
GHReviewersVariable: ${{ parameters.GHReviewersVariable }}
GHTeamReviewersVariable: ${{ parameters.GHTeamReviewersVariable }}
PRLabels: ${{ parameters.PRLabels }}
CloseAfterOpenForTesting: ${{ parameters.CloseAfterOpenForTesting }}
- ${{if ne( parameters['OnboardingBranch'], '')}}:
- pwsh: |
Push-Location ${{ parameters.WorkingDirectory }}/repo
git reset --hard HEAD
git remote rm azure-sdk-fork
git checkout ${{ parameters.OnboardingBranch}}
displayName: Reset Docs Repo, Checkout Onboarding Branch
ignoreLASTEXITCODE: false
- task: PowerShell@2
displayName: 'Update Docs.MS CI Targeted Packages'
inputs:
targetType: filePath
filePath: ${{ parameters.ScriptDirectory }}/update-docs-ci.ps1
arguments: >
-ArtifactLocation ${{ parameters.ArtifactLocation }}
-WorkDirectory "${{ parameters.WorkingDirectory }}"
-RepoId ${{ parameters.RepoId }}
-Repository ${{ parameters.PackageRepository }}
-ReleaseSHA ${{ parameters.ReleaseSha }}
-DocRepoLocation "${{ parameters.WorkingDirectory }}/repo"
-Configs "${{ parameters.CIConfigs }}"
pwsh: true
env:
GH_TOKEN: $(azuresdk-github-pat)
- template: /eng/common/pipelines/templates/steps/create-pull-request.yml
parameters:
RepoName: ${{ parameters.TargetDocRepoName }}
RepoOwner: ${{ parameters.TargetDocRepoOwner }}
PRBranchName: ${{ parameters.PRBranchName }}-ci
CommitMsg: "CI Update for release of ${{ parameters.ArtifactName }}"
PRTitle: "Docs.MS CI Updates for ${{ parameters.ArtifactName }}"
BaseBranchName: ${{ parameters.OnboardingBranch }}
WorkingDirectory: ${{ parameters.WorkingDirectory }}/repo
ScriptDirectory: ${{ parameters.WorkingDirectory }}/${{ parameters.ScriptDirectory }}
GHReviewersVariable: ${{ parameters.GHReviewersVariable }}
GHTeamReviewersVariable: ${{ parameters.GHTeamReviewersVariable }}
CloseAfterOpenForTesting: ${{ parameters.CloseAfterOpenForTesting }}