Skip to content

Conversation

@alzimmermsft
Copy link
Contributor

What does this PR do?

Migrates Azure Kubernetes Service to recorded live tests.

GitHub issue number?

Resolves #1275

Pre-merge Checklist

  • Required for All PRs
    • Read contribution guidelines
    • PR title clearly describes the change
    • Commit history is clean with descriptive messages (cleanup guide)
    • Added comprehensive tests for new/modified functionality
    • Updated servers/Azure.Mcp.Server/CHANGELOG.md and/or servers/Fabric.Mcp.Server/CHANGELOG.md for product changes (features, bug fixes, UI/UX, updated dependencies)
  • For MCP tool changes:
    • One tool per PR: This PR adds or modifies only one MCP tool for faster review cycles
    • Updated servers/Azure.Mcp.Server/README.md and/or servers/Fabric.Mcp.Server/README.md documentation
    • Validate README.md changes using script at eng/scripts/Process-PackageReadMe.ps1. See Package README
    • Updated command list in /servers/Azure.Mcp.Server/docs/azmcp-commands.md and/or /docs/fabric-commands.md
    • Run .\eng\scripts\Update-AzCommandsMetadata.ps1 to update tool metadata in azmcp-commands.md (required for CI)
    • For new or modified tool descriptions, ran ToolDescriptionEvaluator and obtained a score of 0.4 or more and a top 3 ranking for all related test prompts
    • For tools with new names, including new tools or renamed tools, update consolidated-tools.json
    • For new tools associated with Azure services or publicly available tools/APIs/products, add URL to documentation in the PR description
  • Extra steps for Azure MCP Server tool changes:
    • Updated test prompts in /servers/Azure.Mcp.Server/docs/e2eTestPrompts.md
    • 👉 For Community (non-Microsoft team member) PRs:
      • Security review: Reviewed code for security vulnerabilities, malicious code, or suspicious activities before running tests (crypto mining, spam, data exfiltration, etc.)
      • Manual tests run: added comment /azp run mcp - pullrequest - live to run Live Test Pipeline

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates Azure Kubernetes Service (AKS) live tests to use recorded test infrastructure, enabling tests to be run against pre-recorded HTTP interactions instead of requiring live Azure resources.

Key Changes

  • Converted test classes from CommandTestsBase to RecordedCommandTestsBase with test proxy fixture support
  • Implemented variable registration for dynamic values (cluster names, resource groups, node pool names) to support playback mode
  • Added assets.json configuration file to track recorded test assets in the Azure SDK assets repository

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

File Description
tools/Azure.Mcp.Tools.Aks/tests/Azure.Mcp.Tools.Aks.LiveTests/assets.json Added assets configuration file for managing recorded test data with Azure SDK assets repository
tools/Azure.Mcp.Tools.Aks/tests/Azure.Mcp.Tools.Aks.LiveTests/NodepoolGetCommandTests.cs Migrated to recorded tests with variable registration and playback-aware assertions
tools/Azure.Mcp.Tools.Aks/tests/Azure.Mcp.Tools.Aks.LiveTests/NodepoolCommandTests.cs Updated to use RecordedCommandTestsBase and registered variables for cluster identifiers
tools/Azure.Mcp.Tools.Aks/tests/Azure.Mcp.Tools.Aks.LiveTests/AksCommandTests.cs Converted to recorded tests with property assertions and playback mode handling

Copy link
Contributor

@scbedd scbedd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tiny formatting issue is blocking you. LMK when I can approve again.

Copy link
Contributor

@feiskyer feiskyer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, this is for tests. please fix the test failures

@github-project-automation github-project-automation bot moved this from Untriaged to In Progress in Azure MCP Server Dec 18, 2025
@alzimmermsft alzimmermsft merged commit b71af80 into microsoft:main Dec 18, 2025
24 checks passed
@github-project-automation github-project-automation bot moved this from In Progress to Done in Azure MCP Server Dec 18, 2025
@alzimmermsft alzimmermsft deleted the Recordings_Aks branch December 18, 2025 19:51
ankushbindlish2 added a commit that referenced this pull request Dec 19, 2025
* Fix versions in Fabric changelog and add debug text to script (#1391)

* Remove unnecessary build targets and resources (#1375)

* Move azure icon to images folder
* Remove duplicate resources and unnecessary build targets
* Remove unnecessary reference to eng/dnx from pack-nuget

* Prevent HashTable.Count from affecting result count check (#1397)

* Migrate Authorization to recordings (#1399)

* Fix execution of parallel testclasses within testassembly (#1393)

* assets.json longer optional
* changes to prevent multiple proxy instances from restoring simultaneously

* Fabric MCP: Add OneLake namespace to VSCode options (#1398)

* Fabric MCP: Add OneLake namespace to VSCode options

* Update descriptions

* Increment versions and update CHANGELOGs after release (#1371)

Updated CHANGELOGs and project version after release

* Migrate `marketplace` to recordings (#1396)

* simplify the client creation a bit, remove unnecessary test parts, as the newing that is being exercised in the construction of the test isn't actually used for anything. the product commands ARE though

* Migrate AKS to recordings (#1384)

* Migrate AKS to recordings

* Fix linting, synchronize starting proxy

* Revert lock change

---------

Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>

* Migrate Function App to recordings (#1410)

---------

Co-authored-by: Patrick Hallisey <[email protected]>
Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Amos Hersch <[email protected]>
Co-authored-by: vcolin7 <[email protected]>
Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>
ankushbindlish2 added a commit that referenced this pull request Dec 19, 2025
* Fix versions in Fabric changelog and add debug text to script (#1391)

* Remove unnecessary build targets and resources (#1375)

* Move azure icon to images folder
* Remove duplicate resources and unnecessary build targets
* Remove unnecessary reference to eng/dnx from pack-nuget

* Prevent HashTable.Count from affecting result count check (#1397)

* Migrate Authorization to recordings (#1399)

* Fix execution of parallel testclasses within testassembly (#1393)

* assets.json longer optional
* changes to prevent multiple proxy instances from restoring simultaneously

* Fabric MCP: Add OneLake namespace to VSCode options (#1398)

* Fabric MCP: Add OneLake namespace to VSCode options

* Update descriptions

* Increment versions and update CHANGELOGs after release (#1371)

Updated CHANGELOGs and project version after release

* Migrate `marketplace` to recordings (#1396)

* simplify the client creation a bit, remove unnecessary test parts, as the newing that is being exercised in the construction of the test isn't actually used for anything. the product commands ARE though

* Migrate AKS to recordings (#1384)

* Migrate AKS to recordings

* Fix linting, synchronize starting proxy

* Revert lock change

---------

Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>

* Migrate Function App to recordings (#1410)

---------

Co-authored-by: Patrick Hallisey <[email protected]>
Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Amos Hersch <[email protected]>
Co-authored-by: vcolin7 <[email protected]>
Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>
ankushbindlish2 added a commit that referenced this pull request Dec 19, 2025
* Fix versions in Fabric changelog and add debug text to script (#1391)

* Remove unnecessary build targets and resources (#1375)

* Move azure icon to images folder
* Remove duplicate resources and unnecessary build targets
* Remove unnecessary reference to eng/dnx from pack-nuget

* Prevent HashTable.Count from affecting result count check (#1397)

* Migrate Authorization to recordings (#1399)

* Fix execution of parallel testclasses within testassembly (#1393)

* assets.json longer optional
* changes to prevent multiple proxy instances from restoring simultaneously

* Fabric MCP: Add OneLake namespace to VSCode options (#1398)

* Fabric MCP: Add OneLake namespace to VSCode options

* Update descriptions

* Increment versions and update CHANGELOGs after release (#1371)

Updated CHANGELOGs and project version after release

* Migrate `marketplace` to recordings (#1396)

* simplify the client creation a bit, remove unnecessary test parts, as the newing that is being exercised in the construction of the test isn't actually used for anything. the product commands ARE though

* Migrate AKS to recordings (#1384)

* Migrate AKS to recordings

* Fix linting, synchronize starting proxy

* Revert lock change

---------

Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>

* Migrate Function App to recordings (#1410)

---------

Co-authored-by: Patrick Hallisey <[email protected]>
Co-authored-by: Alan Zimmer <[email protected]>
Co-authored-by: Scott Beddall <[email protected]>
Co-authored-by: Amos Hersch <[email protected]>
Co-authored-by: vcolin7 <[email protected]>
Co-authored-by: Scott Beddall (from Dev Box) <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

Migrate Azure.Mcp.Tools.Aks.LiveTests LiveTests to Recorded Tests

3 participants