File: update_snippet.yml

package info (click to toggle)
python-azure 20251014%2Bgit-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 766,472 kB
  • sloc: python: 6,314,744; ansic: 804; javascript: 287; makefile: 198; sh: 198; xml: 109
file content (38 lines) | stat: -rw-r--r-- 1,310 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
parameters:
  - name: PackageInfoFolder
    type: string
    default: ''

steps:
  # this step should run on python 3.9.
  # a previous step should have installed eng/ci_tools.txt to active venv
  - pwsh: |
      $failed = $false

      if ("$(TargetingString)" -ne "null") {
        foreach($targetedPackage in "$(TargetingString)".split(',')) {
          $pkgInfo = Get-ChildItem -Path "${{ parameters.PackageInfoFolder }}" -Recurse -Filter "$targetedPackage.json" `
            | Get-Content -Raw `
            | ConvertFrom-Json

          if ($pkgInfo) {
            python eng/tools/azure-sdk-tools/ci_tools/snippet_update/python_snippet_updater.py "$(Build.SourcesDirectory)/sdk/$($pkgInfo.ServiceDirectory)/$targetedPackage"
          }
          else {
            Write-Error "Unable to obtain package info for $targetedPackage."
            $failed = $true
          }

          if ($LASTEXITCODE -ne 0) {
            Write-Error "Failed to update snippets for $targetedPackage."
            $failed = $true
          }
        }

        if ($failed) {
          Write-Error "At least one snippet update failed. Check above output for details."
          exit 1
        }
      }
    displayName: Update Snippets
    condition: and(succeededOrFailed(), ne(variables['Skip.UpdateSnippet'],'true'))