From 3c55f945e42640b425bf65e4f6532248e8e0e521 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Fri, 6 Aug 2021 02:18:18 +0000 Subject: [PATCH] CodeGen from PR 15539 in Azure/azure-rest-api-specs Merge 979d8d2b170fa8f14717eecc9c51d935efef87e7 into 16630a2e64d6ae96ccc2272d2d8f4b143d18b5d4 --- .../azext_healthbot/generated/_help.py | 13 +- .../azext_healthbot/generated/_params.py | 33 +++++- .../azext_healthbot/generated/custom.py | 18 ++- .../tests/latest/example_steps.py | 27 +++-- .../tests/latest/test_healthbot_scenario.py | 27 ++++- .../vendored_sdks/healthbot/_configuration.py | 2 +- .../healthbot/_healthbot_client.py | 2 +- .../healthbot/aio/_configuration.py | 2 +- .../healthbot/aio/_healthbot_client.py | 2 +- .../aio/operations/_bots_operations.py | 18 +-- .../healthbot/aio/operations/_operations.py | 4 +- .../healthbot/models/__init__.py | 8 ++ .../models/_healthbot_client_enums.py | 13 +- .../vendored_sdks/healthbot/models/_models.py | 107 +++++++++++++++-- .../healthbot/models/_models_py3.py | 112 ++++++++++++++++-- .../healthbot/operations/_bots_operations.py | 18 +-- .../healthbot/operations/_operations.py | 4 +- src/healthbot/report.md | 20 +++- 18 files changed, 347 insertions(+), 83 deletions(-) diff --git a/src/healthbot/azext_healthbot/generated/_help.py b/src/healthbot/azext_healthbot/generated/_help.py index 14da801aca8..c7a622c24b3 100644 --- a/src/healthbot/azext_healthbot/generated/_help.py +++ b/src/healthbot/azext_healthbot/generated/_help.py @@ -41,12 +41,14 @@ helps['healthbot create'] = """ type: command - short-summary: "Create a new HealthBot." + short-summary: "Create a new Azure Health Bot." examples: - name: BotCreate text: |- - az healthbot create --name "samplebotname" --location "East US" --sku "F0" --resource-group \ -"healthbotClient" + az healthbot create --bot-name "samplebotname" --type "SystemAssigned, UserAssigned" \ +--user-assigned-identities "{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/\ +userassignedidentities/my-mi\\":{},\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedide\ +ntity/userassignedidentities/my-mi2\\":{}}" --location "East US" --name "F0" --resource-group "healthbotClient" """ helps['healthbot update'] = """ @@ -55,7 +57,10 @@ examples: - name: BotUpdate text: |- - az healthbot update --bot-name "samplebotname" --name "F0" --resource-group "healthbotClient" + az healthbot update --bot-name "samplebotname" --type "SystemAssigned, UserAssigned" \ +--user-assigned-identities "{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/\ +userassignedidentities/my-mi\\":{},\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedide\ +ntity/userassignedidentities/my-mi2\\":{}}" --name "F0" --resource-group "healthbotClient" """ helps['healthbot delete'] = """ diff --git a/src/healthbot/azext_healthbot/generated/_params.py b/src/healthbot/azext_healthbot/generated/_params.py index 71c4f46116c..110fad7a947 100644 --- a/src/healthbot/azext_healthbot/generated/_params.py +++ b/src/healthbot/azext_healthbot/generated/_params.py @@ -16,7 +16,10 @@ resource_group_name_type, get_location_type ) -from azure.cli.core.commands.validators import get_default_location_from_resource_group +from azure.cli.core.commands.validators import ( + get_default_location_from_resource_group, + validate_file_or_dict +) def load_arguments(self, _): @@ -31,18 +34,38 @@ def load_arguments(self, _): with self.argument_context('healthbot create') as c: c.argument('resource_group_name', resource_group_name_type) - c.argument('bot_name', options_list=['--name', '-n', '--bot-name'], type=str, help='The name of the Bot resource.') + c.argument('bot_name', type=str, help='The name of the Bot resource.') c.argument('tags', tags_type) c.argument('location', arg_type=get_location_type(self.cli_ctx), required=False, validator=get_default_location_from_resource_group) - c.argument('sku', arg_type=get_enum_type(['F0', 'S1', 'C0']), help='The name of the HealthBot SKU', + c.argument('type_', options_list=['--type'], arg_type=get_enum_type(['SystemAssigned', 'UserAssigned', + 'SystemAssigned, UserAssigned', 'None']), + help='The identity type. The type \'SystemAssigned, UserAssigned\' includes both an implicitly ' + 'created identity and a set of user assigned identities. The type \'None\' will remove any ' + 'identities from the Azure Health Bot', arg_group='Identity') + c.argument('user_assigned_identities', type=validate_file_or_dict, help='The list of user identities ' + 'associated with the resource. The user identity dictionary key references will be ARM resource ids ' + 'in the form: \'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microso' + 'ft.ManagedIdentity/userAssignedIdentities/{identityName}\'. Expected value: ' + 'json-string/@json-file.', arg_group='Identity') + c.argument('name', arg_type=get_enum_type(['F0', 'S1', 'C0']), help='The name of the Azure Health Bot SKU', arg_group='Sku') with self.argument_context('healthbot update') as c: c.argument('resource_group_name', resource_group_name_type) - c.argument('bot_name', options_list=['--name', '-n', '--bot-name'], type=str, help='The name of the Bot resource.', id_part='name') + c.argument('bot_name', type=str, help='The name of the Bot resource.', id_part='name') c.argument('tags', tags_type) - c.argument('sku', arg_type=get_enum_type(['F0', 'S1', 'C0']), help='The name of the HealthBot SKU', + c.argument('type_', options_list=['--type'], arg_type=get_enum_type(['SystemAssigned', 'UserAssigned', + 'SystemAssigned, UserAssigned', 'None']), + help='The identity type. The type \'SystemAssigned, UserAssigned\' includes both an implicitly ' + 'created identity and a set of user assigned identities. The type \'None\' will remove any ' + 'identities from the Azure Health Bot', arg_group='Identity') + c.argument('user_assigned_identities', type=validate_file_or_dict, help='The list of user identities ' + 'associated with the resource. The user identity dictionary key references will be ARM resource ids ' + 'in the form: \'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microso' + 'ft.ManagedIdentity/userAssignedIdentities/{identityName}\'. Expected value: ' + 'json-string/@json-file.', arg_group='Identity') + c.argument('name', arg_type=get_enum_type(['F0', 'S1', 'C0']), help='The name of the Azure Health Bot SKU', arg_group='Sku') with self.argument_context('healthbot delete') as c: diff --git a/src/healthbot/azext_healthbot/generated/custom.py b/src/healthbot/azext_healthbot/generated/custom.py index 469d339e352..47272ea0b4b 100644 --- a/src/healthbot/azext_healthbot/generated/custom.py +++ b/src/healthbot/azext_healthbot/generated/custom.py @@ -30,14 +30,19 @@ def healthbot_create(client, resource_group_name, bot_name, location, - sku, + name, tags=None, + type_=None, + user_assigned_identities=None, no_wait=False): parameters = {} parameters['tags'] = tags parameters['location'] = location + parameters['identity'] = {} + parameters['identity']['type'] = type_ + parameters['identity']['user_assigned_identities'] = user_assigned_identities parameters['sku'] = {} - parameters['sku']['name'] = sku + parameters['sku']['name'] = name return sdk_no_wait(no_wait, client.begin_create, resource_group_name=resource_group_name, @@ -49,11 +54,16 @@ def healthbot_update(client, resource_group_name, bot_name, tags=None, - sku=None): + type_=None, + user_assigned_identities=None, + name=None): parameters = {} parameters['tags'] = tags + parameters['identity'] = {} + parameters['identity']['type'] = type_ + parameters['identity']['user_assigned_identities'] = user_assigned_identities parameters['sku'] = {} - parameters['sku']['name'] = sku + parameters['sku']['name'] = name return client.update(resource_group_name=resource_group_name, bot_name=bot_name, parameters=parameters) diff --git a/src/healthbot/azext_healthbot/tests/latest/example_steps.py b/src/healthbot/azext_healthbot/tests/latest/example_steps.py index 51959a29e34..5e65b4444fd 100644 --- a/src/healthbot/azext_healthbot/tests/latest/example_steps.py +++ b/src/healthbot/azext_healthbot/tests/latest/example_steps.py @@ -18,10 +18,14 @@ def step_create(test, rg, rg_2, checks=None): if checks is None: checks = [] test.cmd('az healthbot create ' - '--name "{myBot}" ' - '--location "eastus" ' - '--sku "F0" ' - '--resource-group "{rg}"', + '--bot-name "{myBot}" ' + '--type "SystemAssigned, UserAssigned" ' + '--user-assigned-identities "{{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.m' + 'anagedidentity/userassignedidentities/my-mi\\":{{}},\\"/subscriptions/subscription-id/resourcegroups/myrg' + '/providers/microsoft.managedidentity/userassignedidentities/my-mi2\\":{{}}}}" ' + '--location "East US" ' + '--name "F0" ' + '--resource-group "{rg_2}"', checks=checks) @@ -52,7 +56,7 @@ def step_show(test, rg, rg_2, checks=None): checks = [] test.cmd('az healthbot show ' '--name "{myBot}" ' - '--resource-group "{rg}"', + '--resource-group "{rg_2}"', checks=checks) @@ -62,9 +66,13 @@ def step_update(test, rg, rg_2, checks=None): if checks is None: checks = [] test.cmd('az healthbot update ' - '--name "{myBot}" ' - '--sku "F0" ' - '--resource-group "{rg}"', + '--bot-name "{myBot}" ' + '--type "SystemAssigned, UserAssigned" ' + '--user-assigned-identities "{{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.m' + 'anagedidentity/userassignedidentities/my-mi\\":{{}},\\"/subscriptions/subscription-id/resourcegroups/myrg' + '/providers/microsoft.managedidentity/userassignedidentities/my-mi2\\":{{}}}}" ' + '--name "F0" ' + '--resource-group "{rg_2}"', checks=checks) @@ -75,5 +83,6 @@ def step_delete(test, rg, rg_2, checks=None): checks = [] test.cmd('az healthbot delete -y ' '--name "{myBot}" ' - '--resource-group "{rg}"', + '--resource-group "{rg_2}"', checks=checks) + diff --git a/src/healthbot/azext_healthbot/tests/latest/test_healthbot_scenario.py b/src/healthbot/azext_healthbot/tests/latest/test_healthbot_scenario.py index 69218418e98..c2d7bb7a39c 100644 --- a/src/healthbot/azext_healthbot/tests/latest/test_healthbot_scenario.py +++ b/src/healthbot/azext_healthbot/tests/latest/test_healthbot_scenario.py @@ -45,7 +45,12 @@ def call_scenario(test, rg, rg_2): setup_scenario(test, rg, rg_2) step_create(test, rg, rg_2, checks=[ test.check("name", "{myBot}", case_sensitive=False), - test.check("location", "eastus", case_sensitive=False), + test.check("identity.type", "SystemAssigned, UserAssigned", case_sensitive=False), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi.", {}), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi2.", {}), + test.check("location", "East US", case_sensitive=False), test.check("sku.name", "F0", case_sensitive=False), ]) step_list(test, rg, rg_2, checks=[]) @@ -54,12 +59,22 @@ def call_scenario(test, rg, rg_2): ]) step_show(test, rg, rg_2, checks=[ test.check("name", "{myBot}", case_sensitive=False), - test.check("location", "eastus", case_sensitive=False), + test.check("identity.type", "SystemAssigned, UserAssigned", case_sensitive=False), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi.", {}), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi2.", {}), + test.check("location", "East US", case_sensitive=False), test.check("sku.name", "F0", case_sensitive=False), ]) step_update(test, rg, rg_2, checks=[ test.check("name", "{myBot}", case_sensitive=False), - test.check("location", "eastus", case_sensitive=False), + test.check("identity.type", "SystemAssigned, UserAssigned", case_sensitive=False), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi.", {}), + test.check("identity.userAssignedIdentities./subscriptions/{subscription_id}/resourcegroups/{rg_3}/providers/mi" + "crosoft.managedidentity/userassignedidentities/my-mi2.", {}), + test.check("location", "East US", case_sensitive=False), test.check("sku.name", "F0", case_sensitive=False), ]) step_delete(test, rg, rg_2, checks=[]) @@ -76,9 +91,11 @@ def __init__(self, *args, **kwargs): 'myBot': 'samplebotname', }) - @ResourceGroupPreparer(name_prefix='clitest', random_name_length=20, key='rg', parameter_name='rg') - @ResourceGroupPreparer(name_prefix='clitest', random_name_length=20, key='rg_2', parameter_name='rg_2') + + @ResourceGroupPreparer(name_prefix='clitesthealthbot_OneResourceGroupName'[:7], key='rg', parameter_name='rg') + @ResourceGroupPreparer(name_prefix='clitesthealthbot_healthbotClient'[:7], key='rg_2', parameter_name='rg_2') def test_healthbot_Scenario(self, rg, rg_2): call_scenario(self, rg, rg_2) calc_coverage(__file__) raise_if() + diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_configuration.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_configuration.py index d958b83043a..b18ee3e223f 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_configuration.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_configuration.py @@ -48,7 +48,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id - self.api_version = "2020-12-08" + self.api_version = "2021-06-10" self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) kwargs.setdefault('sdk_moniker', 'mgmt-healthbot/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_healthbot_client.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_healthbot_client.py index 489c41688b2..5b0d5ef609e 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_healthbot_client.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/_healthbot_client.py @@ -24,7 +24,7 @@ class HealthbotClient(object): - """Microsoft Healthcare Bot is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. + """Azure Health Bot is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. :ivar bots: BotsOperations operations :vartype bots: azure.mgmt.healthbot.operations.BotsOperations diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_configuration.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_configuration.py index dc1fc0a1a89..9937fac1530 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_configuration.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_configuration.py @@ -45,7 +45,7 @@ def __init__( self.credential = credential self.subscription_id = subscription_id - self.api_version = "2020-12-08" + self.api_version = "2021-06-10" self.credential_scopes = kwargs.pop('credential_scopes', ['https://management.azure.com/.default']) kwargs.setdefault('sdk_moniker', 'mgmt-healthbot/{}'.format(VERSION)) self._configure(**kwargs) diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_healthbot_client.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_healthbot_client.py index fcd160d1e5e..b219cf47e70 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_healthbot_client.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/_healthbot_client.py @@ -22,7 +22,7 @@ class HealthbotClient(object): - """Microsoft Healthcare Bot is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. + """Azure Health Bot is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. :ivar bots: BotsOperations operations :vartype bots: azure.mgmt.healthbot.aio.operations.BotsOperations diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_bots_operations.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_bots_operations.py index 8f82635ce8c..ed233ee6d7b 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_bots_operations.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_bots_operations.py @@ -55,7 +55,7 @@ async def _create_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -108,13 +108,13 @@ async def begin_create( parameters: "models.HealthBot", **kwargs ) -> AsyncLROPoller["models.HealthBot"]: - """Create a new HealthBot. + """Create a new Azure Health Bot. :param resource_group_name: The name of the Bot resource group in the user subscription. :type resource_group_name: str :param bot_name: The name of the Bot resource. :type bot_name: str - :param parameters: The parameters to provide for the created bot. + :param parameters: The parameters to provide for the created Azure Health Bot. :type parameters: ~azure.mgmt.healthbot.models.HealthBot :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. @@ -194,7 +194,7 @@ async def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" # Construct URL @@ -244,7 +244,7 @@ async def update( :type resource_group_name: str :param bot_name: The name of the Bot resource. :type bot_name: str - :param parameters: The parameters to provide for the required bot. + :param parameters: The parameters to provide for the required Azure Health Bot. :type parameters: ~azure.mgmt.healthbot.models.HealthBotUpdateParameters :keyword callable cls: A custom type or function that will be passed the direct response :return: HealthBot, or the result of cls(response) @@ -256,7 +256,7 @@ async def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -313,7 +313,7 @@ async def _delete_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" # Construct URL @@ -430,7 +430,7 @@ def list_by_resource_group( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): @@ -498,7 +498,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_operations.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_operations.py index 57c308c8fe1..4cbf6882005 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_operations.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/aio/operations/_operations.py @@ -45,7 +45,7 @@ def list( self, **kwargs ) -> AsyncIterable["models.AvailableOperations"]: - """Lists all the available HealthBot operations. + """Lists all the available Azure Health Bot operations. :keyword callable cls: A custom type or function that will be passed the direct response :return: An iterator like instance of either AvailableOperations or the result of cls(response) @@ -57,7 +57,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/__init__.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/__init__.py index ad76102b936..a227a8725b0 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/__init__.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/__init__.py @@ -15,12 +15,14 @@ from ._models_py3 import HealthBot from ._models_py3 import HealthBotProperties from ._models_py3 import HealthBotUpdateParameters + from ._models_py3 import Identity from ._models_py3 import OperationDetail from ._models_py3 import OperationDisplay from ._models_py3 import Resource from ._models_py3 import Sku from ._models_py3 import SystemData from ._models_py3 import TrackedResource + from ._models_py3 import UserAssignedIdentity from ._models_py3 import ValidationResult except (SyntaxError, ImportError): from ._models import AvailableOperations # type: ignore @@ -31,16 +33,19 @@ from ._models import HealthBot # type: ignore from ._models import HealthBotProperties # type: ignore from ._models import HealthBotUpdateParameters # type: ignore + from ._models import Identity # type: ignore from ._models import OperationDetail # type: ignore from ._models import OperationDisplay # type: ignore from ._models import Resource # type: ignore from ._models import Sku # type: ignore from ._models import SystemData # type: ignore from ._models import TrackedResource # type: ignore + from ._models import UserAssignedIdentity # type: ignore from ._models import ValidationResult # type: ignore from ._healthbot_client_enums import ( IdentityType, + ResourceIdentityType, SkuName, ) @@ -53,13 +58,16 @@ 'HealthBot', 'HealthBotProperties', 'HealthBotUpdateParameters', + 'Identity', 'OperationDetail', 'OperationDisplay', 'Resource', 'Sku', 'SystemData', 'TrackedResource', + 'UserAssignedIdentity', 'ValidationResult', 'IdentityType', + 'ResourceIdentityType', 'SkuName', ] diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_healthbot_client_enums.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_healthbot_client_enums.py index e08d83568cb..36b83e5d589 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_healthbot_client_enums.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_healthbot_client_enums.py @@ -35,8 +35,19 @@ class IdentityType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): MANAGED_IDENTITY = "ManagedIdentity" KEY = "Key" +class ResourceIdentityType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): + """The identity type. The type 'SystemAssigned, UserAssigned' includes both an implicitly created + identity and a set of user assigned identities. The type 'None' will remove any identities from + the Azure Health Bot + """ + + SYSTEM_ASSIGNED = "SystemAssigned" + USER_ASSIGNED = "UserAssigned" + SYSTEM_ASSIGNED_USER_ASSIGNED = "SystemAssigned, UserAssigned" + NONE = "None" + class SkuName(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)): - """The name of the HealthBot SKU + """The name of the Azure Health Bot SKU """ F0 = "F0" diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models.py index 815f08e205c..9c1caa0ef8b 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models.py @@ -35,13 +35,13 @@ def __init__( class BotResponseList(msrest.serialization.Model): - """The list of Healthbot operation response. + """The list of Azure Health Bot operation response. Variables are only populated by the server, and will be ignored when sending a request. :ivar next_link: The link used to get the next page of bot service resources. :vartype next_link: str - :ivar value: Gets the list of Healthbot results and their properties. + :ivar value: Gets the list of Azure Health Bot results and their properties. :vartype value: list[~azure.mgmt.healthbot.models.HealthBot] """ @@ -246,7 +246,7 @@ def __init__( class HealthBot(TrackedResource): - """HealthBot resource definition. + """Azure Health Bot resource definition. Variables are only populated by the server, and will be ignored when sending a request. @@ -264,9 +264,11 @@ class HealthBot(TrackedResource): :type tags: dict[str, str] :param location: Required. The geo-location where the resource lives. :type location: str - :param sku: Required. SKU of the HealthBot. + :param sku: Required. SKU of the Azure Health Bot. :type sku: ~azure.mgmt.healthbot.models.Sku - :param properties: The set of properties specific to Healthbot resource. + :param identity: The identity of the Azure Health Bot. + :type identity: ~azure.mgmt.healthbot.models.Identity + :param properties: The set of properties specific to Azure Health Bot resource. :type properties: ~azure.mgmt.healthbot.models.HealthBotProperties """ @@ -287,6 +289,7 @@ class HealthBot(TrackedResource): 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'Sku'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, 'properties': {'key': 'properties', 'type': 'HealthBotProperties'}, } @@ -296,15 +299,16 @@ def __init__( ): super(HealthBot, self).__init__(**kwargs) self.sku = kwargs['sku'] + self.identity = kwargs.get('identity', None) self.properties = kwargs.get('properties', None) class HealthBotProperties(msrest.serialization.Model): - """The properties of a HealthBot. The Health Bot Service is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. + """The properties of a Azure Health Bot. The Health Bot Service is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. Variables are only populated by the server, and will be ignored when sending a request. - :ivar provisioning_state: The provisioning state of the Healthbot resource. + :ivar provisioning_state: The provisioning state of the Azure Health Bot resource. :vartype provisioning_state: str :ivar bot_management_portal_link: The link. :vartype bot_management_portal_link: str @@ -330,17 +334,20 @@ def __init__( class HealthBotUpdateParameters(msrest.serialization.Model): - """Parameters for updating a HealthBot. + """Parameters for updating a Azure Health Bot. - :param tags: A set of tags. Tags for a HealthBot. + :param tags: A set of tags. Tags for a Azure Health Bot. :type tags: dict[str, str] - :param sku: SKU of the HealthBot. + :param sku: SKU of the Azure Health Bot. :type sku: ~azure.mgmt.healthbot.models.Sku + :param identity: The identity of the Azure Health Bot. + :type identity: ~azure.mgmt.healthbot.models.Identity """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, 'sku': {'key': 'sku', 'type': 'Sku'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, } def __init__( @@ -350,6 +357,52 @@ def __init__( super(HealthBotUpdateParameters, self).__init__(**kwargs) self.tags = kwargs.get('tags', None) self.sku = kwargs.get('sku', None) + self.identity = kwargs.get('identity', None) + + +class Identity(msrest.serialization.Model): + """Identity for the resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar principal_id: The principal ID of resource identity. This property will only be provided + for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant ID of resource. This property will only be provided for a system + assigned identity. + :vartype tenant_id: str + :param type: The identity type. The type 'SystemAssigned, UserAssigned' includes both an + implicitly created identity and a set of user assigned identities. The type 'None' will remove + any identities from the Azure Health Bot. Possible values include: "SystemAssigned", + "UserAssigned", "SystemAssigned, UserAssigned", "None". + :type type: str or ~azure.mgmt.healthbot.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated with the resource. The + user identity dictionary key references will be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, ~azure.mgmt.healthbot.models.UserAssignedIdentity] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{UserAssignedIdentity}'}, + } + + def __init__( + self, + **kwargs + ): + super(Identity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = kwargs.get('type', None) + self.user_assigned_identities = kwargs.get('user_assigned_identities', None) class OperationDetail(msrest.serialization.Model): @@ -423,8 +476,8 @@ class Sku(msrest.serialization.Model): All required parameters must be populated in order to send to Azure. - :param name: Required. The name of the HealthBot SKU. Possible values include: "F0", "S1", - "C0". + :param name: Required. The name of the Azure Health Bot SKU. Possible values include: "F0", + "S1", "C0". :type name: str or ~azure.mgmt.healthbot.models.SkuName """ @@ -485,6 +538,36 @@ def __init__( self.last_modified_at = kwargs.get('last_modified_at', None) +class UserAssignedIdentity(msrest.serialization.Model): + """The details of the user assigned managed identity used by the Video Analyzer resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar principal_id: The principal ID of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client ID of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(UserAssignedIdentity, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None + + class ValidationResult(msrest.serialization.Model): """The response returned from validation process. diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models_py3.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models_py3.py index a292b226c6a..24ed892c052 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models_py3.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/models/_models_py3.py @@ -43,13 +43,13 @@ def __init__( class BotResponseList(msrest.serialization.Model): - """The list of Healthbot operation response. + """The list of Azure Health Bot operation response. Variables are only populated by the server, and will be ignored when sending a request. :ivar next_link: The link used to get the next page of bot service resources. :vartype next_link: str - :ivar value: Gets the list of Healthbot results and their properties. + :ivar value: Gets the list of Azure Health Bot results and their properties. :vartype value: list[~azure.mgmt.healthbot.models.HealthBot] """ @@ -259,7 +259,7 @@ def __init__( class HealthBot(TrackedResource): - """HealthBot resource definition. + """Azure Health Bot resource definition. Variables are only populated by the server, and will be ignored when sending a request. @@ -277,9 +277,11 @@ class HealthBot(TrackedResource): :type tags: dict[str, str] :param location: Required. The geo-location where the resource lives. :type location: str - :param sku: Required. SKU of the HealthBot. + :param sku: Required. SKU of the Azure Health Bot. :type sku: ~azure.mgmt.healthbot.models.Sku - :param properties: The set of properties specific to Healthbot resource. + :param identity: The identity of the Azure Health Bot. + :type identity: ~azure.mgmt.healthbot.models.Identity + :param properties: The set of properties specific to Azure Health Bot resource. :type properties: ~azure.mgmt.healthbot.models.HealthBotProperties """ @@ -300,6 +302,7 @@ class HealthBot(TrackedResource): 'tags': {'key': 'tags', 'type': '{str}'}, 'location': {'key': 'location', 'type': 'str'}, 'sku': {'key': 'sku', 'type': 'Sku'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, 'properties': {'key': 'properties', 'type': 'HealthBotProperties'}, } @@ -309,20 +312,22 @@ def __init__( location: str, sku: "Sku", tags: Optional[Dict[str, str]] = None, + identity: Optional["Identity"] = None, properties: Optional["HealthBotProperties"] = None, **kwargs ): super(HealthBot, self).__init__(tags=tags, location=location, **kwargs) self.sku = sku + self.identity = identity self.properties = properties class HealthBotProperties(msrest.serialization.Model): - """The properties of a HealthBot. The Health Bot Service is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. + """The properties of a Azure Health Bot. The Health Bot Service is a cloud platform that empowers developers in Healthcare organizations to build and deploy their compliant, AI-powered virtual health assistants and health bots, that help them improve processes and reduce costs. Variables are only populated by the server, and will be ignored when sending a request. - :ivar provisioning_state: The provisioning state of the Healthbot resource. + :ivar provisioning_state: The provisioning state of the Azure Health Bot resource. :vartype provisioning_state: str :ivar bot_management_portal_link: The link. :vartype bot_management_portal_link: str @@ -348,17 +353,20 @@ def __init__( class HealthBotUpdateParameters(msrest.serialization.Model): - """Parameters for updating a HealthBot. + """Parameters for updating a Azure Health Bot. - :param tags: A set of tags. Tags for a HealthBot. + :param tags: A set of tags. Tags for a Azure Health Bot. :type tags: dict[str, str] - :param sku: SKU of the HealthBot. + :param sku: SKU of the Azure Health Bot. :type sku: ~azure.mgmt.healthbot.models.Sku + :param identity: The identity of the Azure Health Bot. + :type identity: ~azure.mgmt.healthbot.models.Identity """ _attribute_map = { 'tags': {'key': 'tags', 'type': '{str}'}, 'sku': {'key': 'sku', 'type': 'Sku'}, + 'identity': {'key': 'identity', 'type': 'Identity'}, } def __init__( @@ -366,11 +374,61 @@ def __init__( *, tags: Optional[Dict[str, str]] = None, sku: Optional["Sku"] = None, + identity: Optional["Identity"] = None, **kwargs ): super(HealthBotUpdateParameters, self).__init__(**kwargs) self.tags = tags self.sku = sku + self.identity = identity + + +class Identity(msrest.serialization.Model): + """Identity for the resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar principal_id: The principal ID of resource identity. This property will only be provided + for a system assigned identity. + :vartype principal_id: str + :ivar tenant_id: The tenant ID of resource. This property will only be provided for a system + assigned identity. + :vartype tenant_id: str + :param type: The identity type. The type 'SystemAssigned, UserAssigned' includes both an + implicitly created identity and a set of user assigned identities. The type 'None' will remove + any identities from the Azure Health Bot. Possible values include: "SystemAssigned", + "UserAssigned", "SystemAssigned, UserAssigned", "None". + :type type: str or ~azure.mgmt.healthbot.models.ResourceIdentityType + :param user_assigned_identities: The list of user identities associated with the resource. The + user identity dictionary key references will be ARM resource ids in the form: + '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. + :type user_assigned_identities: dict[str, ~azure.mgmt.healthbot.models.UserAssignedIdentity] + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'tenant_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'tenant_id': {'key': 'tenantId', 'type': 'str'}, + 'type': {'key': 'type', 'type': 'str'}, + 'user_assigned_identities': {'key': 'userAssignedIdentities', 'type': '{UserAssignedIdentity}'}, + } + + def __init__( + self, + *, + type: Optional[Union[str, "ResourceIdentityType"]] = None, + user_assigned_identities: Optional[Dict[str, "UserAssignedIdentity"]] = None, + **kwargs + ): + super(Identity, self).__init__(**kwargs) + self.principal_id = None + self.tenant_id = None + self.type = type + self.user_assigned_identities = user_assigned_identities class OperationDetail(msrest.serialization.Model): @@ -455,8 +513,8 @@ class Sku(msrest.serialization.Model): All required parameters must be populated in order to send to Azure. - :param name: Required. The name of the HealthBot SKU. Possible values include: "F0", "S1", - "C0". + :param name: Required. The name of the Azure Health Bot SKU. Possible values include: "F0", + "S1", "C0". :type name: str or ~azure.mgmt.healthbot.models.SkuName """ @@ -526,6 +584,36 @@ def __init__( self.last_modified_at = last_modified_at +class UserAssignedIdentity(msrest.serialization.Model): + """The details of the user assigned managed identity used by the Video Analyzer resource. + + Variables are only populated by the server, and will be ignored when sending a request. + + :ivar principal_id: The principal ID of user assigned identity. + :vartype principal_id: str + :ivar client_id: The client ID of user assigned identity. + :vartype client_id: str + """ + + _validation = { + 'principal_id': {'readonly': True}, + 'client_id': {'readonly': True}, + } + + _attribute_map = { + 'principal_id': {'key': 'principalId', 'type': 'str'}, + 'client_id': {'key': 'clientId', 'type': 'str'}, + } + + def __init__( + self, + **kwargs + ): + super(UserAssignedIdentity, self).__init__(**kwargs) + self.principal_id = None + self.client_id = None + + class ValidationResult(msrest.serialization.Model): """The response returned from validation process. diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_bots_operations.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_bots_operations.py index 59741a657d6..082a0922cb3 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_bots_operations.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_bots_operations.py @@ -60,7 +60,7 @@ def _create_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -114,13 +114,13 @@ def begin_create( **kwargs # type: Any ): # type: (...) -> LROPoller["models.HealthBot"] - """Create a new HealthBot. + """Create a new Azure Health Bot. :param resource_group_name: The name of the Bot resource group in the user subscription. :type resource_group_name: str :param bot_name: The name of the Bot resource. :type bot_name: str - :param parameters: The parameters to provide for the created bot. + :param parameters: The parameters to provide for the created Azure Health Bot. :type parameters: ~azure.mgmt.healthbot.models.HealthBot :keyword callable cls: A custom type or function that will be passed the direct response :keyword str continuation_token: A continuation token to restart a poller from a saved state. @@ -201,7 +201,7 @@ def get( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" # Construct URL @@ -252,7 +252,7 @@ def update( :type resource_group_name: str :param bot_name: The name of the Bot resource. :type bot_name: str - :param parameters: The parameters to provide for the required bot. + :param parameters: The parameters to provide for the required Azure Health Bot. :type parameters: ~azure.mgmt.healthbot.models.HealthBotUpdateParameters :keyword callable cls: A custom type or function that will be passed the direct response :return: HealthBot, or the result of cls(response) @@ -264,7 +264,7 @@ def update( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" content_type = kwargs.pop("content_type", "application/json") accept = "application/json" @@ -322,7 +322,7 @@ def _delete_initial( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" # Construct URL @@ -441,7 +441,7 @@ def list_by_resource_group( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): @@ -510,7 +510,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): diff --git a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_operations.py b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_operations.py index 30dd159582b..2ea29076a89 100644 --- a/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_operations.py +++ b/src/healthbot/azext_healthbot/vendored_sdks/healthbot/operations/_operations.py @@ -50,7 +50,7 @@ def list( **kwargs # type: Any ): # type: (...) -> Iterable["models.AvailableOperations"] - """Lists all the available HealthBot operations. + """Lists all the available Azure Health Bot operations. :keyword callable cls: A custom type or function that will be passed the direct response :return: An iterator like instance of either AvailableOperations or the result of cls(response) @@ -62,7 +62,7 @@ def list( 401: ClientAuthenticationError, 404: ResourceNotFoundError, 409: ResourceExistsError } error_map.update(kwargs.pop('error_map', {})) - api_version = "2020-12-08" + api_version = "2021-06-10" accept = "application/json" def prepare_request(next_link=None): diff --git a/src/healthbot/report.md b/src/healthbot/report.md index 9612fb1f423..7d3e890d78b 100644 --- a/src/healthbot/report.md +++ b/src/healthbot/report.md @@ -62,7 +62,10 @@ az healthbot show --name "samplebotname" --resource-group "healthbotClient" ##### Example ``` -az healthbot create --name "samplebotname" --location "East US" --sku "F0" --resource-group "healthbotClient" +az healthbot create --bot-name "samplebotname" --type "SystemAssigned, UserAssigned" --user-assigned-identities \ +"{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/userassignedidentities/my-m\ +i\\":{},\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/userassignedidentitie\ +s/my-mi2\\":{}}" --location "East US" --name "F0" --resource-group "healthbotClient" ``` ##### Parameters |Option|Type|Description|Path (SDK)|Swagger name| @@ -70,22 +73,29 @@ az healthbot create --name "samplebotname" --location "East US" --sku "F0" --res |**--resource-group-name**|string|The name of the Bot resource group in the user subscription.|resource_group_name|resourceGroupName| |**--bot-name**|string|The name of the Bot resource.|bot_name|botName| |**--location**|string|The geo-location where the resource lives|location|location| -|**--sku**|sealed-choice|The name of the HealthBot SKU| +|**--name**|sealed-choice|The name of the Azure Health Bot SKU|name|name| |**--tags**|dictionary|Resource tags.|tags|tags| +|**--type**|sealed-choice|The identity type. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the Azure Health Bot|type|type| +|**--user-assigned-identities**|dictionary|The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. |user_assigned_identities|userAssignedIdentities| #### Command `az healthbot update` ##### Example ``` -az healthbot update --name "samplebotname" --sku "F0" --resource-group "healthbotClient" +az healthbot update --bot-name "samplebotname" --type "SystemAssigned, UserAssigned" --user-assigned-identities \ +"{\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/userassignedidentities/my-m\ +i\\":{},\\"/subscriptions/subscription-id/resourcegroups/myrg/providers/microsoft.managedidentity/userassignedidentitie\ +s/my-mi2\\":{}}" --name "F0" --resource-group "healthbotClient" ``` ##### Parameters |Option|Type|Description|Path (SDK)|Swagger name| |------|----|-----------|----------|------------| |**--resource-group-name**|string|The name of the Bot resource group in the user subscription.|resource_group_name|resourceGroupName| |**--bot-name**|string|The name of the Bot resource.|bot_name|botName| -|**--tags**|dictionary|Tags for a HealthBot.|tags|tags| -|**--sku**|sealed-choice|The name of the HealthBot SKU| +|**--tags**|dictionary|Tags for a Azure Health Bot.|tags|tags| +|**--type**|sealed-choice|The identity type. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the Azure Health Bot|type|type| +|**--user-assigned-identities**|dictionary|The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. |user_assigned_identities|userAssignedIdentities| +|**--name**|sealed-choice|The name of the Azure Health Bot SKU|name|name| #### Command `az healthbot delete`