diff --git a/.repo/nvchecker.toml b/.repo/nvchecker.toml index 3a66cca..3630501 100644 --- a/.repo/nvchecker.toml +++ b/.repo/nvchecker.toml @@ -1497,6 +1497,10 @@ cmd = "./.repo/pkgver/samhain.sh" source = "cmd" cmd = "./.repo/pkgver/sendmail.sh" +[idracadm7] +source = "cmd" +cmd = "./.repo/pkgver/idracadm7.sh" + # git [pounce] diff --git a/.repo/pkgver/idracadm7.sh b/.repo/pkgver/idracadm7.sh new file mode 100755 index 0000000..d3d8e08 --- /dev/null +++ b/.repo/pkgver/idracadm7.sh @@ -0,0 +1,33 @@ +#!/bin/bash +set -e + +# check dependencies +count=0 +for dependency in curl hxnormalize hxselect grep sed sort tail; do + if [ ! -x "$(command -v $dependency)" ]; then + echo "$dependency missing" + count=$((count+1)) + fi +done + +# exit script if any dependencies missing +if [ $count -ne 0 ]; then + exit 1 +fi + +# upstream URL +UPSTREAM_URL="https://linux.dell.com/repo/community/openmanage/index.html" + +# options to pass to cURL, including custom user agent +USER_AGENT="omsa-version-checker/1.0 george@rawlinson.net.nz" +CURL_OPTS=(--silent --user-agent "$USER_AGENT") + +curl "${CURL_OPTS[@]}" "$UPSTREAM_URL" | \ + hxnormalize -x | \ + hxselect -c 'td>center' -s '\n' | \ + grep '^v.*' | \ + grep --invert-match '*\|,' | \ + sed 's/^v//' | \ + sort -n | \ + tail -n 1 +exit 0