From 87035534d0792c1107eb9f896c8e8ad51aa03371 Mon Sep 17 00:00:00 2001 From: Sima Zhu Date: Mon, 15 Mar 2021 12:39:16 -0700 Subject: [PATCH] Do not checkout existing --- .../templates/steps/docs-metadata-release.yml | 31 ++++++++++++++++++- eng/common/scripts/git-branch-push.ps1 | 9 ++++-- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/eng/common/pipelines/templates/steps/docs-metadata-release.yml b/eng/common/pipelines/templates/steps/docs-metadata-release.yml index 7722b2ec1b93..c28895728ba0 100644 --- a/eng/common/pipelines/templates/steps/docs-metadata-release.yml +++ b/eng/common/pipelines/templates/steps/docs-metadata-release.yml @@ -92,13 +92,27 @@ steps: WorkingDirectory: ${{ parameters.WorkingDirectory }}/repo ScriptDirectory: ${{ parameters.WorkingDirectory }}/${{ parameters.ScriptDirectory }} RemoteName: ${{ parameters.RemoteName }} +- template: /eng/common/pipelines/templates/steps/create-pull-request.yml + condition: and(Failed(), eq('${{ parameters.OnboardingBranch }}','')) + 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 @@ -128,3 +142,18 @@ steps: WorkingDirectory: ${{ parameters.WorkingDirectory }}/repo ScriptDirectory: ${{ parameters.WorkingDirectory }}/${{ parameters.ScriptDirectory }} RemoteName: ${{ parameters.RemoteName }} + - template: /eng/common/pipelines/templates/steps/create-pull-request.yml + condition: Failed() + 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 }} \ No newline at end of file diff --git a/eng/common/scripts/git-branch-push.ps1 b/eng/common/scripts/git-branch-push.ps1 index 72c0df0f6b63..72a252150aa5 100644 --- a/eng/common/scripts/git-branch-push.ps1 +++ b/eng/common/scripts/git-branch-push.ps1 @@ -60,8 +60,13 @@ if ($LASTEXITCODE -ne 0) exit $LASTEXITCODE } -Write-Host "git checkout -b $PRBranchName" -git checkout -b $PRBranchName +# Check if the branch has existed in remote. +$existed_in_remote = git ls-remote --heads $RemoteName $PRBranchName +if (!$existed_in_remote) { + Write-Host "git checkout -b $PRBranchName" + git checkout -b $PRBranchName +} + if ($LASTEXITCODE -ne 0) { Write-Error "Unable to create branch LASTEXITCODE=$($LASTEXITCODE), see command output above."