MICROSOFT.CONTAINERSTORAGE

Operations_List

valid {
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
}

Pools_CreateOrUpdate

enum_AzureDiskSkuName := [ "Premium_LRS", "Standard_LRS", "StandardSSD_LRS", "UltraSSD_LRS", "Premium_ZRS", "PremiumV2_LRS", "StandardSSD_ZRS" ]
enum_ElasticSanSkuName := [ "Premium_LRS", "Premium_ZRS" ]
enum_ManagedServiceIdentityType := [ "None", "SystemAssigned", "UserAssigned", "SystemAssigned, UserAssigned" ]
enum_ReclaimPolicy := [ "Delete", "Retain" ]
enum_Zone := [ "1", "2", "3" ]

valid {
    input.Body.properties.zones[_] == enum_Zone[_]
    input.Body.properties.resources.requests.storage == INTEGER
    input.Body.properties.poolType.azureDisk.skuName == enum_AzureDiskSkuName[_]
    input.Body.properties.poolType.azureDisk.encryption.keyName == STRING
    input.Body.properties.poolType.azureDisk.encryption.keyVaultUri == STRING
    input.Body.properties.poolType.azureDisk.encryption.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.properties.poolType.azureDisk.encryption.identity.userAssignedIdentities.STRING == {}
    input.Body.properties.poolType.azureDisk.disks[_].id == STRING
    input.Body.properties.poolType.azureDisk.disks[_].reference == STRING
    input.Body.properties.poolType.elasticSan.skuName == enum_ElasticSanSkuName[_]
    input.Body.properties.poolType.elasticSan.encryption.keyName == STRING
    input.Body.properties.poolType.elasticSan.encryption.keyVaultUri == STRING
    input.Body.properties.poolType.elasticSan.encryption.identity.type == enum_ManagedServiceIdentityType[_]
    input.Body.properties.poolType.elasticSan.encryption.identity.userAssignedIdentities.STRING == {}
    input.Body.properties.poolType.ephemeralDisk.replicas == INTEGER
    input.Body.properties.poolType.ephemeralDisk.disks[_].id == STRING
    input.Body.properties.poolType.ephemeralDisk.disks[_].reference == STRING
    input.Body.properties.reclaimPolicy == enum_ReclaimPolicy[_]
    input.Body.properties.assignments[_].id == STRING
    input.Body.tags.STRING == STRING
    input.Body.location == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Pools_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Pools_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Pools_ListByResourceGroup

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Pools_ListBySubscription

valid {
    input.ReqMap.SubscriptionID == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
}

Pools_Update

valid {
    input.Body.tags.STRING == STRING
    input.Body.properties.resources.requests.storage == INTEGER
    input.Body.properties.poolType.azureDisk.disks[_].id == STRING
    input.Body.properties.poolType.azureDisk.disks[_].reference == STRING
    input.Body.properties.poolType.elasticSan.STRING == STRING
    input.Body.properties.poolType.ephemeralDisk.replicas == INTEGER
    input.Body.properties.poolType.ephemeralDisk.disks[_].id == STRING
    input.Body.properties.poolType.ephemeralDisk.disks[_].reference == STRING
    input.Body.properties.assignments[_].id == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_CreateOrUpdate

valid {
    input.Body.properties.source == STRING
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.snapshotName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Snapshots_ListByPool

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Volumes_CreateOrUpdate

valid {
    input.Body.properties.labels.STRING == STRING
    input.Body.properties.capacityGiB == INTEGER
    input.Body.STRING == STRING
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.volumeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Volumes_Delete

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.volumeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Volumes_Get

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.volumeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Volumes_ListByPool

valid {
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}

Volumes_Update

valid {
    input.Body.properties.labels.STRING == STRING
    input.Body.properties.capacityGiB == INTEGER
    input.ReqMap.SubscriptionID == STRING
    input.ReqMap.ResourceGroup == STRING
    input.ReqMap.poolName == STRING
    input.ReqMap.volumeName == STRING
    input.Qs.api-version == STRING
    input.ProviderMetadata.Region == STRING
    input.ProviderMetadata.SubscriptionID == STRING
    input.ProviderMetadata.ResourceGroup == STRING
}