37 lines
1023 B
Bash
Executable File
37 lines
1023 B
Bash
Executable File
#!/bin/bash
|
|
download_url='https://developers.yubico.com/yubioath-flutter/Releases'
|
|
app='yubico-authenticator'
|
|
platform='linux'
|
|
|
|
# get version in spec file
|
|
SPEC_DATA=$(cat yubico-authenticator.spec)
|
|
SPEC_REGEX="Version:\s+(([0-9]|\.)*)"
|
|
#echo ${SPEC_DATA}
|
|
[[ $SPEC_DATA =~ $SPEC_REGEX ]]
|
|
current_version=${BASH_REMATCH[1]}
|
|
|
|
# Get the latest linux tar.gz available
|
|
HTML=$(curl -L -s ${download_url})
|
|
URL_REGEX="${app}-(([0-9]|\.)*)-${platform}\.tar\.gz"
|
|
[[ $HTML =~ $URL_REGEX ]]
|
|
latest_version=${BASH_REMATCH[1]}
|
|
|
|
# check to see if we've built this version last
|
|
if [[ "$latest_version" == "" ]]; then
|
|
echo "Error returning latest version from website."
|
|
exit
|
|
fi
|
|
|
|
echo "Current version: ${current_version}"
|
|
echo "Latest version: ${latest_version}"
|
|
|
|
# check to see if we've built this version last
|
|
if [[ "$current_version" == "$latest_version" ]]; then
|
|
exit
|
|
fi
|
|
|
|
echo "version does not match"
|
|
# change version in spec file and build
|
|
sed -i "s/${current_version}/${latest_version}/" yubico-authenticator.spec
|
|
./build
|