From 4f309603caa39dde9ee79e049d8ba38713434fab Mon Sep 17 00:00:00 2001 From: Ilya Dryomov Date: Sun, 25 Aug 2024 13:22:08 +0200 Subject: [PATCH] qa: drop XMLSTARLET variable, use xmlstarlet directly The variable was added in commit 9b6b7c35d03f ("Handle differently-named xmlstarlet binary for *suse") but this compatibility business is long outdated: Mon Oct 13 08:52:37 UTC 2014 - toms@opensuse.org - SPEC file changes - Added link from /usr/bin/xml to /usr/bin/xmlstarlet as other distributions do the same - Did the same for the manpage Signed-off-by: Ilya Dryomov --- qa/standalone/ceph-helpers.sh | 9 ------ qa/standalone/crush/crush-classes.sh | 2 +- qa/workunits/rbd/cli_generic.sh | 38 ++++++++++++-------------- qa/workunits/rbd/cli_migration.sh | 2 -- qa/workunits/rbd/journal.sh | 12 ++++---- qa/workunits/rbd/rbd-ggate.sh | 17 +++--------- qa/workunits/rbd/rbd-nbd.sh | 20 ++++++-------- qa/workunits/rbd/rbd_mirror_helpers.sh | 15 ++-------- qa/workunits/rbd/test_admin_socket.sh | 6 ++-- 9 files changed, 42 insertions(+), 79 deletions(-) diff --git a/qa/standalone/ceph-helpers.sh b/qa/standalone/ceph-helpers.sh index 84233f32fb9c1..6cf0a182d4a88 100755 --- a/qa/standalone/ceph-helpers.sh +++ b/qa/standalone/ceph-helpers.sh @@ -25,15 +25,6 @@ TMPDIR=${TMPDIR:-/tmp} CEPH_BUILD_VIRTUALENV=${TMPDIR} TESTDIR=${TESTDIR:-${TMPDIR}} -if type xmlstarlet > /dev/null 2>&1; then - XMLSTARLET=xmlstarlet -elif type xml > /dev/null 2>&1; then - XMLSTARLET=xml -else - echo "Missing xmlstarlet binary!" - exit 1 -fi - if [ `uname` = FreeBSD ]; then SED=gsed AWK=gawk diff --git a/qa/standalone/crush/crush-classes.sh b/qa/standalone/crush/crush-classes.sh index 558aabe6d9398..a0662c3f1ee3f 100755 --- a/qa/standalone/crush/crush-classes.sh +++ b/qa/standalone/crush/crush-classes.sh @@ -52,7 +52,7 @@ function get_osds_up() { local objectname=$2 local osds=$(ceph --format xml osd map $poolname $objectname 2>/dev/null | \ - $XMLSTARLET sel -t -m "//up/osd" -v . -o ' ') + xmlstarlet sel -t -m "//up/osd" -v . -o ' ') # get rid of the trailing space echo $osds } diff --git a/qa/workunits/rbd/cli_generic.sh b/qa/workunits/rbd/cli_generic.sh index ca9ffde8113f2..2aa27d3d655c8 100755 --- a/qa/workunits/rbd/cli_generic.sh +++ b/qa/workunits/rbd/cli_generic.sh @@ -1,8 +1,6 @@ #!/usr/bin/env bash set -ex -. $(dirname $0)/../../standalone/ceph-helpers.sh - export RBD_FORCE_ALLOW_V1=1 # make sure rbd pool is EMPTY.. this is a test script!! @@ -935,7 +933,7 @@ get_migration_state() { local image=$1 rbd --format xml status $image | - $XMLSTARLET sel -t -v '//status/migration/state' + xmlstarlet sel -t -v '//status/migration/state' } test_migration() { @@ -1175,14 +1173,14 @@ test_trash_purge_schedule() { for i in `seq 12`; do test "$(rbd trash purge schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool')" = 'rbd' && break + xmlstarlet sel -t -v '//scheduled/item/pool')" = 'rbd' && break sleep 10 done rbd trash purge schedule status test "$(rbd trash purge schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool')" = 'rbd' + xmlstarlet sel -t -v '//scheduled/item/pool')" = 'rbd' test "$(rbd trash purge schedule status -p rbd --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool')" = 'rbd' + xmlstarlet sel -t -v '//scheduled/item/pool')" = 'rbd' rbd trash purge schedule add 2d 00:17 rbd trash purge schedule ls | grep 'every 2d starting at 00:17' @@ -1191,36 +1189,36 @@ test_trash_purge_schedule() { rbd trash purge schedule ls -p rbd2 -R | grep 'every 2d starting at 00:17' rbd trash purge schedule ls -p rbd2/ns1 -R | grep 'every 2d starting at 00:17' test "$(rbd trash purge schedule ls -R -p rbd2/ns1 --format xml | - $XMLSTARLET sel -t -v '//schedules/schedule/pool')" = "-" + xmlstarlet sel -t -v '//schedules/schedule/pool')" = "-" test "$(rbd trash purge schedule ls -R -p rbd2/ns1 --format xml | - $XMLSTARLET sel -t -v '//schedules/schedule/namespace')" = "-" + xmlstarlet sel -t -v '//schedules/schedule/namespace')" = "-" test "$(rbd trash purge schedule ls -R -p rbd2/ns1 --format xml | - $XMLSTARLET sel -t -v '//schedules/schedule/items/item/start_time')" = "00:17:00" + xmlstarlet sel -t -v '//schedules/schedule/items/item/start_time')" = "00:17:00" for i in `seq 12`; do rbd trash purge schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool' | grep 'rbd2' && break + xmlstarlet sel -t -v '//scheduled/item/pool' | grep 'rbd2' && break sleep 10 done rbd trash purge schedule status rbd trash purge schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool' | grep 'rbd2' + xmlstarlet sel -t -v '//scheduled/item/pool' | grep 'rbd2' echo $(rbd trash purge schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool') | grep 'rbd rbd2 rbd2' + xmlstarlet sel -t -v '//scheduled/item/pool') | grep 'rbd rbd2 rbd2' test "$(rbd trash purge schedule status -p rbd --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool')" = 'rbd' + xmlstarlet sel -t -v '//scheduled/item/pool')" = 'rbd' test "$(echo $(rbd trash purge schedule status -p rbd2 --format xml | - $XMLSTARLET sel -t -v '//scheduled/item/pool'))" = 'rbd2 rbd2' + xmlstarlet sel -t -v '//scheduled/item/pool'))" = 'rbd2 rbd2' test "$(echo $(rbd trash purge schedule ls -R --format xml | - $XMLSTARLET sel -t -v '//schedules/schedule/items'))" = "2d00:17:00 1d01:30:00" + xmlstarlet sel -t -v '//schedules/schedule/items'))" = "2d00:17:00 1d01:30:00" rbd trash purge schedule add 1d rbd trash purge schedule ls | grep 'every 2d starting at 00:17' rbd trash purge schedule ls | grep 'every 1d' rbd trash purge schedule ls -R --format xml | - $XMLSTARLET sel -t -v '//schedules/schedule/items' | grep '2d00:17' + xmlstarlet sel -t -v '//schedules/schedule/items' | grep '2d00:17' rbd trash purge schedule rm 1d rbd trash purge schedule ls | grep 'every 2d starting at 00:17' @@ -1362,13 +1360,13 @@ test_mirror_snapshot_schedule() { rbd mirror snapshot schedule status test "$(rbd mirror snapshot schedule status --format xml | - $XMLSTARLET sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' + xmlstarlet sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' test "$(rbd mirror snapshot schedule status -p rbd2 --format xml | - $XMLSTARLET sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' + xmlstarlet sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' test "$(rbd mirror snapshot schedule status -p rbd2/ns1 --format xml | - $XMLSTARLET sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' + xmlstarlet sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' test "$(rbd mirror snapshot schedule status -p rbd2/ns1 --image test1 --format xml | - $XMLSTARLET sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' + xmlstarlet sel -t -v '//scheduled_images/image/image')" = 'rbd2/ns1/test1' rbd mirror image demote rbd2/ns1/test1 for i in `seq 12`; do diff --git a/qa/workunits/rbd/cli_migration.sh b/qa/workunits/rbd/cli_migration.sh index acfa79b4d081a..5a7bb41376e90 100755 --- a/qa/workunits/rbd/cli_migration.sh +++ b/qa/workunits/rbd/cli_migration.sh @@ -1,8 +1,6 @@ #!/usr/bin/env bash set -ex -. $(dirname $0)/../../standalone/ceph-helpers.sh - TEMPDIR= IMAGE1=image1 IMAGE2=image2 diff --git a/qa/workunits/rbd/journal.sh b/qa/workunits/rbd/journal.sh index ba89e75c92641..7652a27424307 100755 --- a/qa/workunits/rbd/journal.sh +++ b/qa/workunits/rbd/journal.sh @@ -1,8 +1,6 @@ #!/usr/bin/env bash set -e -. $(dirname $0)/../../standalone/ceph-helpers.sh - function list_tests() { echo "AVAILABLE TESTS" @@ -45,7 +43,7 @@ test_rbd_journal() rbd create --image-feature exclusive-lock --image-feature journaling \ --size 128 ${image} local journal=$(rbd info ${image} --format=xml 2>/dev/null | - $XMLSTARLET sel -t -v "//image/journal") + xmlstarlet sel -t -v "//image/journal") test -n "${journal}" rbd journal info ${journal} rbd journal info --journal ${journal} @@ -54,14 +52,14 @@ test_rbd_journal() rbd feature disable ${image} journaling rbd info ${image} --format=xml 2>/dev/null | - expect_false $XMLSTARLET sel -t -v "//image/journal" + expect_false xmlstarlet sel -t -v "//image/journal" expect_false rbd journal info ${journal} expect_false rbd journal info --image ${image} rbd feature enable ${image} journaling local journal1=$(rbd info ${image} --format=xml 2>/dev/null | - $XMLSTARLET sel -t -v "//image/journal") + xmlstarlet sel -t -v "//image/journal") test "${journal}" = "${journal1}" rbd journal info ${journal} @@ -89,7 +87,7 @@ test_rbd_journal() rbd create --image-feature exclusive-lock --image-feature journaling \ --size 128 ${image1} journal1=$(rbd info ${image1} --format=xml 2>/dev/null | - $XMLSTARLET sel -t -v "//image/journal") + xmlstarlet sel -t -v "//image/journal") save_commit_position ${journal1} rbd journal import --dest ${image1} $TMPDIR/journal.export @@ -130,7 +128,7 @@ rbd_assert_eq() { local expected_val=$4 local val=$(rbd --format xml ${cmd} --image ${image} | - $XMLSTARLET sel -t -v "${param}") + xmlstarlet sel -t -v "${param}") test "${val}" = "${expected_val}" } diff --git a/qa/workunits/rbd/rbd-ggate.sh b/qa/workunits/rbd/rbd-ggate.sh index 1bf89da382c2a..d1dd00e4e2d3c 100755 --- a/qa/workunits/rbd/rbd-ggate.sh +++ b/qa/workunits/rbd/rbd-ggate.sh @@ -7,15 +7,6 @@ SIZE=64 DATA= DEV= -if which xmlstarlet > /dev/null 2>&1; then - XMLSTARLET=xmlstarlet -elif which xml > /dev/null 2>&1; then - XMLSTARLET=xml -else - echo "Missing xmlstarlet binary!" - exit 1 -fi - if [ `uname -K` -ge 1200078 ] ; then RBD_GGATE_RESIZE_SUPPORTED=1 fi @@ -148,16 +139,16 @@ _sudo sync echo trim test provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -eq "${provisioned}" ] _sudo newfs -E ${DEV} _sudo sync provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -lt "${provisioned}" ] echo resize test diff --git a/qa/workunits/rbd/rbd-nbd.sh b/qa/workunits/rbd/rbd-nbd.sh index 98b3aff1370d1..1f9acd144926e 100755 --- a/qa/workunits/rbd/rbd-nbd.sh +++ b/qa/workunits/rbd/rbd-nbd.sh @@ -1,8 +1,6 @@ #!/usr/bin/env bash set -ex -. $(dirname $0)/../../standalone/ceph-helpers.sh - POOL=rbd ANOTHER_POOL=new_default_pool$$ NS=ns @@ -105,7 +103,7 @@ function get_pid() local pool=$1 local ns=$2 - PID=$(rbd device --device-type nbd --format xml list | $XMLSTARLET sel -t -v \ + PID=$(rbd device --device-type nbd --format xml list | xmlstarlet sel -t -v \ "//devices/device[pool='${pool}'][namespace='${ns}'][image='${IMAGE}'][device='${DEV}']/id") test -n "${PID}" || return 1 ps -p ${PID} -C rbd-nbd @@ -172,17 +170,17 @@ unmap_device ${DEV} ${PID} DEV=`_sudo rbd device --device-type nbd --options notrim map ${POOL}/${IMAGE}` get_pid ${POOL} provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -eq "${provisioned}" ] # should fail discard as at time of mapping notrim was used expect_false _sudo blkdiscard ${DEV} sync provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -eq "${provisioned}" ] unmap_device ${DEV} ${PID} @@ -190,17 +188,17 @@ unmap_device ${DEV} ${PID} DEV=`_sudo rbd device --device-type nbd map ${POOL}/${IMAGE}` get_pid ${POOL} provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -eq "${provisioned}" ] # should honor discard as at time of mapping trim was considered by default _sudo blkdiscard ${DEV} sync provisioned=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/provisioned_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/provisioned_size" -v .` used=`rbd -p ${POOL} --format xml du ${IMAGE} | - $XMLSTARLET sel -t -m "//stats/images/image/used_size" -v .` + xmlstarlet sel -t -m "//stats/images/image/used_size" -v .` [ "${used}" -lt "${provisioned}" ] unmap_device ${DEV} ${PID} diff --git a/qa/workunits/rbd/rbd_mirror_helpers.sh b/qa/workunits/rbd/rbd_mirror_helpers.sh index abb1d17c8df50..1c3062891768d 100755 --- a/qa/workunits/rbd/rbd_mirror_helpers.sh +++ b/qa/workunits/rbd/rbd_mirror_helpers.sh @@ -72,15 +72,6 @@ # ../qa/workunits/rbd/rbd_mirror_helpers.sh cleanup # -if type xmlstarlet > /dev/null 2>&1; then - XMLSTARLET=xmlstarlet -elif type xml > /dev/null 2>&1; then - XMLSTARLET=xml -else - echo "Missing xmlstarlet binary!" - exit 1 -fi - RBD_MIRROR_INSTANCES=${RBD_MIRROR_INSTANCES:-2} CLUSTER1=cluster1 @@ -894,9 +885,9 @@ test_mirror_pool_status_verbose() --verbose --format xml) local last_update state - last_update=$($XMLSTARLET sel -t -v \ + last_update=$(xmlstarlet sel -t -v \ "//images/image[name='${image}']/last_update" <<< "$status") - state=$($XMLSTARLET sel -t -v \ + state=$(xmlstarlet sel -t -v \ "//images/image[name='${image}']/state" <<< "$status") echo "${state}" | grep "${state_pattern}" || @@ -1337,7 +1328,7 @@ compare_image_snapshots() for snap_name in $(rbd --cluster ${CLUSTER1} --format xml \ snap list ${pool}/${image} | \ - $XMLSTARLET sel -t -v "//snapshot/name" | \ + xmlstarlet sel -t -v "//snapshot/name" | \ grep -E -v "^\.rbd-mirror\."); do rm -f ${rmt_export} ${loc_export} rbd --cluster ${CLUSTER2} export ${pool}/${image}@${snap_name} ${rmt_export} diff --git a/qa/workunits/rbd/test_admin_socket.sh b/qa/workunits/rbd/test_admin_socket.sh index 6b960787b5edc..110fdd48ea74d 100755 --- a/qa/workunits/rbd/test_admin_socket.sh +++ b/qa/workunits/rbd/test_admin_socket.sh @@ -5,8 +5,6 @@ TMPDIR=/tmp/rbd_test_admin_socket$$ mkdir $TMPDIR trap "rm -fr $TMPDIR" 0 -. $(dirname $0)/../../standalone/ceph-helpers.sh - function expect_false() { set -x @@ -40,12 +38,12 @@ function rbd_get_perfcounter() local name name=$(ceph --format xml --admin-daemon $(rbd_watch_asok ${image}) \ - perf schema | $XMLSTARLET el -d3 | + perf schema | xmlstarlet el -d3 | grep "/librbd-.*-${image}/${counter}\$") test -n "${name}" || return 1 ceph --format xml --admin-daemon $(rbd_watch_asok ${image}) perf dump | - $XMLSTARLET sel -t -m "${name}" -v . + xmlstarlet sel -t -m "${name}" -v . } function rbd_check_perfcounter() -- 2.39.5