Skip to content

Commit ad1b301

Browse files
committed
Catch error for updatin parameters
1 parent fc511f6 commit ad1b301

File tree

1 file changed

+18
-11
lines changed

1 file changed

+18
-11
lines changed

src/azure-cli/azure/cli/command_modules/rdbms/flexible_server_custom_postgres.py

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -483,23 +483,30 @@ def flexible_server_postgresql_get(cmd, resource_group_name, server_name):
483483

484484
def flexible_parameter_update(client, server_name, configuration_name, resource_group_name, source=None, value=None):
485485
validate_resource_group(resource_group_name)
486-
if source is None and value is None:
486+
parameter_value = value
487+
parameter_source = source
488+
try:
489+
# validate configuration name
490+
parameter = client.get(resource_group_name, server_name, configuration_name)
491+
487492
# update the command with system default
488-
try:
489-
parameter = client.get(resource_group_name, server_name, configuration_name)
490-
value = parameter.default_value # reset value to default
493+
if parameter_value is None and parameter_source is None:
494+
parameter_value = parameter.default_value # reset value to default
491495

492-
# this should be 'system-default' but there is currently a bug in PG, so keeping as what it is for now
496+
# this should be 'system-default' but there is currently a bug in PG
493497
# this will reset source to be 'system-default' anyway
494-
source = parameter.source
495-
except HttpResponseError as e:
498+
parameter_source = "user-override"
499+
elif parameter_source is None:
500+
parameter_source = "user-override"
501+
except HttpResponseError as e:
502+
if parameter_value is None and parameter_source is None:
496503
raise CLIError('Unable to get default parameter value: {}.'.format(str(e)))
497-
elif source is None:
498-
source = "user-override"
504+
else:
505+
raise CLIError(str(e))
499506

500507
parameters = postgresql_flexibleservers.models.Configuration(
501-
value=value,
502-
source=source
508+
value=parameter_value,
509+
source=parameter_source
503510
)
504511

505512
return client.begin_update(resource_group_name, server_name, configuration_name, parameters)

0 commit comments

Comments
 (0)