83 lines
2.7 KiB
YAML
83 lines
2.7 KiB
YAML
# Expects azuresdk-github-pat is set to the PAT for azure-sdk
|
|
# Expects the buildtools to be cloned
|
|
|
|
parameters:
|
|
BaseBranchName: $(Build.SourceBranch)
|
|
PRBranchName: not-specified
|
|
PROwner: azure-sdk
|
|
CommitMsg: not-specified
|
|
RepoOwner: Azure
|
|
RepoName: not-specified
|
|
PushArgs:
|
|
WorkingDirectory: $(System.DefaultWorkingDirectory)
|
|
PRTitle: not-specified
|
|
ScriptDirectory: eng/common/scripts
|
|
GHReviewersVariable: ''
|
|
GHTeamReviewersVariable: ''
|
|
|
|
steps:
|
|
|
|
- pwsh: |
|
|
echo "git add -A"
|
|
git add -A
|
|
|
|
echo "git diff --name-status --cached --exit-code"
|
|
git diff --name-status --cached --exit-code
|
|
|
|
if ($LastExitCode -ne 0) {
|
|
echo "##vso[task.setvariable variable=HasChanges]$true"
|
|
echo "Changes detected so setting HasChanges=true"
|
|
}
|
|
else {
|
|
echo "##vso[task.setvariable variable=HasChanges]$false"
|
|
echo "No changes so skipping code push"
|
|
}
|
|
|
|
displayName: Check for changes
|
|
workingDirectory: ${{ parameters.WorkingDirectory }}
|
|
ignoreLASTEXITCODE: true
|
|
|
|
- task: PowerShell@2
|
|
displayName: Push changes
|
|
condition: and(succeeded(), eq(variables['HasChanges'], 'true'))
|
|
inputs:
|
|
pwsh: true
|
|
workingDirectory: ${{ parameters.WorkingDirectory }}
|
|
filePath: ${{ parameters.ScriptDirectory }}/git-branch-push.ps1
|
|
arguments: >
|
|
-PRBranchName "${{ parameters.PRBranchName }}"
|
|
-CommitMsg "${{ parameters.CommitMsg }}"
|
|
-GitUrl "https://$(azuresdk-github-pat)@github.com/${{ parameters.PROwner }}/${{ parameters.RepoName }}.git"
|
|
-PushArgs "${{ parameters.PushArgs }}"
|
|
|
|
- task: PowerShell@2
|
|
displayName: Create pull request
|
|
condition: and(succeeded(), eq(variables['HasChanges'], 'true'))
|
|
inputs:
|
|
pwsh: true
|
|
workingDirectory: ${{ parameters.WorkingDirectory }}
|
|
filePath: ${{ parameters.ScriptDirectory }}/Submit-PullRequest.ps1
|
|
arguments: >
|
|
-RepoOwner "${{ parameters.RepoOwner }}"
|
|
-RepoName "${{ parameters.RepoName }}"
|
|
-BaseBranch "${{ parameters.BaseBranchName }}"
|
|
-PROwner "${{ parameters.PROwner }}"
|
|
-PRBranch "${{ parameters.PRBranchName }}"
|
|
-AuthToken "$(azuresdk-github-pat)"
|
|
-PRTitle "${{ parameters.PRTitle }}"
|
|
|
|
- task: PowerShell@2
|
|
displayName: Tag a Reviewer on PR
|
|
condition: and(succeeded(), eq(variables['HasChanges'], 'true'))
|
|
inputs:
|
|
pwsh: true
|
|
workingDirectory: ${{ parameters.WorkingDirectory }}
|
|
filePath: ${{ parameters.ScriptDirectory }}/add-pullrequest-reviewers.ps1
|
|
arguments: >
|
|
-RepoOwner "${{ parameters.RepoOwner }}"
|
|
-RepoName "${{ parameters.RepoName }}"
|
|
-AuthToken "$(azuresdk-github-pat)"
|
|
-GitHubUsers "$(${{ parameters.GHReviewersVariable }})"
|
|
-GitHubTeams "$(${{ parameters.GHTeamReviewersVariable }})"
|
|
-PRNumber "$(Submitted.PullRequest.Number)"
|