geo-rep: fix integer config validation
ssh-port validation is mentioned as `validation=int` in template `gsyncd.conf`, but not handled this during geo-rep config set. Backport of https://review.gluster.org/22418 Fixes: bz#1695445 Change-Id: I3f19d9b471b0a3327e4d094dfbefcc58ed2c34f6 Signed-off-by: Aravinda VK <avishwan@redhat.com> (cherry picked from commit c574984e19d59e351372eacce0ce11fb36e96dd4)
This commit is contained in:
parent
cbb52082da
commit
ec95f02b1e
@ -313,6 +313,9 @@ class Gconf(object):
|
||||
if item["validation"] == "unixtime":
|
||||
return validate_unixtime(value)
|
||||
|
||||
if item["validation"] == "int":
|
||||
return validate_int(value)
|
||||
|
||||
return False
|
||||
|
||||
def _is_config_changed(self):
|
||||
@ -326,6 +329,14 @@ class Gconf(object):
|
||||
return False
|
||||
|
||||
|
||||
def validate_int(value):
|
||||
try:
|
||||
_ = int(value)
|
||||
return True
|
||||
except ValueError:
|
||||
return False
|
||||
|
||||
|
||||
def validate_unixtime(value):
|
||||
try:
|
||||
y = datetime.fromtimestamp(int(value)).strftime("%Y")
|
||||
@ -338,11 +349,13 @@ def validate_unixtime(value):
|
||||
|
||||
|
||||
def validate_minmax(value, minval, maxval):
|
||||
value = int(value)
|
||||
minval = int(minval)
|
||||
maxval = int(maxval)
|
||||
|
||||
return value >= minval and value <= maxval
|
||||
try:
|
||||
value = int(value)
|
||||
minval = int(minval)
|
||||
maxval = int(maxval)
|
||||
return value >= minval and value <= maxval
|
||||
except ValueError:
|
||||
return False
|
||||
|
||||
|
||||
def validate_choice(value, allowed_values):
|
||||
|
@ -71,6 +71,9 @@ EXPECT_WITHIN $GEO_REP_TIMEOUT 4 check_status_num_rows "Created"
|
||||
#Config gluster-command-dir
|
||||
TEST $GEOREP_CLI $master $slave config gluster-command-dir ${GLUSTER_CMD_DIR}
|
||||
|
||||
#Config Set ssh-port to validate int validation
|
||||
TEST $GEOREP_CLI $master $slave config ssh-port 22
|
||||
|
||||
#Config gluster-command-dir
|
||||
TEST $GEOREP_CLI $master $slave config slave-gluster-command-dir ${GLUSTER_CMD_DIR}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user