mirror/thinlinc: Refactor download script
This commit is contained in:
parent
b6754d49e7
commit
7f3bb95d2f
1 changed files with 15 additions and 8 deletions
|
@ -1,4 +1,6 @@
|
|||
#!/bin/bash
|
||||
#!/bin/sh
|
||||
|
||||
set -eu
|
||||
|
||||
umask 022
|
||||
|
||||
|
@ -16,8 +18,8 @@ if [ ! -d "${REPODIR}" ]; then
|
|||
mkdir "${REPODIR}"
|
||||
fi
|
||||
|
||||
LOCATION=$(curl -s "${BASEURL}/thinlinc/download" | \
|
||||
sed -n 's/^.*<a href="\(.*\.x86_64\.rpm\)">64-bit.*/\1/p')
|
||||
LOCATION=$(curl -sf "${BASEURL}/thinlinc/download/" | \
|
||||
sed -n 's/^.*<a href="\(.*\.x86_64\.rpm\)".*/\1/p' | head -n 1)
|
||||
if [ "${LOCATION}" = "" ]; then
|
||||
echo "ERR: Failed to determine current thinlinc version" 1>&2
|
||||
exit 1
|
||||
|
@ -25,20 +27,25 @@ fi
|
|||
PKGNAME="$(basename "${LOCATION}")"
|
||||
|
||||
if [ ! -f "${REPODIR}/${PKGNAME}" ]; then
|
||||
echo "New thinlinc version found"
|
||||
VERSION="$(echo "$PKGNAME" | sed -n 's/^thinlinc-client-\([0-9\.]*\)-[0-9]*\.x86_64\.rpm/\1/p')"
|
||||
|
||||
echo "New thinlinc version ${VERSION} found"
|
||||
echo ""
|
||||
|
||||
tmpfile="$(mktemp)"
|
||||
trap 'rm -f "$tmpfile"' EXIT
|
||||
|
||||
# assume that server version goes in-line with client
|
||||
echo "Downloading server package:"
|
||||
curl -so "${REPODIR}/.server.zip" "${BASEURL}/downloads/server/download.py"
|
||||
curl -sfo "$tmpfile" "${BASEURL}/downloads/server/tl-${VERSION}-server.zip"
|
||||
echo "Extracting server rpm files:"
|
||||
unzip -jd ${REPODIR} ${REPODIR}/.server.zip \*.rpm
|
||||
unzip -jfvd "$REPODIR" "$tmpfile" \*.rpm
|
||||
echo "Cleaning up..."
|
||||
rm -f ${REPODIR}/.server.zip
|
||||
echo ""
|
||||
|
||||
echo "Downloading client rpm package:"
|
||||
curl -so "${REPODIR}/${PKGNAME}" "${BASEURL}${LOCATION}"
|
||||
echo $LOCATION
|
||||
curl -sfo "${REPODIR}/${PKGNAME}" "${LOCATION}"
|
||||
echo ""
|
||||
echo "Updating repository metadata:"
|
||||
createrepo_c "${REPODIR}"
|
Loading…
Add table
Reference in a new issue