Sync eng/common directory with azure-sdk-tools for PR 9698 (#6388)

* Fix pipeline generation for private repos

* Update eng/common/pipelines/templates/steps/sparse-checkout.yml

---------

Co-authored-by: Wes Haggard <weshaggard@users.noreply.github.com>
This commit is contained in:
Azure SDK Bot 2025-02-03 17:18:54 -08:00 committed by GitHub
parent cb3b4117da
commit ca7968c1cd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 28 additions and 8 deletions

View File

@ -50,17 +50,21 @@ jobs:
- '!sdk/**/recordings/*'
- '!sdk/**/SessionRecords/*'
- '!sdk/**/session-records/*'
${{ if endsWith(parameters.Repository, '-pr') }}:
TokenToUseForAuth: $(azuresdk-github-pat)
- template: /eng/common/pipelines/templates/steps/install-pipeline-generation.yml
- template: /eng/common/pipelines/templates/steps/set-default-branch.yml
- pwsh: |
Write-Host "Setting up pipeline variables"
if ("${{ parameters.Repository }}" -match "Azure/azure-sdk-for-(?<prefix>[^-]*)(?<pr>-pr)?") {
$prefix = $matches['prefix']
$devOpsPath = "\$prefix"
if ("${{ parameters.Repository }}" -match "Azure/azure-sdk-for-(?<lang>[^-]*)(?<pr>-pr)?") {
$lang = $matches['lang']
$devOpsPath = "\$lang"
$prefix = $lang
if ($matches['pr']) {
$devOpsPath = "${devOpsPath}\pr"
$prefix = "${prefix}-pr"
$prefix += "-pr"
Write-Host "##vso[task.setvariable variable=ProjectForPRValidation]internal"
}
Write-Host "Prefix = $prefix"
@ -79,8 +83,8 @@ jobs:
$testServiceConnections = '"Azure" "azure-sdk-tests" "azure-sdk-tests-preview" "azure-sdk-tests-public" "Azure SDK Test Resources - LiveTestSecrets"'
$internalServiceConnections = '"Azure" "Azure SDK Artifacts" "Azure SDK Engineering System" "opensource-api-connection" "AzureSDKEngKeyVault Secrets"'
# Map the language prefix to the appropriate variable groups
switch ($prefix)
# Map the language to the appropriate variable groups
switch ($lang)
{
"java" {
$internalVariableGroups = '$(AzureSDK_Maven_Release_Pipeline_Secrets) $(Release_Secrets_for_GitHub) $(APIReview_AutoCreate_Configurations)'
@ -115,7 +119,7 @@ jobs:
$generateUnifiedWeekly = 'true'
}
default {
Write-Error "Prefix '$prefix' is not recognized."
Write-Error "Language '$lang' is not recognized."
exit 1
}
}

View File

@ -11,11 +11,21 @@ parameters:
- name: SkipCheckoutNone
type: boolean
default: false
- name: TokenToUseForAuth
type: string
default: ''
steps:
- ${{ if not(parameters.SkipCheckoutNone) }}:
- checkout: none
- ${{ if ne(parameters.TokenToUseForAuth, '') }}:
- pwsh: |
$base64Token = [Convert]::ToBase64String([System.Text.Encoding]::UTF8.GetBytes("nobody:${{ parameters.TokenToUseForAuth }}"))
Write-Host "##vso[task.setvariable variable=_base64AuthToken;issecret=true;]$base64Token"
git config set --global "http.extraheader" "AUTHORIZATION: basic $base64Token"
displayName: Setup git config auth header
- task: PowerShell@2
${{ if eq(length(parameters.Repositories), 1) }}:
displayName: 'Sparse checkout ${{ parameters.Repositories[0].Name }}'
@ -126,3 +136,9 @@ steps:
}
pwsh: true
workingDirectory: $(System.DefaultWorkingDirectory)
- ${{ if ne(parameters.TokenToUseForAuth, '') }}:
- pwsh: |
git config unset --global "http.extraheader"
displayName: Removing git config auth header
condition: always()

View File

@ -4,7 +4,7 @@ parameters:
ConfigFileDir: $(Build.ArtifactStagingDirectory)/PackageInfo
steps:
- ${{ if and(ne(variables['Skip.PackageValidation'], 'true'), eq(variables['System.TeamProject'], 'internal')) }}:
- ${{ if and(ne(variables['Skip.PackageValidation'], 'true'), and(ne(variables['Build.Reason'], 'PullRequest'), eq(variables['System.TeamProject'], 'internal'))) }}:
- pwsh: |
echo "##vso[task.setvariable variable=SetAsReleaseBuild]false"
displayName: "Set as release build"