diff --git a/schemas/2022-04-01-preview/Microsoft.TestBase.json b/schemas/2022-04-01-preview/Microsoft.TestBase.json new file mode 100644 index 0000000000..a90ab7ad2f --- /dev/null +++ b/schemas/2022-04-01-preview/Microsoft.TestBase.json @@ -0,0 +1,1034 @@ +{ + "id": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.TestBase.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.TestBase", + "description": "Microsoft TestBase Resource Types", + "resourceDefinitions": { + "testBaseAccounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The resource name of the Test Base Account." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/TestBaseAccountResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a Test Base Account resource." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/testBaseAccounts_packages_childResource" + }, + { + "$ref": "#/definitions/testBaseAccounts_customerEvents_childResource" + } + ] + } + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.TestBase/testBaseAccounts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts" + }, + "testBaseAccounts_customerEvents": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The resource name of the Test Base Customer event." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomerEventProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A notification events subscribed to be received by customer." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.TestBase/testBaseAccounts/customerEvents" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/customerEvents" + }, + "testBaseAccounts_packages": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The resource name of the Test Base Package." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PackageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the Test Base Package." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/testBaseAccounts_packages_favoriteProcesses_childResource" + } + ] + } + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.TestBase/testBaseAccounts/packages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/packages" + }, + "testBaseAccounts_packages_favoriteProcesses": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The resource name of a favorite process in a package. If the process name contains characters that are not allowed in Azure Resource Name, we use 'actualProcessName' in request body to submit the name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FavoriteProcessProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a favorite process identifier." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses" + } + }, + "definitions": { + "Command": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Install", + "Launch", + "Close", + "Uninstall", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The action of the command." + }, + "alwaysRun": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to run the command even if a previous command is failed." + }, + "applyUpdateBefore": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to apply update before the command." + }, + "content": { + "type": "string", + "description": "The content of the command. The content depends on source type." + }, + "contentType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Inline", + "File", + "Path" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of command content." + }, + "maxRunTime": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the max run time of the command." + }, + "name": { + "type": "string", + "description": "The name of the command." + }, + "restartAfter": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to restart the VM after the command executed." + }, + "runAsInteractive": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to run the command in interactive mode." + }, + "runElevated": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to run the command as administrator." + } + }, + "required": [ + "action", + "content", + "contentType", + "name" + ], + "description": "The command used in the test" + }, + "CustomerEventProperties": { + "type": "object", + "properties": { + "eventName": { + "type": "string", + "description": "The name of the event subscribed to." + }, + "receivers": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationEventReceiver" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The notification event receivers." + } + }, + "required": [ + "eventName", + "receivers" + ], + "description": "A notification events subscribed to be received by customer." + }, + "DistributionGroupListReceiverValue": { + "type": "object", + "properties": { + "distributionGroups": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of distribution groups." + } + }, + "description": "The user object receiver value." + }, + "FavoriteProcessProperties": { + "type": "object", + "properties": { + "actualProcessName": { + "type": "string", + "description": "The actual name of the favorite process. It will be equal to resource name except for the scenario that the process name contains characters that are not allowed in the resource name." + } + }, + "required": [ + "actualProcessName" + ], + "description": "Properties of a favorite process identifier." + }, + "NotificationEventReceiver": { + "type": "object", + "properties": { + "receiverType": { + "type": "string", + "description": "The type of the notification event receiver." + }, + "receiverValue": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationReceiverValue" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A notification event receiver value." + } + }, + "description": "A notification event receivers." + }, + "NotificationReceiverValue": { + "type": "object", + "properties": { + "distributionGroupListReceiverValue": { + "oneOf": [ + { + "$ref": "#/definitions/DistributionGroupListReceiverValue" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user object receiver value." + }, + "subscriptionReceiverValue": { + "oneOf": [ + { + "$ref": "#/definitions/SubscriptionReceiverValue" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The subscription role receiver value." + }, + "userObjectReceiverValue": { + "oneOf": [ + { + "$ref": "#/definitions/UserObjectReceiverValue" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user object receiver value." + } + }, + "description": "A notification event receiver value." + }, + "PackageProperties": { + "type": "object", + "properties": { + "applicationName": { + "type": "string", + "description": "Application name" + }, + "blobPath": { + "type": "string", + "description": "The file path of the package." + }, + "flightingRing": { + "type": "string", + "description": "The flighting ring for feature update." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the resource." + }, + "targetOSList": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TargetOSInfo" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the target OSs of specific OS Update types." + }, + "tests": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Test" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The detailed test information." + }, + "version": { + "type": "string", + "description": "Application version" + } + }, + "required": [ + "applicationName", + "blobPath", + "flightingRing", + "targetOSList", + "tests", + "version" + ], + "description": "The properties of the Test Base Package." + }, + "SubscriptionReceiverValue": { + "type": "object", + "properties": { + "role": { + "type": "string", + "description": "The role of the notification receiver." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription id of the notification receiver." + }, + "subscriptionName": { + "type": "string", + "description": "The subscription name of the notification receiver." + } + }, + "description": "The subscription role receiver value." + }, + "SystemData": { + "type": "object", + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The type of identity that last modified the resource." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that last modified the resource." + } + }, + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "TargetOSInfo": { + "type": "object", + "properties": { + "baselineOSs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the baseline OSs to be tested." + }, + "osUpdateType": { + "type": "string", + "description": "Specifies the OS update type to test against, e.g., 'Security updates' or 'Feature updates'." + }, + "targetOSs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the target OSs to be tested." + } + }, + "required": [ + "osUpdateType", + "targetOSs" + ], + "description": "The information of the target OS to be tested." + }, + "Test": { + "type": "object", + "properties": { + "commands": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Command" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The commands used in the test." + }, + "isActive": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if this test is active.It doesn't schedule test for not active Test." + }, + "testType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OutOfBoxTest", + "FunctionalTest" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the test." + } + }, + "required": [ + "commands", + "testType" + ], + "description": "The definition of a Test." + }, + "TestBaseAccountResourceProperties": { + "type": "object", + "properties": { + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Cancelled", + "Creating", + "Deleting", + "Updating" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the resource." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/TestBaseAccountSKU" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes a Test Base Account SKU." + } + }, + "required": [ + "sku" + ], + "description": "The properties of a Test Base Account resource." + }, + "TestBaseAccountSKU": { + "type": "object", + "properties": { + "locations": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The locations that the SKU is available." + }, + "name": { + "type": "string", + "description": "The name of the SKU. This is typically a letter + number code, such as B0 or S0." + }, + "resourceType": { + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tier of this particular SKU." + } + }, + "required": [ + "name", + "tier" + ], + "description": "Describes a Test Base Account SKU." + }, + "testBaseAccounts_customerEvents_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The resource name of the Test Base Customer event." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomerEventProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A notification events subscribed to be received by customer." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "customerEvents" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/customerEvents" + }, + "testBaseAccounts_packages_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The resource name of the Test Base Package." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PackageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the Test Base Package." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "packages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/packages" + }, + "testBaseAccounts_packages_favoriteProcesses_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2022-04-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The resource name of a favorite process in a package. If the process name contains characters that are not allowed in Azure Resource Name, we use 'actualProcessName' in request body to submit the name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FavoriteProcessProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a favorite process identifier." + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "favoriteProcesses" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.TestBase/testBaseAccounts/packages/favoriteProcesses" + }, + "UserObjectReceiverValue": { + "type": "object", + "properties": { + "userObjectIds": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "user object ids." + } + }, + "description": "The user object receiver value." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index ec8f4f74a4..8fbf8c1637 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -17992,6 +17992,18 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-12-16-preview/Microsoft.TestBase.json#/resourceDefinitions/testBaseAccounts_packages_favoriteProcesses" }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.TestBase.json#/resourceDefinitions/testBaseAccounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.TestBase.json#/resourceDefinitions/testBaseAccounts_customerEvents" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.TestBase.json#/resourceDefinitions/testBaseAccounts_packages" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2022-04-01-preview/Microsoft.TestBase.json#/resourceDefinitions/testBaseAccounts_packages_favoriteProcesses" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-02-28-preview/Microsoft.TimeSeriesInsights.json#/resourceDefinitions/environments" },