Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
b9d0d59
Initial - adding new 2025-06-01 stable version to Diagnostic RP. Only…
Elina-L Apr 29, 2025
bdc8cbe
Run npx prettier on on GetSpotPlacementScores
Elina-L Apr 29, 2025
d9cac72
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 29, 2025
9b2d327
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 29, 2025
2c676de
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 30, 2025
3b3bb32
Changing subscription id to all zeros and changing request ids to sam…
Elina-L Apr 30, 2025
a6e4e86
Adding suppression to DiagnosticRP/preview/2025-06-01/**/*.json
Elina-L Apr 30, 2025
4a0d313
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 30, 2025
f12f7c0
Change suppressions path to stable instead of preview
Elina-L Apr 30, 2025
3cfc4e5
Merge branch 'wenxliu/CDRPNewAPIVersion20250601' of https://github.co…
Elina-L Apr 30, 2025
ff7a733
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 30, 2025
ed0b31e
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 30, 2025
9c4450b
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L Apr 30, 2025
6faaf09
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 1, 2025
942d47d
Remove redundant property definitions and updating the description co…
Elina-L May 1, 2025
3b2225a
Merge branch 'wenxliu/CDRPNewAPIVersion20250601' of https://github.co…
Elina-L May 1, 2025
36389f5
Update description for availabilityZone
Elina-L May 1, 2025
df2f624
Remove H/M/L from placement score description comment
Elina-L May 1, 2025
ebdc439
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 1, 2025
4da3160
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 2, 2025
22458de
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 7, 2025
fcc43c0
Remove ProxyResource from ComputeRP/stable/2024-11-01/computeRPCommon…
Elina-L May 9, 2025
14055af
Merge branch 'wenxliu/CDRPNewAPIVersion20250601' of https://github.co…
Elina-L May 9, 2025
7528892
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 9, 2025
c0fc5ab
Merge branch 'wenxliu/CDRPNewAPIVersion20250601' of https://github.co…
Elina-L May 9, 2025
7e7909d
Reference local ProxyResource in diagnostic.json
Elina-L May 12, 2025
df4848b
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 12, 2025
1e421b0
Fix allref reference path to ProxyResource
Elina-L May 12, 2025
ac2b55c
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 12, 2025
6de83c3
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 12, 2025
0fee86d
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 12, 2025
6eb2d4f
Adding type: object to fix lint error
Elina-L May 12, 2025
c004693
Run prettier on diagnostic.json file
Elina-L May 12, 2025
3456eb9
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 13, 2025
bbb4bb0
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 13, 2025
9b19c5b
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 14, 2025
d8c2f92
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
mikeharder May 16, 2025
4c258de
Update version number from 2025-06-01 to 2025-06-05 to comply with CP…
Elina-L May 29, 2025
f493f33
Change suppressions yaml version number
Elina-L May 29, 2025
c49524f
Merge branch 'main' into wenxliu/CDRPNewAPIVersion20250601
Elina-L May 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,277 @@
{
"swagger": "2.0",
"info": {
"title": "ComputeDiagnosticResourceProviderClient",
"description": "The Compute Diagnostic Resource Provider Client",
"version": "2025-06-05"
},
"host": "management.azure.com",
"schemes": [
"https"
],
"consumes": [
"application/json"
],
"produces": [
"application/json"
],
"security": [
{
"azure_auth": [
"user_impersonation"
]
}
],
"securityDefinitions": {
"azure_auth": {
"type": "oauth2",
"authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
"flow": "implicit",
"description": "Azure Active Directory OAuth2 Flow",
"scopes": {
"user_impersonation": "impersonate your user account"
}
}
},
"paths": {
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/placementScores/spot": {
"get": {
"tags": [
"placementScores_spot"
],
"operationId": "SpotPlacementScores_Get",
"description": "Gets Spot Placement Scores metadata.",
"parameters": [
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
},
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
},
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/ComputeDiagnosticBase"
}
},
"default": {
"description": "Error response describing why the get call failed.",
"schema": {
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
}
}
},
"x-ms-examples": {
"Gets the metadata of Spot Placement Scores.": {
"$ref": "./examples/GetSpotPlacementScores.json"
}
}
}
},
"/subscriptions/{subscriptionId}/providers/Microsoft.Compute/locations/{location}/placementScores/spot/generate": {
"post": {
"tags": [
"spotPlacementScores"
],
"operationId": "SpotPlacementScores_Post",
"description": "Generates placement scores for Spot VM skus.",
"parameters": [
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/SubscriptionIdParameter"
},
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/LocationParameter"
},
{
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/parameters/ApiVersionParameter"
},
{
"name": "spotPlacementScoresInput",
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/SpotPlacementScoresInput"
},
"description": "SpotPlacementScores object supplied in the body of the Post spot placement scores operation."
}
],
"responses": {
"200": {
"description": "Success",
"schema": {
"$ref": "#/definitions/SpotPlacementScoresResponse"
}
},
"default": {
"description": "Error response describing why the operation failed.",
"schema": {
"$ref": "../../../../../../common-types/resource-management/v5/types.json#/definitions/ErrorResponse"
}
}
},
"x-ms-examples": {
"Returns spot VM placement scores for given configurations.": {
"$ref": "./examples/GenerateSpotPlacementScores.json"
}
}
}
}
},
"definitions": {
"ComputeDiagnosticBase": {
"description": "Contains metadata of a diagnostic type",
"type": "object",
"properties": {
"properties": {
"$ref": "#/definitions/DiagnosticProperties"
}
},
"allOf": [
{
"$ref": "#/definitions/ProxyResource"
}
]
},
"DiagnosticProperties": {
"description": "Contains additional properties of a diagnostic",
"type": "object",
"properties": {
"supportedResourceTypes": {
"type": "array",
"items": {
"type": "string"
},
"description": "Describes what are the supported resource types for a diagnostic."
}
}
},
"SpotPlacementScoresInput": {
"type": "object",
"properties": {
"desiredLocations": {
"type": "array",
"items": {
"type": "string"
},
"description": "The desired regions"
},
"desiredSizes": {
"type": "array",
"items": {
"$ref": "#/definitions/ResourceSize"
},
"description": "The desired virtual machine SKU sizes."
},
"desiredCount": {
"type": "integer",
"format": "int32",
"description": "Desired instance count per region/zone based on the scope."
},
"availabilityZones": {
"type": "boolean",
"description": "Defines if the scope is zonal or regional."
}
},
"description": "SpotPlacementScores API Input."
},
"SpotPlacementScoresResponse": {
"type": "object",
"properties": {
"desiredLocations": {
"type": "array",
"items": {
"type": "string"
},
"description": "The desired regions"
},
"desiredSizes": {
"type": "array",
"items": {
"$ref": "#/definitions/ResourceSize"
},
"description": "The desired virtual machine SKU sizes."
},
"desiredCount": {
"type": "integer",
"format": "int32",
"description": "Desired instance count per region/zone based on the scope."
},
"availabilityZones": {
"type": "boolean",
"description": "Defines if the scope is zonal or regional."
},
"placementScores": {
"type": "array",
"items": {
"$ref": "#/definitions/PlacementScore"
},
"description": "A placement score indicating the likelihood of successfully allocating the specified Spot VM(s), as well as the expected lifetimes of the Spot VM(s) after allocation."
}
},
"description": "SpotPlacementScores API response."
},
"ResourceSize": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "The resource's CRP virtual machine SKU size."
}
},
"description": "SpotPlacementRecommender API response."
},
"PlacementScore": {
"type": "object",
"properties": {
"sku": {
"type": "string",
"description": "The resource's CRP virtual machine SKU size."
},
"region": {
"type": "string",
"description": "The region."
},
"availabilityZone": {
"type": "string",
"description": "The availability zone."
},
"score": {
"type": "string",
"description": "A placement score indicating the likelihood of successfully allocating the specified Spot VM(s), as well as the expected lifetimes of the Spot VM(s) after allocation."
},
"isQuotaAvailable": {
"type": "boolean",
"description": "Whether the desired quota is available."
}
},
"description": "The spot placement score for sku/region/zone combination."
},
"ProxyResource": {
"type": "object",
"properties": {
"id": {
"readOnly": true,
"type": "string",
"description": "Resource Id"
},
"name": {
"readOnly": true,
"type": "string",
"description": "Resource name"
},
"type": {
"readOnly": true,
"type": "string",
"description": "Resource type"
}
},
"description": "The resource model definition for an Azure Resource Manager proxy resource. It will not have tags and a location",
"x-ms-azure-resource": true
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
{
"parameters": {
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"location": "eastus",
"api-version": "2025-06-05",
"spotPlacementScoresInput": {
"desiredLocations": [
"eastus",
"eastus2"
],
"desiredSizes": [
{
"sku": "Standard_D2_v2"
}
],
"desiredCount": 1,
"availabilityZones": true
}
},
"responses": {
"200": {
"body": {
"desiredLocations": [
"eastus",
"eastus2"
],
"desiredSizes": [
{
"sku": "Standard_D2_v2"
}
],
"desiredCount": 1,
"availabilityZones": true,
"placementScores": [
{
"sku": "Standard_D2_v2",
"region": "eastus",
"availabilityZone": "1",
"score": "High",
"isQuotaAvailable": true
},
{
"sku": "Standard_D2_v2",
"region": "eastus",
"availabilityZone": "2",
"score": "High",
"isQuotaAvailable": true
},
{
"sku": "Standard_D2_v2",
"region": "eastus",
"availabilityZone": "3",
"score": "High",
"isQuotaAvailable": true
},
{
"sku": "Standard_D2_v2",
"region": "eastus2",
"availabilityZone": "1",
"score": "DataNotFoundOrStale",
"isQuotaAvailable": true
},
{
"sku": "Standard_D2_v2",
"region": "eastus2",
"availabilityZone": "2",
"score": "High",
"isQuotaAvailable": true
},
{
"sku": "Standard_D2_v2",
"region": "eastus2",
"availabilityZone": "3",
"score": "High",
"isQuotaAvailable": true
}
]
},
"headers": {
"x-ms-request-id": "12345678-1234-1234-1234-123456789abc",
"location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/locations/eastus/placementScores/spot/generate?api-version=2025-06-05"
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"parameters": {
"subscriptionId": "00000000-0000-0000-0000-000000000000",
"location": "eastus",
"api-version": "2025-06-05"
},
"responses": {
"200": {
"headers": {
"x-ms-request-id": "12345678-1234-1234-1234-123456789abc"
},
"body": {
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Compute/placementScores/spot?api-version=2025-06-05",
"name": "spotPlacementScores",
"type": "Microsoft.Compute/placementScores",
"properties": {
"supportedResourceTypes": [
"Microsoft.Compute/virtualMachines"
]
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,6 @@
- tool: TypeSpecRequirement
path: DiagnosticRP/preview/2025-02-01-preview/**/*.json
reason: CDRP service not yet ready to migrate to typespec
- tool: TypeSpecRequirement
path: DiagnosticRP/stable/2025-06-05/**/*.json
reason: CDRP service not yet ready to migrate to typespec
Loading
Loading