ceph/qa/workunits/mon/test_noautoscale_flag.sh
Kamoltat bb42c71e7e qa: Added workunit test for noautoscale flag
set and unset the noautoscale flag,
evaluate if the results are what
we expected. As well as, evaluate
if the flag is correct when we
create new pools.

Signed-off-by: Kamoltat <ksirivad@redhat.com>
2021-12-22 21:42:28 +00:00

84 lines
1.9 KiB
Bash
Executable File

#!/bin/bash -ex
unset CEPH_CLI_TEST_DUP_COMMAND
NUM_POOLS=$(ceph osd pool ls | wc -l)
if [ "$NUM_POOLS" -gt 0 ]; then
echo "test requires no preexisting pools"
exit 1
fi
ceph osd pool set noautoscale
ceph osd pool create pool_a
echo 'pool_a autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_a | grep -o -m 1 'on\|off')
NUM_POOLS=$[NUM_POOLS+1]
sleep 2
# Count the number of Pools with AUTOSCALE `off`
RESULT1=$(ceph osd pool autoscale-status | grep -oe 'off' | wc -l)
# number of Pools with AUTOSCALE `off` should equal to 2
test "$RESULT1" -eq "$NUM_POOLS"
ceph osd pool unset noautoscale
echo $(ceph osd pool get noautoscale)
ceph osd pool create pool_b
echo 'pool_a autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_a | grep -o -m 1 'on\|off')
echo 'pool_b autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_b | grep -o -m 1 'on\|off')
NUM_POOLS=$[NUM_POOLS+1]
sleep 2
# Count the number of Pools with AUTOSCALE `on`
RESULT2=$(ceph osd pool autoscale-status | grep -oe 'on' | wc -l)
# number of Pools with AUTOSCALE `on` should equal to 3
test "$RESULT2" -eq "$NUM_POOLS"
ceph osd pool set noautoscale
ceph osd pool create pool_c
echo 'pool_a autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_a | grep -o -m 1 'on\|off')
echo 'pool_b autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_b | grep -o -m 1 'on\|off')
echo 'pool_c autoscale_mode:' $(ceph osd pool autoscale-status | grep pool_c | grep -o -m 1 'on\|off')
NUM_POOLS=$[NUM_POOLS+1]
sleep 2
# Count the number of Pools with AUTOSCALE `off`
RESULT3=$(ceph osd pool autoscale-status | grep -oe 'off' | wc -l)
# number of Pools with AUTOSCALE `off` should equal to 4
test "$RESULT3" -eq "$NUM_POOLS"
ceph osd pool rm pool_a pool_a --yes-i-really-really-mean-it
ceph osd pool rm pool_b pool_b --yes-i-really-really-mean-it
ceph osd pool rm pool_c pool_c --yes-i-really-really-mean-it
echo OK