diff options
author | Shwetha K Acharya <sacharya@redhat.com> | 2019-07-02 15:00:25 +0530 |
---|---|---|
committer | Kotresh HR <khiremat@redhat.com> | 2019-11-06 22:29:14 +0530 |
commit | 05f9340a533982ec5e421309673de6530fc28ed5 (patch) | |
tree | 2a04bd6e839d87b7fd70862e8d09e300a991cbab | |
parent | d82acea433d6defd0b9bd084a43c0b7b30fd171d (diff) |
geo-rep: Test case for upgrading config file
Added test case for the patch
https://review.gluster.org/#/c/glusterfs/+/22894/4
Also updated if else structure in gsyncdconfig.py to avoid
repeated occurance of values in new configfile.
Backport of:
> Patch: https://review.gluster.org/22982
> BUG: 1707731
> Change-Id: If97e1d37ac52dbd17d47be6cb659fc5a3ccab6d7
> Signed-off-by: Shwetha K Acharya <sacharya@redhat.com>
fixes: bz#1764003
Change-Id: If97e1d37ac52dbd17d47be6cb659fc5a3ccab6d7
Signed-off-by: Kotresh HR <khiremat@redhat.com>
-rw-r--r-- | geo-replication/syncdaemon/gsyncdconfig.py | 11 | ||||
-rw-r--r-- | tests/00-geo-rep/georep-basic-dr-rsync.t | 13 |
2 files changed, 18 insertions, 6 deletions
diff --git a/geo-replication/syncdaemon/gsyncdconfig.py b/geo-replication/syncdaemon/gsyncdconfig.py index 68d1b489e23..0476d5ec05c 100644 --- a/geo-replication/syncdaemon/gsyncdconfig.py +++ b/geo-replication/syncdaemon/gsyncdconfig.py @@ -356,15 +356,14 @@ def config_upgrade(config_file, ret): new_value = "tarssh" else: new_value = "rsync" - config.set('vars', new_key, new_value) - - if key == "timeout": + config.set('vars', new_key, new_value) + elif key == "timeout": new_key = "slave-timeout" config.set('vars', new_key, value) - #for changes like: ignore_deletes to ignore-deletes - new_key = key.replace("_", "-") - config.set('vars', new_key, value) + else: + new_key = key.replace("_", "-") + config.set('vars', new_key, value) with open(config_file, 'w') as configfile: config.write(configfile) diff --git a/tests/00-geo-rep/georep-basic-dr-rsync.t b/tests/00-geo-rep/georep-basic-dr-rsync.t index a54bc6237fa..b6fbf1875f0 100644 --- a/tests/00-geo-rep/georep-basic-dr-rsync.t +++ b/tests/00-geo-rep/georep-basic-dr-rsync.t @@ -215,6 +215,19 @@ EXPECT_WITHIN $GEO_REP_TIMEOUT 0 verify_rename_with_existing_destination ${slave #Verify arequal for whole volume EXPECT_WITHIN $GEO_REP_TIMEOUT "x0" arequal_checksum ${master_mnt} ${slave_mnt} +#Test config upgrade BUG: 1707731 +config_file=$GLUSTERD_WORKDIR/geo-replication/${GMV0}_${SH0}_${GSV0}/gsyncd.conf +cat >> $config_file<<EOL +[peers ${GMV0} ${GSV0}] +use_tarssh = true +timeout = 1 +EOL +TEST $GEOREP_CLI $master $slave stop +TEST $GEOREP_CLI $master $slave start +#verify that the config file is updated +EXPECT "1" echo $(grep -Fc "vars" $config_file) +EXPECT "1" echo $(grep -Fc "sync-method = tarssh" $config_file) +EXPECT "1" echo $(grep -Fc "slave-timeout = 1" $config_file) #Stop Geo-rep TEST $GEOREP_CLI $master $slave stop |