Azure / Azure/azure-cli

`az ml compute update` throws an error when using the --idle-time-before-scale-down option

Open
#27,116 6 comments 1 reaction 0 assignees View on GitHub
act-codegen-extensibility-squad Auto-Assign Auto-Resolve bug customer-reported Machine Learning needs-team-attention Service Attention
Dominant language
Python
Stars
4.6k
Forks
3.5k
Avg merge
3d 2h
Merged PRs (30d)
60

Description

### Describe the bug

The ML Extension of the AZ CLI does not work as advertised. It is not possible to set scale down timers.

### Related command

`az ml compute update`

### Errors

The command failed with an unexpected error. Here is the traceback:
Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 697, in _run_job
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 333, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 240, in handler
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 452, in cached_put
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 446, in _put_operation
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 343, in _ml_compute_update
log_and_raise_error(err, debug)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\raise_error.py", line 181, in log_and_raise_error
raise cli_error
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code

### Issue script & Debug output

```
az ml compute update --name REDACTED --resource-group REDACTED --workspace-name REDACTED -d 60 --debug
```

```
cli.knack.cli: Command arguments: ['ml', 'compute', 'update', '--name', 'REDACTED', '--resource-group', 'REDACTED', '--workspace-name', 'REDACTED', '-d', '60', '--debug']
cli.knack.cli: __init__ debug log:
Enable color in terminal.
Enable VT mode.
cli.knack.cli: Event: Cli.PreExecute []
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate [, , ]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Modules found from index for 'ml': ['azext_mlv2']
cli.azure.cli.core: Loading command modules:
cli.azure.cli.core: Name Load Time Groups Commands
cli.azure.cli.core: Total (0) 0.000 0 0
cli.azure.cli.core: These extensions are not installed and will be skipped: ['azext_ai_examples', 'azext_next']
cli.azure.cli.core: Loading extensions:
cli.azure.cli.core: Name Load Time Groups Commands Directory
azext_mlv2.manual.vendored_curated_sdk.azure.ai.ml._azure_environments: Using the default cloud configuration: 'AzureCloud'.
azext_mlv2.manual.vendored_curated_sdk.azure.ai.ml._azure_environments: Using the default cloud configuration: 'AzureCloud'.
azext_mlv2.manual.vendored_curated_sdk.azure.ai.ml._azure_environments: Using the default cloud configuration: 'AzureCloud'.
cli.azure.cli.core: ml 2.110 20 139 C:\Users\dev.hoggs\.azure\cliextensions\ml
cli.azure.cli.core: Total (1) 2.110 20 139
cli.azure.cli.core: Loaded 20 groups, 139 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command : ml compute update
cli.azure.cli.core: Command table: ml compute update
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate []
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to 'C:\Users\dev.hoggs\.azure\commands\2023-08-08.15-07-43.ml_compute_update.13156.log'.
az_command_data_logger: command args: ml compute update --name {} --resource-group {} --workspace-name {} -d {} --debug
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [.add_subscription_parameter at 0x04704220>]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [.add_ids_arguments at 0x047043D0>, .add_cache_arguments at 0x04704460>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.knack.cli: Event: CommandInvoker.OnPostParseArgs [, , .parse_ids_arguments at 0x04704418>]
az_command_data_logger: extension name: ml
az_command_data_logger: extension version: 2.19.1
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=AzureMachineLearningWorkspaces
cli.azure.cli.core.auth.persistence: build_persistence: location='C:\\Users\\dev.hoggs\\.azure\\service_principal_entries.bin', encrypt=True
cli.azure.cli.core.auth.persistence: build_persistence: location='C:\\Users\\dev.hoggs\\.azure\\msal_token_cache.bin', encrypt=True
cli.azure.cli.core.auth.binary_cache: load: C:\Users\dev.hoggs\.azure\msal_http_cache.bin
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: openid_config = {'token_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/REDACTED/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/REDACTED/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/REDACTED/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? False
msal.application: Region to be used: None
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=_ml_client_cli
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: openid_config = {'token_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/REDACTED/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/REDACTED/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/REDACTED/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? False
msal.application: Region to be used: None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.azure.com/.default',), kwargs={}
cli.azure.cli.core.auth.msal_authentication: ServicePrincipalCredential.get_token: scopes=('https://management.azure.com/.default',), kwargs={}
msal.application: Found 0 RTs matching {'environment': 'login.microsoftonline.com', 'home_account_id': None, 'client_id': 'REDACTED'}
msal.telemetry: Generate or reuse correlation_id: REDACTED
msal.oauth2cli.assertion: Regenerating new assertion
urllib3.connectionpool: Starting new HTTPS connection (1): login.microsoftonline.com:443
urllib3.connectionpool: https://login.microsoftonline.com:443 "POST /REDACTED/oauth2/v2.0/token HTTP/1.1" 200 1409
msal.token_cache: event={
"client_id": "REDACTED",
"data": {
"claims": "{\"access_token\": {\"xms_cc\": {\"values\": [\"CP1\"]}}}",
"scope": [
"https://management.azure.com/.default"
]
},
"environment": "login.microsoftonline.com",
"grant_type": "client_credentials",
"params": null,
"response": {
"access_token": "********",
"expires_in": 3599,
"ext_expires_in": 3599,
"token_type": "Bearer"
},
"scope": [
"https://management.azure.com/.default"
],
"token_endpoint": "https://login.microsoftonline.com/REDACTED/oauth2/v2.0/token"
}
azure.core.pipeline.policies._universal: Request URL: 'https://management.azure.com/subscriptions/REDACTED/resourceGroups/REDACTED/providers/Microsoft.MachineLearningServices/workspaces/REDACTED/computes/REDACTED?api-version=2022-10-01-preview'
Request method: 'GET'
Request headers:
'Accept': 'application/json'
'x-ms-client-request-id': 'REDACTED'
'User-Agent': 'azureml-cli-v2/2.19.1 azure-ai-ml/1.9.0 azsdk-python-mgmt-machinelearningservices/0.1.0 Python/3.10.10 (Windows-10-10.0.19045-SP0)'
'Authorization': 'Bearer REDACTED'
Request body:
This request has no body
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/REDACTED/resourceGroups/REDACTED/providers/Microsoft.MachineLearningServices/workspaces/REDACTED/computes/REDACTED?api-version=2022-10-01-preview HTTP/1.1" 200 None
azure.core.pipeline.policies._universal: Response status: '200'
Response headers:
'Cache-Control': 'no-cache'
'Pragma': 'no-cache'
'Transfer-Encoding': 'chunked'
'Content-Type': 'application/json; charset=utf-8'
'Content-Encoding': 'gzip'
'Expires': '-1'
'Vary': 'Accept-Encoding,Accept-Encoding'
'x-ms-request-id': 'REDACTED'
'x-ms-ratelimit-remaining-subscription-reads': '11996'
'Request-Context': 'appId=cid-v1:67969c6a-972f-47a9-8267-e09d830cc328'
'x-ms-response-type': 'standard'
'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
'X-Content-Type-Options': 'nosniff'
'x-aml-cluster': 'vienna-australiaeast-01'
'x-request-time': '0.104'
'x-ms-correlation-request-id': 'REDACTED'
'x-ms-routing-request-id': 'AUSTRALIAEAST:20230808T050745Z:REDACTED'
'Date': 'Tue, 08 Aug 2023 05:07:44 GMT'
Response content:
{
"id": "/subscriptions/REDACTED/resourceGroups/REDACTED/providers/Microsoft.MachineLearningServices/workspaces/REDACTED/computes/REDACTED",
"name": "REDACTED",
"type": "Microsoft.MachineLearningServices/workspaces/computes",
"location": "australiaeast",
"tags": {
REDACTED
},
"identity": {
"type": "SystemAssigned",
"principalId": "REDACTED",
"tenantId": "REDACTED"
},
"properties": {
"createdOn": "2023-08-08T04:12:40.5219711+00:00",
"modifiedOn": "2023-08-08T04:50:37.6975354+00:00",
"disableLocalAuth": false,
"description": "",
"resourceId": null,
"computeType": "ComputeInstance",
"computeLocation": "australiaeast",
"provisioningState": "Succeeded",
"provisioningErrors": null,
"provisioningWarnings": {},
"isAttachedCompute": false,
"properties": {
"vmSize": "STANDARD_DS2_V2",
"imageVersion": null,
"subnet": null,
"sshSettings": {
"sshPublicAccess": "Disabled",
"adminUserName": "azureuser",
"sshPort": 4001,
"adminPublicKey": null
},
"autologgerSettings": null,
"errors": [],
"connectivityEndpoints": {
"publicIpAddress": "REDACTED",
"privateIpAddress": "10.0.0.5"
},
"applications": [
{
"displayName": "Jupyter",
"endpointUri": "https://REDACTED.australiaeast.instances.azureml.ms/tree/"
},
{
"displayName": "Jupyter Lab",
"endpointUri": "https://REDACTED.australiaeast.instances.azureml.ms/lab"
}
],
"state": "Running",
"lastOperation": {
"operationName": "Create",
"operationTime": "2023-08-08T04:12:46.631+00:00",
"operationStatus": "Succeeded",
"operationTrigger": "User"
},
"createdBy": {
"userOrgId": "REDACTED",
"userId": "REDACTED"
},
"applicationSharingPolicy": "Shared",
"computeInstanceAuthorizationType": null,
"personalComputeInstanceSettings": null,
"setupScripts": null,
"schedules": {
"computeStartStop": []
},
"enableBatchPrivateLink": false,
"dataMounts": null,
"dataDisks": null,
"containers": null,
"updateStatus": null,
"versions": {
"runtime": "3.0.02398.0001"
},
"customServices": [],
"osImageMetadata": {
"currentImageVersion": "23.06.30",
"latestImageVersion": "23.06.30",
"isLatestOsImageVersion": true
}
}
}
}
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=AzureMachineLearningWorkspaces
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: openid_config = {'token_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/REDACTED/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/REDACTED/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/REDACTED/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? False
msal.application: Region to be used: None
cli.azure.cli.core.commands.client_factory: Getting management service client client_type=_ml_client_cli
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: openid_config = {'token_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/REDACTED/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/REDACTED/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/REDACTED/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/REDACTED/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? False
msal.application: Region to be used: None
Field 'identity': This is an experimental field, and may change at any time. Please see https://aka.ms/azuremlexperimental for more information.
Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
cli: None
cli: Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code

cli.azure.cli.core.azclierror: Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 697, in _run_job
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 333, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 240, in handler
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 452, in cached_put
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 446, in _put_operation
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 343, in _ml_compute_update
log_and_raise_error(err, debug)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\raise_error.py", line 181, in log_and_raise_error
raise cli_error
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code

cli.azure.cli.core.azclierror: The command failed with an unexpected error. Here is the traceback:
az_command_data_logger: The command failed with an unexpected error. Here is the traceback:
cli.azure.cli.core.azclierror: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 697, in _run_job
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 333, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 240, in handler
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 452, in cached_put
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 446, in _put_operation
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 343, in _ml_compute_update
log_and_raise_error(err, debug)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\raise_error.py", line 181, in log_and_raise_error
raise cli_error
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
az_command_data_logger: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
Traceback (most recent call last):
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 144, in load_from_dict
return schema(context=context).load(data, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 722, in load
return self._do_load(
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\marshmallow\schema.py", line 909, in _do_load
raise exc
marshmallow.exceptions.ValidationError: {'idle_time_before_scale_down': ['Unknown field.']}

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\knack/cli.py", line 233, in invoke
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 663, in execute
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 697, in _run_job
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 333, in __call__
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/command_operation.py", line 240, in handler
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 452, in cached_put
File "D:\a\_work\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure/cli/core/commands/__init__.py", line 446, in _put_operation
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 343, in _ml_compute_update
log_and_raise_error(err, debug)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\raise_error.py", line 181, in log_and_raise_error
raise cli_error
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\custom\compute.py", line 338, in _ml_compute_update
compute = ml_client.compute.begin_update(load_compute(None, params_override=params_override))
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 329, in load_compute
return load_common(Compute, source, relative_origin, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 112, in load_common
raise e
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 96, in load_common
return _load_common_raising_marshmallow_error(cls, yaml_dict, relative_origin, params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_load_functions.py", line 146, in _load_common_raising_marshmallow_error
return cls._load(data=yaml_dict, yaml_path=relative_origin, params_override=params_override, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute.py", line 185, in _load
return ComputeInstance._load_from_dict(data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_compute\compute_instance.py", line 418, in _load_from_dict
loaded_data = load_from_dict(ComputeInstanceSchema, data, context, **kwargs)
File "C:\Users\dev.hoggs\.azure\cliextensions\ml\azext_mlv2\manual\vendored_curated_sdk\azure\ai\ml\entities\_util.py", line 147, in load_from_dict
raise ValidationError(decorate_validation_error(schema, pretty_error, additional_message)) from e
marshmallow.exceptions.ValidationError: Validation for ComputeInstanceSchema failed:

{
"idle_time_before_scale_down": [
"Unknown field."
]
}

Visit this link to refer to the ComputeInstance schema if needed: https://aka.ms/ml-cli-v2-compute-instance-yaml-reference.
The easiest way to author a specification file is using IntelliSense and auto-completion Azure ML VS code extension provides: https://code.visualstudio.com/docs/datascience/azure-machine-learning. To set up: https://docs.microsoft.com/azure/machine-learning/how-to-setup-vs-code
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
To open a new issue, please run `az feedback`
cli.knack.cli: Event: Cli.PostExecute []
az_command_data_logger: exit code: 1
cli.__main__: Command ran in 5.446 seconds (init: 0.594, invoke: 4.852)
telemetry.main: Begin splitting cli events and extra events, total events: 1
telemetry.client: Accumulated 0 events. Flush the clients.
telemetry.main: Finish splitting cli events and extra events, cli events: 1
telemetry.save: Save telemetry record of length 7921 in cache
telemetry.check: Negative: The C:\Users\dev.hoggs\.azure\telemetry.txt was modified at 2023-08-08 14:58:54.937969, which in less than 600.000000 s
```

### Expected behavior

The `--idle-time-before-scale-down` argument of `az ml compute update` should work as advertised

### Environment Summary

azure-cli 2.46.0 *

core 2.46.0 *
telemetry 1.0.8 *

Extensions:
ml 2.19.1
resource-graph 2.1.0

Dependencies:
msal 1.20.0
azure-mgmt-resource 21.1.0b1

Python location 'C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\python.exe'
Extensions directory 'C:\Users\dev.hoggs\.azure\cliextensions'

Python (Windows) 3.10.10 (tags/v3.10.10:aad5f6a, Feb 7 2023, 17:05:00) [MSC v.1929 32 bit (Intel)]

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.