diff --git a/src/azure-cli/HISTORY.rst b/src/azure-cli/HISTORY.rst index 0b5637e7b63..d4f7991cafe 100644 --- a/src/azure-cli/HISTORY.rst +++ b/src/azure-cli/HISTORY.rst @@ -32,6 +32,10 @@ Release History * Fix `vm create` failure in Azure Stack profile. * vm monitor metrics tail/list-definitions: support query metric and list definitions for a vm. +**Redis** + +* Fixing `az redis update` operation to work for caches with RDB/AOF enabled + **Storage** * `az storage account create`: Remove preview flag for --enable-hierarchical-namespace parameter diff --git a/src/azure-cli/azure/cli/command_modules/redis/custom.py b/src/azure-cli/azure/cli/command_modules/redis/custom.py index 845b1ebebe8..b937108ca89 100644 --- a/src/azure-cli/azure/cli/command_modules/redis/custom.py +++ b/src/azure-cli/azure/cli/command_modules/redis/custom.py @@ -37,12 +37,18 @@ def cli_redis_update(cmd, instance, sku=None, vm_size=None): # avoid setting memory configs for basic sku if instance.sku.name == 'Basic': - if 'maxmemory-reserved' in instance.redis_configuration: - instance.redis_configuration.pop('maxmemory-reserved') - if 'maxfragmentationmemory-reserved' in instance.redis_configuration: - instance.redis_configuration.pop('maxfragmentationmemory-reserved') - if 'maxmemory-delta' in instance.redis_configuration: - instance.redis_configuration.pop('maxmemory-delta') + memory_configs = ['maxmemory-reserved', 'maxfragmentationmemory-reserved', 'maxmemory-delta'] + for memory_config in memory_configs: + if memory_config in instance.redis_configuration: + instance.redis_configuration.pop(memory_config) + + # trim RDB and AOF connection strings + rdb_aof_connection_strings = ['rdb-storage-connection-string', + 'aof-storage-connection-string-0', + 'aof-storage-connection-string-1'] + for connection_string in rdb_aof_connection_strings: + if connection_string in instance.redis_configuration: + instance.redis_configuration.pop(connection_string) # Trim zonal-configuration if 'zonal-configuration' in instance.redis_configuration: