Skip to main content

az-scout-plugin-vm-sku-modernization

External Az Scout plugin for VM SKU Modernization. It inventories legacy VM SKUs (v2-v5) that are in scope for Azure v6/v7 migration planning and adds guided recommendations for readiness, pilot validation, storage/network checks, quota planning, and exportable migration checklists.

What it provides

  • a UI tab: VM SKU Modernization
  • plugin API routes under /plugins/vm-sku-modernization/
  • an MCP tool: list_migration_candidate_vms
  • a target-SKU recommendation panel for inferred v6/v7 candidates
  • script helpers for validation steps that must be run locally or from Azure CLI
  • a Markdown checklist export from the VM detail modal

Package and plugin identifiers

Surface Value
GitHub repository JoGbd/az-scout-plugin-vm-sku-modernization
PyPI package az-scout-plugin-vm-sku-modernization
Python module az_scout_vm_sku_modernization
Az Scout plugin entry point vm_sku_modernization
Mounted plugin name vm-sku-modernization

The plugin is auto-discovered through:

[project.entry-points."az_scout.plugins"]
vm_sku_modernization = "az_scout_vm_sku_modernization:plugin"

Install locally in Az Scout

From this repository:

uv sync --group dev
uv pip install -e .

Then start Az Scout from your main Az Scout workspace:

uv run az-scout web

The plugin tab appears as VM SKU Modernization once the editable install is visible in the Python environment used by Az Scout.

Main capabilities

The dashboard includes:

  • inventory columns for VM name, resource group, subscription, region, SKU, generation, OS, image publisher, disk controller, and zones
  • readiness recommendations with statuses such as Verified, Needs remediation, Script / check, and Human review
  • priority badges such as Critical risk, Important, and Advisory
  • inline Why it matters guidance per recommendation
  • an Advanced check flow for deep checks that require live ARM calls
  • script helpers for:
    • driver validation
    • SCSI path validation
    • pilot boot diagnostics / extension validation
    • before/after network validation
    • app-state inventory
    • OS-disk backup / restore
    • temporary-disk checks
    • quota and capacity planning
  • a checklist export for the currently selected VM

Migration-effort scoring is calculated by the backend and included in each VM record. Publisher classification is intentionally conservative: only publishers whose name begins with Microsoft are treated as first-party; Canonical and all other publishers remain third-party for planning purposes.

VM detail modal data flow

  1. Selecting a keyboard-focusable inventory row opens the plugin modal and builds workload recommendations from the VM inventory record.
  2. The plugin derives v5 or v6/v7 candidate names, then queries /api/skus for candidates in parallel. Results are cached for five minutes per tenant, subscription, region, source SKU, and modernization target.
  3. The highest-confidence candidate is passed to /api/sku-detail. The response supplies the shared VM Profile, Zone Availability, Quota, Basic Deployment Confidence, and Pricing renderers.
  4. Detail responses are cached for five minutes per candidate and currency. Changing the currency performs (or reuses) the matching currency request; an older in-flight response cannot replace the newly selected currency.
  5. A failed or partial profile, quota, or pricing response does not hide the workload recommendations. The modal identifies unavailable values explicitly and uses the /api/skus snapshot only where it contains usable data.

Caches are cleared when inventory or modernization target changes. Live Azure capacity, quota, and retail prices can change during the cache window and must be revalidated before deployment.

Score limits

Basic Deployment Confidence is an indicative ranking signal, not a deployment guarantee. It combines the signals returned by az-scout (for example SKU match, quota pressure, zones, restrictions, and pricing pressure), excludes missing signals, and can become blocked when a hard constraint is detected. It does not prove instantaneous capacity, application compatibility, image support, performance, reservation eligibility, or successful migration.

The separate Migration Effort badge is a deterministic planning heuristic based on the inventory fields available to this plugin: Hyper-V generation, disk controller, security profile, publisher, and hibernation. Missing fields are handled conservatively. Neither score replaces a pilot, the Advanced check, subscription quota validation, or workload-owner review.

Quality checks

uv run ruff check src/ tests/
uv run ruff format --check src/ tests/
uv run mypy src/
uv run pytest
node --test tests/frontend/vm-sku-modernization.test.js

Publish and submit to catalog

  1. Push this plugin to JoGbd/az-scout-plugin-vm-sku-modernization.
  2. Tag a release (CalVer style recommended, for example v2026.7.0).
  3. Publish the package to PyPI using .github/workflows/publish.yml.
  4. Open a catalog request in Az Scout with:
    • the GitHub repo URL
    • the PyPI package name: az-scout-plugin-vm-sku-modernization
    • a short description and screenshots

Documentation

For Azure migration guidance behind these recommendations, see:

https://learn.microsoft.com/en-us/azure/virtual-machines/migration/sizes/sizes-v6-v7-migration-plan

Disclaimer

This plugin is not affiliated with Microsoft. Capacity, pricing, availability, and validation outputs are indicative and must be reviewed in your own tenant before production rollout.

Metadata

Release files for az-scout-plugin-vm-sku-modernization 2026.8.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for az-scout-plugin-vm-sku-modernization 2026.8.0
File Size Uploaded Provenance Actions
az_scout_plugin_vm_sku_modernization-2026.8.0.tar.gz 184.0 kB With provenance Details for az_scout_plugin_vm_sku_modernization-2026.8.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for az-scout-plugin-vm-sku-modernization 2026.8.0
File Interpreter ABI Platform Actions
az_scout_plugin_vm_sku_modernization-2026.8.0-py3-none-any.whl Python 3 none any Details for az_scout_plugin_vm_sku_modernization-2026.8.0-py3-none-any.whl

Total release size: 238.3 kB

Release files / az_scout_plugin_vm_sku_modernization-2026.8.0.tar.gz

Download URL az_scout_plugin_vm_sku_modernization-2026.8.0.tar.gz
Size 184.0 kB
Tags Source
SHA-256 checksum
How to use checksums
d782c2cc238ff0a40a1dc40a9eaeff5447bc165149255b3f4832dc189f7e8e1b
BLAKE2b-256 checksum
How to use checksums
e2e22553461873b7b926f54dd11bff9a2ce9e5deda8c4ea3d50fe4358d8a6660
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 4, 2026.

Transparency log

Release files / az_scout_plugin_vm_sku_modernization-2026.8.0-py3-none-any.whl

Download URL az_scout_plugin_vm_sku_modernization-2026.8.0-py3-none-any.whl
Size 54.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
50f4560a5b55c39759173e5d9d64b3d0065d5a1a1d3583203e27ef25f1fd221d
BLAKE2b-256 checksum
How to use checksums
104f88c05d58e60bd156590a718352b88e03f1097fcc9acb5cad45e273b21202
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 4, 2026.

Transparency log

Security for az-scout-plugin-vm-sku-modernization 2026.8.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for az_scout_plugin_vm_sku_modernization-2026.8.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2026.8.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page