diff --git a/src/bastion/azext_bastion/custom.py b/src/bastion/azext_bastion/custom.py index 873a62ce059..b9644f9cca6 100644 --- a/src/bastion/azext_bastion/custom.py +++ b/src/bastion/azext_bastion/custom.py @@ -14,6 +14,7 @@ import tempfile import threading import time +import json import requests from azure.cli.core.azclierror import ValidationError, InvalidArgumentValueError, RequiredArgumentMissingError, \ @@ -279,6 +280,9 @@ def rdp_bastion_host(cmd, target_resource_id, target_ip_address, resource_group_ } response = requests.get(web_address, headers=headers) if not response.ok: + errorMessage = json.loads(response.content).get('message', None) + if errorMessage: + raise ClientRequestError("Request failed with error: " + errorMessage) raise ClientRequestError("Request to EncodingReservedUnitTypes v2 API endpoint failed.") _write_to_file(response) diff --git a/src/bastion/azext_bastion/tests/latest/recordings/test_bastion_host_crud.yaml b/src/bastion/azext_bastion/tests/latest/recordings/test_bastion_host_crud.yaml index 505b76764d3..61027d7fdf1 100644 --- a/src/bastion/azext_bastion/tests/latest/recordings/test_bastion_host_crud.yaml +++ b/src/bastion/azext_bastion/tests/latest/recordings/test_bastion_host_crud.yaml @@ -247,7 +247,7 @@ interactions: - AZURECLI/2.46.0 (AAZ) azsdk-python-core/1.24.0 Python/3.10.10 (Linux-5.15.0-1034-azure-x86_64-with-glibc2.31) VSTS_7b238909-6802-4b65-b90d-184bca47f458_build_261_0 method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003?api-version=2022-01-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003?api-version=2023-05-01 response: body: string: "{\r\n \"name\": \"subnet-000003\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003\",\r\n @@ -354,7 +354,7 @@ interactions: - AZURECLI/2.46.0 (AAZ) azsdk-python-core/1.24.0 Python/3.10.10 (Linux-5.15.0-1034-azure-x86_64-with-glibc2.31) VSTS_7b238909-6802-4b65-b90d-184bca47f458_build_261_0 method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003?api-version=2022-01-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003?api-version=2023-05-01 response: body: string: "{\r\n \"name\": \"subnet-000003\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/virtualNetworks/vnet-000002/subnets/subnet-000003\",\r\n @@ -459,7 +459,7 @@ interactions: - AZURECLI/2.46.0 (AAZ) azsdk-python-core/1.24.0 Python/3.10.10 (Linux-5.15.0-1034-azure-x86_64-with-glibc2.31) VSTS_7b238909-6802-4b65-b90d-184bca47f458_build_261_0 method: PUT - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004?api-version=2022-05-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004?api-version=2022-11-01 response: body: string: "{\r\n \"name\": \"ip-000004\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004\",\r\n @@ -569,7 +569,7 @@ interactions: - AZURECLI/2.46.0 (AAZ) azsdk-python-core/1.24.0 Python/3.10.10 (Linux-5.15.0-1034-azure-x86_64-with-glibc2.31) VSTS_7b238909-6802-4b65-b90d-184bca47f458_build_261_0 method: GET - uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004?api-version=2022-05-01 + uri: https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004?api-version=2022-11-01 response: body: string: "{\r\n \"name\": \"ip-000004\",\r\n \"id\": \"/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/cli_test_bastion_host_000001/providers/Microsoft.Network/publicIPAddresses/ip-000004\",\r\n