Skip to content

compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5#2415

Merged
g2vinay merged 3 commits into
microsoft:mainfrom
haagha:haagha/fix-default-vmsize
Apr 22, 2026
Merged

compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5#2415
g2vinay merged 3 commits into
microsoft:mainfrom
haagha:haagha/fix-default-vmsize

Conversation

@haagha
Copy link
Copy Markdown
Contributor

@haagha haagha commented Apr 15, 2026

What does this PR do?

This PR changes the default size of VM and VMSS creation from Standard_DS1_v2 to Standard_D2s_v5
This PR will also fixes bugs relating to VMSS update options binding.

GitHub issue number?

#2244

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
    • Created a changelog entry if the change falls among the following: new feature, bug fix, UI/UX update, breaking change, or updated dependencies. Follow the changelog entry guide
  • 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 running the script ./eng/scripts/Process-PackageReadMe.ps1. See Package README
    • 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 renamed tools, follow the Tool Rename Checklist and tag the PR with the breaking-change label
    • 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 command list in servers/Azure.Mcp.Server/docs/azmcp-commands.md
    • Ran ./eng/scripts/Update-AzCommandsMetadata.ps1 to update tool metadata in azmcp-commands.md (required for CI)
    • 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

@haagha haagha requested a review from g2vinay as a code owner April 15, 2026 21:02
Copilot AI review requested due to automatic review settings April 15, 2026 21:02
@haagha haagha requested review from a team as code owners April 15, 2026 21:02
@haagha haagha changed the title compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5 across commands and documentation compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5 and Fix Option Bindings for VMSS update Apr 15, 2026
Copy link
Copy Markdown
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

Note

Copilot was unable to run its full agentic suite in this review.

Updates Azure Compute tool defaults to use a newer VM size and fixes option parsing so vmss update can accept capacity and related tri-state flags.

Changes:

  • Change default VM size for vm create / vmss create from Standard_DS1_v2 to Standard_D2s_v5 across service logic, tests, and docs.
  • Fix VMSS update option typing by making --capacity, --overprovision, and --enable-auto-os-upgrade nullable to distinguish “not provided” vs “set”.
  • Add changelog entries and update server docs/e2e prompts to reflect the new defaults.

Reviewed changes

Copilot reviewed 14 out of 14 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
tools/Azure.Mcp.Tools.Compute/tests/Azure.Mcp.Tools.Compute.UnitTests/Vmss/VmssUpdateCommandTests.cs Adds a new validation case for --capacity in vmss update.
tools/Azure.Mcp.Tools.Compute/tests/Azure.Mcp.Tools.Compute.UnitTests/Vmss/VmssCreateCommandTests.cs Updates expected VMSS default size to Standard_D2s_v5.
tools/Azure.Mcp.Tools.Compute/tests/Azure.Mcp.Tools.Compute.UnitTests/Vm/VmCreateCommandTests.cs Updates expected VM default size to Standard_D2s_v5.
tools/Azure.Mcp.Tools.Compute/tests/Azure.Mcp.Tools.Compute.LiveTests/ComputeCommandTests.cs Updates live test assertions for VM size.
tools/Azure.Mcp.Tools.Compute/src/Services/ComputeService.cs Changes default VM size constant and related comments.
tools/Azure.Mcp.Tools.Compute/src/Options/ComputeOptionDefinitions.cs Updates help text and makes VMSS update options nullable.
tools/Azure.Mcp.Tools.Compute/src/ComputeSetup.cs Updates tool description default-size text.
tools/Azure.Mcp.Tools.Compute/src/Commands/Vmss/VmssCreateCommand.cs Updates command description default-size text.
tools/Azure.Mcp.Tools.Compute/src/Commands/Vm/VmCreateCommand.cs Updates command description default-size text.
servers/Azure.Mcp.Server/docs/e2eTestPrompts.md Updates e2e prompt to the new default size.
servers/Azure.Mcp.Server/docs/azmcp-commands.md Updates docs for default size for VM and VMSS create.
servers/Azure.Mcp.Server/changelog-entries/1776182026573.yaml Adds changelog entry for VMSS update option fix.
servers/Azure.Mcp.Server/changelog-entries/1775768065287.yaml Adds changelog entry for default VM size change.
eng/tools/ToolDescriptionEvaluator/prompts/namespace-tools.json Updates evaluator prompt tool description default-size text.

Comment thread tools/Azure.Mcp.Tools.Compute/src/Services/ComputeService.cs Outdated
Comment thread servers/Azure.Mcp.Server/docs/azmcp-commands.md Outdated
Comment thread servers/Azure.Mcp.Server/changelog-entries/1776182026573.yaml Outdated
Copy link
Copy Markdown
Contributor

@jongio jongio left a comment

Choose a reason for hiding this comment

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

Heads up: the PR description says "Standard_DS2_v2" but the actual change is to Standard_D2s_v5 - looks like a typo that could confuse reviewers.

The option type fix (Option<int> to Option<int?> and Option<bool> to Option<bool?>) is correct - the service layer already expected nullable types, and non-nullable options default to 0/false making it impossible to distinguish "not provided" from "explicitly set to default." Good catch.

The Copilot bot already flagged the missing test cases for --overprovision and --enable-auto-os-upgrade - that's worth addressing since the changelog claims all three options are fixed.

Comment thread servers/Azure.Mcp.Server/changelog-entries/1775768065287.yaml Outdated
Comment thread servers/Azure.Mcp.Server/changelog-entries/1776182026573.yaml Outdated
Haider Agha added 2 commits April 21, 2026 16:26
…vmsize

# Conflicts:
#	tools/Azure.Mcp.Tools.Compute/tests/Azure.Mcp.Tools.Compute.LiveTests/ComputeCommandTests.cs
@haagha haagha changed the title compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5 and Fix Option Bindings for VMSS update compute_vm_create: Update default VM size from Standard_DS1_v2 to Standard_D2s_v5 Apr 21, 2026
@g2vinay g2vinay merged commit 12746c6 into microsoft:main Apr 22, 2026
15 checks passed
@github-project-automation github-project-automation Bot moved this from Untriaged to Done in Azure MCP Server Apr 22, 2026
colbytimm pushed a commit to colbytimm/microsoft-mcp that referenced this pull request Apr 25, 2026
…ndard_D2s_v5 (microsoft#2415)

* Update default VM size from Standard_DS1_v2 to Standard_D2s_v5 across commands and documentation

* Address PR review comments: fix wording, changelog, and remove vmss update scope

---------

Co-authored-by: Haider Agha <Haider.Agha@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants