From eecf56b8a942b3c831183e02badcc81942243ccf Mon Sep 17 00:00:00 2001 From: "Kabanov, Dmitrii" Date: Mon, 6 Jul 2020 18:13:28 -0700 Subject: [PATCH] [Ceph-client, ceph-osd] Update helm test The PS updates helm test and replaces "expected_osds" variable by the amount of OSDs available in the cluster (ceph-client). Also the PS updates the logic of calculation of minimum amount of OSDs. Change-Id: Ic8402d668d672f454f062bed369cac516ed1573e --- ceph-client/templates/bin/_helm-tests.sh.tpl | 14 +++++++------- ceph-client/templates/pod-helm-tests.yaml | 2 -- ceph-osd/templates/bin/_helm-tests.sh.tpl | 7 +++---- 3 files changed, 10 insertions(+), 13 deletions(-) diff --git a/ceph-client/templates/bin/_helm-tests.sh.tpl b/ceph-client/templates/bin/_helm-tests.sh.tpl index 45d114d25..06b4cab36 100755 --- a/ceph-client/templates/bin/_helm-tests.sh.tpl +++ b/ceph-client/templates/bin/_helm-tests.sh.tpl @@ -33,19 +33,19 @@ function check_osd_count() { num_osd=$(ceph osd stat | tr ' ' '\n' | grep -x -E '[0-9]+' | head -n1) num_in_osds=$(ceph osd stat | tr ' ' '\n' | grep -x -E '[0-9]+' | tail -n1) num_up_osds=$(ceph osd stat | tr ' ' '\n' | grep -x -E '[0-9]+' | head -n2 | tail -n1) - if [ $EXPECTED_OSDS == 1 ]; then - MIN_EXPECTED_OSDS=$EXPECTED_OSDS - else - MIN_EXPECTED_OSDS=$(($EXPECTED_OSDS*$REQUIRED_PERCENT_OF_OSDS/100)) + + MIN_OSDS=$((${num_osd}*$REQUIRED_PERCENT_OF_OSDS/100)) + if [ ${MIN_OSDS} -lt 1 ]; then + MIN_OSDS=1 fi if [ "${num_osd}" -eq 0 ]; then echo "There are no osds in the cluster" exit 1 - elif [ "${num_in_osds}" -ge "${MIN_EXPECTED_OSDS}" ] && [ "${num_up_osds}" -ge "${MIN_EXPECTED_OSDS}" ]; then - echo "Required number of OSDs (${MIN_EXPECTED_OSDS}) are UP and IN status" + elif [ "${num_in_osds}" -ge "${MIN_OSDS}" ] && [ "${num_up_osds}" -ge "${MIN_OSDS}" ]; then + echo "Required number of OSDs (${MIN_OSDS}) are UP and IN status" else - echo "Required number of OSDs (${MIN_EXPECTED_OSDS}) are NOT UP and IN status. Cluster shows OSD count=${num_osd}, UP=${num_up_osds}, IN=${num_in_osds}" + echo "Required number of OSDs (${MIN_OSDS}) are NOT UP and IN status. Cluster shows OSD count=${num_osd}, UP=${num_up_osds}, IN=${num_in_osds}" exit 1 fi } diff --git a/ceph-client/templates/pod-helm-tests.yaml b/ceph-client/templates/pod-helm-tests.yaml index ffad06fd3..951a22cb8 100644 --- a/ceph-client/templates/pod-helm-tests.yaml +++ b/ceph-client/templates/pod-helm-tests.yaml @@ -42,8 +42,6 @@ spec: env: - name: CEPH_DEPLOYMENT_NAMESPACE value: {{ .Release.Namespace }} - - name: EXPECTED_OSDS - value: {{ .Values.conf.pool.target.osd | quote }} - name: REQUIRED_PERCENT_OF_OSDS value: {{ .Values.conf.pool.target.required_percent_of_osds | ceil | quote }} - name: EXPECTED_CRUSHRULE diff --git a/ceph-osd/templates/bin/_helm-tests.sh.tpl b/ceph-osd/templates/bin/_helm-tests.sh.tpl index 0d344cc8d..37a6cd025 100644 --- a/ceph-osd/templates/bin/_helm-tests.sh.tpl +++ b/ceph-osd/templates/bin/_helm-tests.sh.tpl @@ -22,10 +22,9 @@ function check_osd_count() { num_in_osds=$(ceph osd stat | tr ' ' '\n' | grep -x -E '[0-9]+' | tail -n1) num_up_osds=$(ceph osd stat | tr ' ' '\n' | grep -x -E '[0-9]+' | head -n2 | tail -n1) - if [ ${num_osd} -eq 1 ]; then - MIN_OSDS=${num_osd} - else - MIN_OSDS=$((${num_osd}*$REQUIRED_PERCENT_OF_OSDS/100)) + MIN_OSDS=$((${num_osd}*$REQUIRED_PERCENT_OF_OSDS/100)) + if [ ${MIN_OSDS} -lt 1 ]; then + MIN_OSDS=1 fi if [ "${num_osd}" -eq 0 ]; then