Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
c3c12ca
Add minimum set example for VirtualMachineScaleSet update operation
Apr 2, 2026
5cf6e34
Merge remote-tracking branch 'origin/main' into compute-2026-04-01
Apr 24, 2026
53d30f8
Move package-2026-04-01 tag above merged api-versions; regenerate swa…
Apr 24, 2026
4911cad
Merge branch 'main' into compute-2026-04-01
haagha Apr 29, 2026
2b3c65e
Merge branch 'main' into compute-2026-04-01
haagha May 12, 2026
8b2b094
Swagger changes for SpotPlus (#42283)
SahilArora92 May 13, 2026
6b18f8a
Updates the typeHandlerVersion property to correctly differentiate be…
jscalev May 21, 2026
3bf5949
Processormode support (#43396)
krishnaprathyusha6 Jun 3, 2026
d8b3b08
Merge branch 'main' into compute-2026-04-01
audreyttt Jun 4, 2026
5285ea6
Re-format and compile TypeSpec
audreyttt Jun 5, 2026
753ad3b
Merge branch 'main' into compute-2026-04-01
audreyttt Jun 8, 2026
57442d4
Add extension metadata properties to VirtualMachineExtensionImage API…
nidhjain-ms1 Jun 9, 2026
63d7555
Typespec changes - add new property FirstPartyServiceTagId to IPTag (…
karthikka4820 Jun 11, 2026
fbc7591
Swagger for VMSS POST /MigrateVMAvailabilityZone API (#43716)
frank-pang-msft Jun 11, 2026
a8f8f5f
Add useLocalFileRules to HostEndpointSettings (2026-04-01) (#44017)
huiminyan2017 Jun 18, 2026
7a072b6
Merge branch 'main' into compute-2026-04-01
Jun 19, 2026
926bdc8
Regenerate Compute 2026-04-01 swagger
Jun 19, 2026
e9631fd
Add examples for Interconnect Block operations in Compute API
Jun 19, 2026
f51f718
[ComputeRP] Fix 2026-04-01 interconnect examples api-version
Jun 26, 2026
9d4d7a3
Merge origin/main into compute-2026-04-01
Jun 29, 2026
fc116a0
Merge remote-tracking branch 'origin/main' into compute-2026-04-01
Jul 2, 2026
443da29
Merge branch 'main' into compute-2026-04-01
haagha Jul 2, 2026
6861943
Merge remote-tracking branch 'origin/compute-2026-04-01' into compute…
Jul 6, 2026
aef460e
[ComputeRP] Fix 2026-04-01 interconnect source examples and recompile
Jul 6, 2026
059298a
Merge branch 'main' into compute-2026-04-01
haagha Jul 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,14 @@ import "@azure-tools/typespec-azure-core";
import "@azure-tools/typespec-azure-resource-manager";
import "@typespec/openapi";
import "@typespec/rest";
import "@typespec/versioning";
import "./models.tsp";

using TypeSpec.Rest;
using Azure.ResourceManager;
using TypeSpec.Http;
using TypeSpec.OpenAPI;
using TypeSpec.Versioning;
using Common;

namespace Compute;
Expand Down Expand Up @@ -97,6 +99,13 @@ interface VirtualMachineExtensionImages {
#suppress "@azure-tools/typespec-azure-core/documentation-required"
@query("$orderby")
$orderby?: string;

/**
* Expand the response to include additional read-only metadata. Allowed values: `properties` — returns extended metadata (`releaseCategory`, `urgencyLevel`, `runProfile`).
*/
@added(Versions.v2026_04_01)
@query("$expand")
$expand?: ListVersionsExpandOptions;
}
>;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -496,6 +496,20 @@ interface VirtualMachineScaleSets {
Response = OkResponse,
LroHeaders = ArmLroLocationHeader & Azure.Core.Foundations.RetryAfterHeader
>;

/**
* Migrates one or more virtual machines in a VM scale set to an availability zone.
*/
#suppress "@azure-tools/typespec-azure-resource-manager/arm-post-operation-response-codes" "migrateVMAvailabilityZone is a no-body LRO POST; 202+204 is the accurate contract per LintDiff PostResponseCodes requirements"
@tag("VirtualMachineScaleSets")
@added(Versions.v2026_04_01)
@action("migrateVMAvailabilityZone")
migrateVMAvailabilityZone is ComputeResourceActionAsync<
VirtualMachineScaleSet,
MigrateVMAvailabilityZoneInput,
Response = ArmNoContentResponse<"Resource operation accepted.">,
LroHeaders = ArmLroLocationHeader & Azure.Core.Foundations.RetryAfterHeader
>;
}

@@doc(VirtualMachineScaleSet.name, "The name of the VM scale set.");
Expand Down Expand Up @@ -567,3 +581,7 @@ interface VirtualMachineScaleSets {
VirtualMachineScaleSets.scaleOut::parameters.body,
"The input object for ScaleOut API."
);
@@doc(
VirtualMachineScaleSets.migrateVMAvailabilityZone::parameters.body,
"The input object for the MigrateVMAvailabilityZone API."
);
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,15 @@ using Compute;
"go, javascript"
);

// networkApiVersion refers to Microsoft.Network API version, not the compute service version.
// Suppress the name-based heuristic that incorrectly treats it as the service API version parameter.
@@apiVersion(VirtualMachineScaleSetNetworkProfile.networkApiVersion, false);
@@apiVersion(
VirtualMachineScaleSetUpdateNetworkProfile.networkApiVersion,
false
);
@@apiVersion(NetworkProfile.networkApiVersion, false);

@@alternateType(
VirtualMachineScaleSetStorageProfile.diskControllerType,
string,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}",
"availabilitySetName": "myAvailabilitySet"
},
"responses": {
"204": {}
},
"operationId": "AvailabilitySets_CancelMigrationToVirtualMachineScaleSet",
"title": "AvailabilitySet_CancelMigrationToVirtualMachineScaleSet"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}",
"availabilitySetName": "myAvailabilitySet",
"parameters": {
"virtualMachineScaleSetName": "{vmss-name}"
}
},
"responses": {
"202": {
"headers": {
"Location": "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/westus/operations/{operationId}&monitor=true&api-version=2026-04-01"
}
}
},
"operationId": "AvailabilitySets_ConvertToVirtualMachineScaleSet",
"title": "AvailabilitySet_ConvertToVirtualMachineScaleSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "myResourceGroup",
"api-version": "2026-04-01",
"availabilitySetName": "myAvailabilitySet",
"parameters": {
"location": "westus",
"properties": {
"platformFaultDomainCount": 2,
"platformUpdateDomainCount": 20
}
}
},
"responses": {
"200": {
"body": {
"sku": {
"name": "Classic"
},
"name": "myAvailabilitySet",
"properties": {
"platformFaultDomainCount": 2,
"platformUpdateDomainCount": 20,
"virtualMachineScaleSetMigrationInfo": {
"defaultVirtualMachineScaleSetInfo": {
"defaultVirtualMachineScaleSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
},
"constrainedMaximumCapacity": false
},
"migrateToVirtualMachineScaleSet": {
"id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
}
}
},
"location": "westus",
"type": "Microsoft.Compute/availabilitySets",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet"
}
}
},
"operationId": "AvailabilitySets_CreateOrUpdate",
"title": "Create an availability set."
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
{
"parameters": {
"subscriptionId": "{subscription-id}",
"resourceGroupName": "myResourceGroup",
"api-version": "2026-04-01",
"availabilitySetName": "myAvailabilitySet",
"parameters": {
"location": "westus",
"properties": {
"platformFaultDomainCount": 2,
"platformUpdateDomainCount": 20
}
}
},
"responses": {
"200": {
"body": {
"sku": {
"name": "Classic"
},
"name": "myAvailabilitySet",
"properties": {
"scheduledEventsPolicy": {
"scheduledEventsAdditionalPublishingTargets": {
"eventGridAndResourceGraph": {
"enable": true,
"scheduledEventsApiVersion": "2020-07-01"
}
},
"userInitiatedRedeploy": {
"automaticallyApprove": true
},
"userInitiatedReboot": {
"automaticallyApprove": true
},
"allInstancesDown": {
"automaticallyApprove": true
}
},
"platformFaultDomainCount": 2,
"platformUpdateDomainCount": 20
},
"location": "westus",
"type": "Microsoft.Compute/availabilitySets",
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet"
}
}
},
"operationId": "AvailabilitySets_CreateOrUpdate",
"title": "Create an availability set with Scheduled Event Policy."
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {},
"204": {}
},
"operationId": "AvailabilitySets_Delete",
"title": "AvailabilitySet_Delete_MaximumSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aaaaaaaaaaa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {},
"204": {}
},
"operationId": "AvailabilitySets_Delete",
"title": "AvailabilitySet_Delete_MinimumSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aaaaaaaaaaaa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {
"body": {
"location": "westus",
"properties": {
"platformFaultDomainCount": 2,
"platformUpdateDomainCount": 20,
"virtualMachineScaleSetMigrationInfo": {
"defaultVirtualMachineScaleSetInfo": {
"defaultVirtualMachineScaleSet": {
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmss-name}"
},
"constrainedMaximumCapacity": false
},
"migrateToVirtualMachineScaleSet": {
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/{vmss-name}"
}
},
"virtualMachines": [
{
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
}
],
"proximityPlacementGroup": {
"id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/availabilitySets/{availabilitySetName}"
},
"scheduledEventsPolicy": {
"scheduledEventsAdditionalPublishingTargets": {
"eventGridAndResourceGraph": {
"enable": true,
"scheduledEventsApiVersion": "2020-07-01"
}
},
"userInitiatedRedeploy": {
"automaticallyApprove": true
},
"userInitiatedReboot": {
"automaticallyApprove": true
},
"allInstancesDown": {
"automaticallyApprove": true
}
},
"statuses": [
{
"code": "aaaaaaaaaaaaaaaaaaaaaaa",
"level": "Info",
"displayStatus": "aaaaaa",
"message": "a",
"time": "2021-11-30T12:58:26.522Z"
}
]
},
"sku": {
"name": "Classic",
"tier": "aaaaaaaaaaaaaa",
"capacity": 29
},
"id": "/subscriptions/{subscription-id}/resourceGroups/myResourceGroup/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet",
"name": "myAvailabilitySet",
"type": "Microsoft.Compute/availabilitySets",
"tags": {
"key9626": "aaaaaaaaaaaaaaaaaaaa",
"key2505": "aa"
}
}
}
},
"operationId": "AvailabilitySets_Get",
"title": "AvailabilitySet_Get_MaximumSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {
"body": {
"location": "westus",
"id": "/subscriptions/{subscription-id}/resourceGroups/rgcompute/providers/Microsoft.Compute/availabilitySets/myAvailabilitySet"
}
}
},
"operationId": "AvailabilitySets_Get",
"title": "AvailabilitySet_Get_MinimumSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aaaaaaaaaaaaaaaaaaaa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {
"body": {
"value": [
{
"name": "Standard_A1_V2",
"numberOfCores": 1,
"osDiskSizeInMB": 1047552,
"resourceDiskSizeInMB": 10240,
"memoryInMB": 2048,
"maxDataDiskCount": 2
},
{
"name": "Standard_A2_V2",
"numberOfCores": 2,
"osDiskSizeInMB": 1047552,
"resourceDiskSizeInMB": 20480,
"memoryInMB": 4096,
"maxDataDiskCount": 4
}
]
}
}
},
"operationId": "AvailabilitySets_ListAvailableSizes",
"title": "AvailabilitySet_ListAvailableSizes_MaximumSet_Gen"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"parameters": {
"resourceGroupName": "rgcompute",
"availabilitySetName": "aa",
"api-version": "2026-04-01",
"subscriptionId": "{subscription-id}"
},
"responses": {
"200": {
"body": {}
}
},
"operationId": "AvailabilitySets_ListAvailableSizes",
"title": "AvailabilitySet_ListAvailableSizes_MinimumSet_Gen"
}
Loading
Loading