Skip to content

Commit e5a7394

Browse files
author
Matthew Boentoro
committed
{RDBMS} az postgres flexible-server geo-restore: add --restore-time parameter
1 parent fc511f6 commit e5a7394

File tree

3 files changed

+6
-3
lines changed

3 files changed

+6
-3
lines changed

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -687,6 +687,7 @@ def _flexible_server_params(command_group):
687687
c.argument('public_access', options_list=['--public-access'], arg_type=get_enum_type(['Enabled', 'Disabled']),
688688
help='Determines the public access. ')
689689
elif command_group == 'postgres':
690+
c.argument('restore_point_in_time', arg_type=restore_point_in_time_arg_type)
690691
c.argument('geo_redundant_backup', default='Disabled', arg_type=geo_redundant_backup_arg_type)
691692
c.argument('byok_key', arg_type=key_arg_type)
692693
c.argument('byok_identity', arg_type=identity_arg_type)

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

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -615,7 +615,7 @@ def flexible_replica_create(cmd, client, resource_group_name, source_server, rep
615615
def flexible_server_georestore(cmd, client, resource_group_name, server_name, source_server, location, zone=None,
616616
vnet=None, vnet_address_prefix=None, subnet=None, subnet_address_prefix=None,
617617
private_dns_zone_arguments=None, geo_redundant_backup=None, no_wait=False, yes=False,
618-
byok_identity=None, byok_key=None, backup_byok_identity=None, backup_byok_key=None):
618+
byok_identity=None, byok_key=None, backup_byok_identity=None, backup_byok_key=None, restore_point_in_time=None):
619619
validate_resource_group(resource_group_name)
620620

621621
server_name = server_name.lower()
@@ -632,6 +632,8 @@ def flexible_server_georestore(cmd, client, resource_group_name, server_name, so
632632
else:
633633
source_server_id = source_server
634634

635+
restore_point_in_time = validate_and_format_restore_point_in_time(restore_point_in_time)
636+
635637
try:
636638
id_parts = parse_resource_id(source_server_id)
637639
validate_citus_cluster(cmd, id_parts['resource_group'], id_parts['name'])
@@ -659,7 +661,7 @@ def flexible_server_georestore(cmd, client, resource_group_name, server_name, so
659661
storage = postgresql_flexibleservers.models.Storage(type=None)
660662

661663
parameters = postgresql_flexibleservers.models.Server(
662-
point_in_time_utc=get_current_time(),
664+
point_in_time_utc=restore_point_in_time,
663665
location=location,
664666
source_server_resource_id=source_server_id,
665667
create_mode="GeoRestore",

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -808,7 +808,7 @@ def validate_and_format_restore_point_in_time(restore_time):
808808
return parser.parse(restore_time)
809809
except:
810810
raise ValidationError("The restore point in time value has incorrect date format. "
811-
"Please use ISO format e.g., 2021-10-22T00:08:23+00:00.")
811+
"Please use ISO format e.g., 2024-10-22T00:08:23+00:00.")
812812

813813

814814
def is_citus_cluster(cmd, resource_group_name, server_name):

0 commit comments

Comments
 (0)