From 67a05dda23bab56edd4b1104da58566f45ebea47 Mon Sep 17 00:00:00 2001 From: Loys Ollivier Date: Fri, 28 Dec 2018 16:10:30 +0100 Subject: jjb: lava-labs-prepare: use lavacli to find devices and tags lava-tool is deprecated. There is a new "Tags" feature in lavacli that we would like to leverage to create customize tests depending on tags. Include lavacli into the script dependencies. Use it to find devices and list corresponding tags. Note, for now it is not replacing lava-tool but only ran alongside to test the behavior. Change-Id: I29546f4109ce869f7f047639f46e4a9c4499a9b2 Signed-off-by: Loys Ollivier --- jjb/common/include-agl-lava-labs-prepare.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'jjb/common/include-agl-lava-labs-prepare.sh') diff --git a/jjb/common/include-agl-lava-labs-prepare.sh b/jjb/common/include-agl-lava-labs-prepare.sh index ea025469..893c859f 100644 --- a/jjb/common/include-agl-lava-labs-prepare.sh +++ b/jjb/common/include-agl-lava-labs-prepare.sh @@ -69,6 +69,33 @@ for lab in "${!labs[@]}"; do fi rm -f $token_file + # lavacli auth using token + lavacli identities add --token ${token} --uri $full_url --username $user $lab + + # lavacli: Find the LAVA lab that has the device available to run the job + echo -n "lavacli: Checking for $lava_device at $full_url... " + lavacli_line=$(lavacli -i $lab devices list | grep $lava_device | head -1) + lavacli_line=$(echo "$lavacli_line" | tr -d '[:space:]') + + if [ -z "$lavacli_line" ]; then + echo "not found." + continue + fi + IFS=':' + arr=($lavacli_line) + device_status=${arr[1]} + IFS=${OFS} + + if [ x"$device_status" = x"Idle,Good" ]; then + echo "lavacli: found a device available: $lavacli_line" + lavacli_dev=$(echo ${arr[0]} | sed 's/\*\([^(]*\).*/\1/') + lavacli_tags=$(lavacli -i $lab devices tags list $lavacli_dev | grep \*) + lavacli_tags=$(echo $lavacli_tags | sed 's/\* \(\)/\1/') + echo "Tags for $lavacli_dev: $lavacli_tags" + else + echo "lavacli: did not find any device available: $lavacli_line" + fi + # Find the LAVA Lab that has the device available to run the job echo -n "Checking for $lava_device at $full_url... " line=$(lava-tool devices-list $full_url | grep $lava_device) -- cgit 1.2.3-korg