Skip to content

Commit 79bf6bf

Browse files
authored
SKU schema update as per the ARM Contract (#20359)
* sku schema update * remove required field * add x-ms identifier to capability * regenerate examples * sdk pipeline fix
1 parent 151d278 commit 79bf6bf

File tree

36 files changed

+434
-523
lines changed

36 files changed

+434
-523
lines changed

specification/elasticsan/resource-manager/Microsoft.ElasticSan/preview/2021-11-20-preview/elasticsan.json

Lines changed: 86 additions & 160 deletions
Original file line numberDiff line numberDiff line change
@@ -1320,30 +1320,42 @@
13201320
"description": "List of ResourceType Sku",
13211321
"type": "array",
13221322
"items": {
1323-
"$ref": "#/definitions/ResourceTypeSku"
1323+
"$ref": "#/definitions/SkuInformation"
13241324
},
13251325
"x-ms-identifiers": [],
13261326
"readOnly": true
1327-
},
1328-
"nextLink": {
1329-
"description": "Links to the next set of results",
1330-
"type": "string",
1331-
"readOnly": true
13321327
}
13331328
}
13341329
},
1335-
"ResourceTypeSku": {
1336-
"description": "SkuInformation object",
1330+
"SkuInformation": {
1331+
"description": "ElasticSAN SKU and its properties",
13371332
"type": "object",
1333+
"required": [
1334+
"name"
1335+
],
13381336
"properties": {
1339-
"sku": {
1340-
"description": "The Sku tier",
1337+
"name": {
1338+
"type": "string",
1339+
"description": "Sku Name",
1340+
"$ref": "#/definitions/SkuName"
1341+
},
1342+
"tier": {
1343+
"type": "string",
1344+
"description": "Sku Tier",
1345+
"$ref": "#/definitions/SkuTier"
1346+
},
1347+
"resourceType": {
1348+
"readOnly": true,
1349+
"type": "string",
1350+
"description": "The type of the resource."
1351+
},
1352+
"locations": {
1353+
"readOnly": true,
13411354
"type": "array",
13421355
"items": {
1343-
"$ref": "#/definitions/Sku"
1356+
"type": "string"
13441357
},
1345-
"x-ms-identifiers": [],
1346-
"readOnly": true
1358+
"description": "The set of locations that the SKU is available. This will be supported and registered Azure Geo Regions (e.g. West US, East US, Southeast Asia, etc.)."
13471359
},
13481360
"locationInfo": {
13491361
"description": "Availability of the SKU for the location/zone",
@@ -1354,124 +1366,32 @@
13541366
"x-ms-identifiers": [],
13551367
"readOnly": true
13561368
},
1357-
"elasticSan": {
1358-
"description": "Scalability targets for the San account for a given tier",
1359-
"type": "object",
1360-
"$ref": "#/definitions/SanTierInfo"
1361-
},
1362-
"volumeGroup": {
1363-
"description": "Volume Group targets for the San account for a given tier",
1364-
"type": "object",
1365-
"$ref": "#/definitions/VolumeGroupTierInfo"
1366-
},
1367-
"volume": {
1368-
"description": "Volume targets for the San account for a given tier",
1369-
"type": "object",
1370-
"$ref": "#/definitions/VolumeTierInfo"
1371-
}
1372-
}
1373-
},
1374-
"SanTierInfo": {
1375-
"description": "San scalability target",
1376-
"type": "object",
1377-
"properties": {
1378-
"maxSizeTiB": {
1379-
"type": "integer",
1380-
"format": "int64",
1381-
"description": "Maximum San account capacity in TiB",
1382-
"readOnly": true
1383-
},
1384-
"minSizeTiB": {
1385-
"type": "integer",
1386-
"format": "int64",
1387-
"description": "Minimum San account capacity in TiB",
1388-
"readOnly": true
1389-
},
1390-
"minIncrementSizeTiB": {
1391-
"type": "integer",
1392-
"format": "int64",
1393-
"description": "Increment the San capacity in TiB",
1394-
"readOnly": true
1395-
},
1396-
"iopsPerBaseTiB": {
1397-
"type": "integer",
1398-
"format": "int64",
1399-
"description": "Maximum IOPS per BaseTiB",
1400-
"readOnly": true
1401-
},
1402-
"mbpsPerBaseTiB": {
1403-
"type": "integer",
1404-
"format": "int64",
1405-
"description": "Maximum MBps per BaseTiB",
1406-
"readOnly": true
1407-
},
1408-
"maxMBps": {
1409-
"type": "integer",
1410-
"format": "int64",
1411-
"description": "Maximum MBps",
1412-
"readOnly": true
1413-
},
1414-
"maxVolumeGroupCount": {
1415-
"type": "integer",
1416-
"format": "int64",
1417-
"description": "Maximum number of volume groups per San account",
1418-
"readOnly": true
1419-
}
1420-
}
1421-
},
1422-
"VolumeGroupTierInfo": {
1423-
"description": "Volume Group scalability target",
1424-
"type": "object",
1425-
"properties": {
1426-
"maxVolumeCount": {
1427-
"type": "integer",
1428-
"format": "int64",
1429-
"description": "Maximum number of Volumes per Volume Groups per San account",
1430-
"readOnly": true
1369+
"capabilities": {
1370+
"readOnly": true,
1371+
"type": "array",
1372+
"items": {
1373+
"$ref": "#/definitions/SKUCapability"
1374+
},
1375+
"x-ms-identifiers": [],
1376+
"description": "The capability information in the specified SKU."
14311377
}
14321378
}
14331379
},
1434-
"VolumeTierInfo": {
1435-
"description": "Volume scalability target",
1436-
"type": "object",
1380+
"SKUCapability": {
14371381
"properties": {
1438-
"maxSizeGiB": {
1439-
"type": "integer",
1440-
"format": "int64",
1441-
"description": "Maximum volume capacity in GiB",
1442-
"readOnly": true
1443-
},
1444-
"minSizeGiB": {
1445-
"type": "integer",
1446-
"format": "int64",
1447-
"description": "Minimum volume capacity in GiB",
1448-
"readOnly": true
1449-
},
1450-
"minIncrementSizeGiB": {
1451-
"type": "integer",
1452-
"format": "int64",
1453-
"description": "Increment volume capacity in GiB",
1454-
"readOnly": true
1455-
},
1456-
"iopsPerBaseGiB": {
1457-
"type": "integer",
1458-
"format": "int64",
1459-
"description": "Maximum IOPS per GiB",
1460-
"readOnly": true
1461-
},
1462-
"maxIops": {
1463-
"type": "integer",
1464-
"format": "int64",
1465-
"description": "Maximum IOPS",
1466-
"readOnly": true
1382+
"name": {
1383+
"readOnly": true,
1384+
"type": "string",
1385+
"description": "The name of capability."
14671386
},
1468-
"maxMBps": {
1469-
"type": "integer",
1470-
"format": "int64",
1471-
"description": "Maximum MBps",
1472-
"readOnly": true
1387+
"value": {
1388+
"readOnly": true,
1389+
"type": "string",
1390+
"description": "A string value to indicate states of given capability."
14731391
}
1474-
}
1392+
},
1393+
"description": "The capability information in the specified SKU.",
1394+
"type": "object"
14751395
},
14761396
"SkuLocationInfo": {
14771397
"description": "The location info.",
@@ -1499,47 +1419,53 @@
14991419
],
15001420
"properties": {
15011421
"name": {
1502-
"type": "string",
1503-
"enum": [
1504-
"Premium_LRS",
1505-
"Premium_ZRS"
1506-
],
1507-
"x-ms-enum": {
1508-
"name": "name",
1509-
"modelAsString": true,
1510-
"values": [
1511-
{
1512-
"value": "Premium_LRS",
1513-
"description": "Premium locally redundant storage"
1514-
},
1515-
{
1516-
"value": "Premium_ZRS",
1517-
"description": "Premium zone redundant storage"
1518-
}
1519-
]
1520-
},
1521-
"description": "The sku name."
1422+
"$ref": "#/definitions/SkuName"
15221423
},
15231424
"tier": {
1524-
"type": "string",
1525-
"enum": [
1526-
"Premium"
1527-
],
1528-
"x-ms-enum": {
1529-
"name": "tier",
1530-
"modelAsString": true,
1531-
"values": [
1532-
{
1533-
"value": "Premium",
1534-
"description": "Premium Tier"
1535-
}
1536-
]
1537-
},
1538-
"description": "The sku tier."
1425+
"$ref": "#/definitions/SkuTier"
15391426
}
15401427
},
15411428
"description": "The SKU name. Required for account creation; optional for update."
15421429
},
1430+
"SkuName": {
1431+
"type": "string",
1432+
"enum": [
1433+
"Premium_LRS",
1434+
"Premium_ZRS"
1435+
],
1436+
"x-ms-enum": {
1437+
"name": "SkuName",
1438+
"modelAsString": true,
1439+
"values": [
1440+
{
1441+
"value": "Premium_LRS",
1442+
"description": "Premium locally redundant storage"
1443+
},
1444+
{
1445+
"value": "Premium_ZRS",
1446+
"description": "Premium zone redundant storage"
1447+
}
1448+
]
1449+
},
1450+
"description": "The sku name."
1451+
},
1452+
"SkuTier": {
1453+
"type": "string",
1454+
"enum": [
1455+
"Premium"
1456+
],
1457+
"x-ms-enum": {
1458+
"name": "SkuTier",
1459+
"modelAsString": true,
1460+
"values": [
1461+
{
1462+
"value": "Premium",
1463+
"description": "Premium Tier"
1464+
}
1465+
]
1466+
},
1467+
"description": "The sku tier."
1468+
},
15431469
"IscsiTargetInfo": {
15441470
"type": "object",
15451471
"description": "Iscsi target information",

0 commit comments

Comments
 (0)