DO NOT MERGE - TEST ONLY - Sync eng/common directory with azure-sdk-tools repository#6932
DO NOT MERGE - TEST ONLY - Sync eng/common directory with azure-sdk-tools repository#6932azure-sdk wants to merge 1 commit intoAzure:mainfrom
Conversation
There was a problem hiding this comment.
Pull request overview
This PR syncs the eng/common directory with the upstream azure-sdk-tools repository, bringing in updated build/release automation scripts, pipelines, and pinned tool dependencies used across Azure SDK repos.
Changes:
- Add pinned tooling definitions/docs for TypeSpec client generation (
tsp-client) and spelling checks (cspell). - Update test-proxy, link checking, package validation, and APIView automation (including migration to
apiview.organd new auth flows). - Introduce/refresh multiple release-planning and pipeline helper scripts/templates (DevOps work items, vcpkg cache vars, azsdk CLI install, AI eval pipeline, etc.).
Reviewed changes
Copilot reviewed 80 out of 84 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| eng/common/tsp-client/package.json | Pins @azure-tools/typespec-client-generator-cli version for reproducible builds. |
| eng/common/tsp-client/README.md | Documents installing/running pinned tsp-client via npm exec --prefix. |
| eng/common/testproxy/test-proxy-tool.yml | Adjusts test-proxy startup for macOS (.NET root handling). |
| eng/common/testproxy/test-proxy-standalone-tool.yml | Adjusts test-proxy startup and environment settings for non-Windows agents. |
| eng/common/testproxy/target_version.txt | Updates the pinned dev version of test-proxy. |
| eng/common/testproxy/dotnet-devcert.pfx | Adds dev certificate PFX used by test-proxy Kestrel. |
| eng/common/testproxy/dotnet-devcert.crt | Updates the dev certificate CRT content. |
| eng/common/spelling/package.json | Updates pinned cspell dependency version. |
| eng/common/spelling/README.md | Adds documentation for spelling scripts and dictionary maintenance. |
| eng/common/spelling/Invoke-Cspell.ps1 | Adds script to run cspell using pinned dependencies and stdin file list. |
| eng/common/scripts/stress-testing/stress-test-deployment-lib.ps1 | Updates stress cluster RG defaults and handles “no packages found” early-exit. |
| eng/common/scripts/stress-testing/find-all-stress-packages.ps1 | Avoids noisy chart file logging when none are found. |
| eng/common/scripts/stress-testing/deploy-stress-tests.ps1 | Adds safety check for local addons overrides in azure-sdk-tools repo workflows. |
| eng/common/scripts/login-to-github.ps1 | Adds GitHub App token minting via Key Vault signing + GH CLI environment login. |
| eng/common/scripts/logging.ps1 | Updates local logging behavior and adds MSBuild log line processing. |
| eng/common/scripts/job-matrix/Create-JobMatrix.ps1 | Adds grouped debug output for matrix generation inputs and config. |
| eng/common/scripts/common.ps1 | Raises minimum PowerShell version requirement and consolidates common imports. |
| eng/common/scripts/check-spelling-in-changed-files.ps1 | Switches spelling runner invocation to pass file list via stdin. |
| eng/common/scripts/Verify-Readme.ps1 | Updates default DocWarden version. |
| eng/common/scripts/Verify-Links.ps1 | Adds npm link handling via registry API; adds guidance toggle for instruction pages; restores guidance flag reliably. |
| eng/common/scripts/Verify-ChangeLogs.ps1 | Adds -ForRelease flag and improves skipVerifyChangeLog detection. |
| eng/common/scripts/Validate-All-Packages.ps1 | Refactors package validation/work item updates; supports PackageInfoFiles; migrates APIView host. |
| eng/common/scripts/Update-PullRequest-In-ReleasePlan.ps1 | Adds helper script to update PR URL/status fields in release plan work items. |
| eng/common/scripts/Update-DocsMsPackages.ps1 | Adds switch to skip legacy onboarding moniker. |
| eng/common/scripts/Update-DocsMsMetadata.ps1 | Adjusts release tag formatting for Java group IDs. |
| eng/common/scripts/Update-ChangeLog.ps1 | Adds optional GroupId support for package property lookup. |
| eng/common/scripts/Submit-PullRequest.ps1 | Filters bot accounts from reviewers/assignees to avoid permission failures. |
| eng/common/scripts/SetTestPipelineVersion.ps1 | Adds Artifacts-based mode and Java groupId-aware tag prefixing; improves parameter handling. |
| eng/common/scripts/Set-VcpkgWriteModeCache.ps1 | Adds script to mint SAS and set vcpkg cache vars for write-mode. |
| eng/common/scripts/Save-Package-Properties.ps1 | Adds artifact filtering option and logs SpecProjectPath. |
| eng/common/scripts/Prepare-Release.ps1 | Adds Java GroupId prompting, uses DevOps helper function, and fixes APIView package name formatting. |
| eng/common/scripts/Package-Properties.ps1 | Adds SpecProjectPath parsing; adds GroupId filtering; introduces Get-FullPackageName helper. |
| eng/common/scripts/Mark-ReleasePlanCompletion.ps1 | Adds script to mark release completion via azsdk CLI for package info files. |
| eng/common/scripts/Helpers/Resource-Helpers.ps1 | Adds Cognitive Services purgeable resource discovery/purge support; adjusts verbose logging. |
| eng/common/scripts/Helpers/DevOps-WorkItem-Helpers.ps1 | Adds global caching for az login/devops extension checks; GroupId-aware work item queries; adds release-plan helper functions; refactors Update-DevOpsReleaseWorkItem into a function. |
| eng/common/scripts/Helpers/CommandInvocation-Helpers.ps1 | Adds MSBuild-aware command logging; adds output processor hook; uses unified log grouping. |
| eng/common/scripts/Helpers/AzSdkTool-Helpers.ps1 | Adds install-directory/PATH helper functions for azsdk tool installation. |
| eng/common/scripts/Helpers/ApiView-Helpers.ps1 | Migrates APIView host to apiview.org and refines PR comment selection. |
| eng/common/scripts/Detect-Api-Changes.ps1 | Adds packageType and group-aware package naming; supports passing packageInfo to artifact discovery hook; improves error output. |
| eng/common/scripts/Delete-RemoteBranches.ps1 | Adds fast-path deletion for a known target branch to reduce GitHub API usage. |
| eng/common/scripts/Create-APIReview.ps1 | Migrates APIView endpoint/auth, adds packageType, supports PackageInfoFiles, and refactors upload flows. |
| eng/common/scripts/ChangeLog-Operations.ps1 | Preserves changelog header blocks and factors section header regex; adds content parsing helpers. |
| eng/common/pipelines/templates/steps/verify-links.yml | Broadens branch replacement regex to handle .git in repo URI. |
| eng/common/pipelines/templates/steps/verify-changelogs.yml | Adds ForRelease parameter wiring to changelog verification. |
| eng/common/pipelines/templates/steps/validate-all-packages.yml | Adds PackageInfoFiles param plumbing and adjusts variable-setting condition. |
| eng/common/pipelines/templates/steps/set-vcpkg-cache-vars.yml | Adds step template to set vcpkg cache vars (read-only + internal write-mode). |
| eng/common/pipelines/templates/steps/set-test-pipeline-version.yml | Adds artifacts parameter and fixes boolean conditional semantics. |
| eng/common/pipelines/templates/steps/publish-1es-artifact.yml | Disables SBOM for public and PR validation builds by default. |
| eng/common/pipelines/templates/steps/mark-release-completion.yml | Adds pipeline step to mark release completion using azsdk CLI. |
| eng/common/pipelines/templates/steps/login-to-github.yml | Adds pipeline step to mint GH token via Key Vault signing script. |
| eng/common/pipelines/templates/steps/install-azsdk-cli.yml | Adds pipeline step to install azsdk CLI and set AZSDK variable. |
| eng/common/pipelines/templates/steps/detect-api-changes.yml | Migrates API endpoint to apiview.org and relaxes condition gating. |
| eng/common/pipelines/templates/steps/daily-dev-build-variable.yml | Adds artifacts list pass-through for package property dumping. |
| eng/common/pipelines/templates/steps/create-authenticated-npmrc.yml | Adds service connection input for npmAuthenticate task. |
| eng/common/pipelines/templates/steps/create-apireview.yml | Refactors parameters, switches to AzureCLI auth path, and adds PackageInfoFiles support. |
| eng/common/pipelines/templates/steps/check-spelling.yml | Strongly types parameters; adds optional cspell-upgrade validation hook. |
| eng/common/pipelines/templates/stages/archetype-sdk-tool-pwsh.yml | Removes macOS pool configuration from the archetype template. |
| eng/common/pipelines/templates/jobs/prepare-pipelines.yml | Adds APIView service connection to internal service connection checks. |
| eng/common/pipelines/templates/jobs/perf.yml | Adds sparse checkout for tools repo and installs .NET SDKs with correct working directory; tightens conditions. |
| eng/common/pipelines/templates/jobs/npm-publish.yml | Resets $LASTEXITCODE after dist-tags lookup failure to avoid cascading failures. |
| eng/common/pipelines/templates/jobs/ai-eval-job.yml | Adds job template to run AI evals against copilot instructions. |
| eng/common/pipelines/templates/archetype-typespec-emitter.yml | Adds emitter identifier to branch/PR naming; switches to pinned tsp-client via npm ci and npm exec; adjusts checkout logic and draft PR conditions. |
| eng/common/pipelines/codeowners-linter.yml | Switches to partial clone and sets CodeQL skip variable for the linter pipeline. |
| eng/common/pipelines/ai-evals-tests.yml | Adds pipeline that runs AI eval tests when copilot instruction files change on main. |
| eng/common/mcp/azure-sdk-mcp.ps1 | Updates installer behavior for azsdk MCP usage; adds JSON-RPC logging; installs into a common bin directory with optional profile PATH update. |
| eng/common/mcp/README.md | Updates MCP transport requirements guidance and removes older SSE-centric language. |
| eng/common/knowledge/customizing-client-tsp.md | Adds comprehensive TypeSpec client customization reference documentation. |
| eng/common/instructions/copilot/sdk-release.instructions.md | Adds Copilot instructions for SDK release readiness and release flow. |
| eng/common/instructions/azsdk-tools/verify-setup.instructions.md | Adds Copilot tool instructions for environment verification/setup. |
| eng/common/instructions/azsdk-tools/verify-namespace-approval.instructions.md | Adds Copilot instructions for namespace approval workflow in release plans. |
| eng/common/instructions/azsdk-tools/validate-service-label.instructions.md | Adds Copilot instructions for validating/creating service labels. |
| eng/common/instructions/azsdk-tools/validate-codeowners.instructions.md | Adds Copilot instructions for validating/updating CODEOWNERS for services. |
| eng/common/instructions/azsdk-tools/typespec-to-sdk.instructions.md | Adds Copilot workflow guidance for TypeSpec-to-SDK generation and release planning. |
| eng/common/instructions/azsdk-tools/typespec-docs.instructions.md | Adds pointers to TypeSpec and TypeSpec Azure LLM-oriented docs indices. |
| eng/common/instructions/azsdk-tools/sdk-details-in-release-plan.instructions.md | Adds instructions for extracting language/package details and updating release plans. |
| eng/common/instructions/azsdk-tools/local-sdk-workflow.instructions.md | Adds detailed local SDK generation/build workflow guidance using MCP tools. |
| eng/common/instructions/azsdk-tools/create-release-plan.instructions.md | Adds release plan creation instructions and guardrails for LLM usage. |
| eng/common/instructions/azsdk-tools/check-package-validation.instructions.md | Adds instructions for running package validation checks via MCP tool. |
| eng/common/instructions/azsdk-tools/check-package-readiness.instructions.md | Adds instructions for checking package release readiness via MCP tool. |
| eng/common/TestResources/deploy-test-resources.yml | Splits ARM template parameters vs additional parameters in deployment calls. |
| eng/common/TestResources/TestResources-Helpers.ps1 | Refines .env writing logic, adds template/deployment failure helpers, and improves lint path. |
| eng/common/TestResources/New-TestResources.ps1 | Adds legacy param detection, suppresses subscription selection warnings, updates user OID sourcing, and improves deployment retry/validation behavior. |
Files not reviewed (2)
- eng/common/spelling/package-lock.json: Language not supported
- eng/common/tsp-client/package-lock.json: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| function Get-CommonInstallDirectory { | ||
| $installDirectory = Join-Path $HOME "bin" | ||
| if (-not (Test-Path $installDirectory)) { | ||
| New-Item -ItemType Directory -Path $installDirectory -Force | Out-Null | ||
| } | ||
|
|
||
| # Update PATH in current session | ||
| if (-not ($env:PATH -like "*$InstallDirectory*")) { | ||
| $env:PATH += ";$InstallDirectory" | ||
| } |
There was a problem hiding this comment.
Get-CommonInstallDirectory appends to $env:PATH using ';' unconditionally. On Linux/macOS PATH uses ':'; this will produce an invalid PATH entry and can prevent the newly installed tool from being found. Use the platform-appropriate separator (e.g., [IO.Path]::PathSeparator) and consider avoiding modifying PATH when running non-interactively.
Sync eng/common directory with azure-sdk-tools repository