Implemented logging functions
This commit is contained in:
parent
02dbe5e0eb
commit
a734bbf83b
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
# BEGIN: Variables
|
# BEGIN: Variables
|
||||||
|
|
||||||
|
DEBUG=1
|
||||||
ACTION=""
|
ACTION=""
|
||||||
DOWNLOAD_URL='https://discord.com/api/download/stable?platform=linux&format=tar.gz'
|
DOWNLOAD_URL='https://discord.com/api/download/stable?platform=linux&format=tar.gz'
|
||||||
VERSION_REGEX='[0-9]+\.[0-9]+\.[0-9]+'
|
VERSION_REGEX='[0-9]+\.[0-9]+\.[0-9]+'
|
||||||
@ -19,6 +20,12 @@ DESKTOP_FILE_INSTALLED=0
|
|||||||
|
|
||||||
# BEGIN: Helper Functions
|
# BEGIN: Helper Functions
|
||||||
|
|
||||||
|
function log () {
|
||||||
|
if [[ $DEBUG -eq 1 ]]; then local DATE=`date` local MESSAGE="${1:?"log: Message not provided"}"
|
||||||
|
echo "$DATE : $MESSAGE"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
function get_remote_version(){
|
function get_remote_version(){
|
||||||
local REMOTE_VERSION=`curl $DOWNLOAD_URL | grep -Eo $VERSION_REGEX | head -n 1`
|
local REMOTE_VERSION=`curl $DOWNLOAD_URL | grep -Eo $VERSION_REGEX | head -n 1`
|
||||||
|
|
||||||
@ -26,7 +33,7 @@ function get_remote_version(){
|
|||||||
echo "$REMOTE_VERSION"
|
echo "$REMOTE_VERSION"
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
echo "error: remote version not found"
|
log "error: remote version not found"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
@ -36,17 +43,19 @@ function do_download(){
|
|||||||
|
|
||||||
## If the provided version doesn't match the format #.#.#
|
## If the provided version doesn't match the format #.#.#
|
||||||
if [[ ! "$VERSION" =~ ^$VERSION_REGEX$ ]]; then
|
if [[ ! "$VERSION" =~ ^$VERSION_REGEX$ ]]; then
|
||||||
echo "do_download : the version ($VERSION) provided, does not match format $VERSION_REGEX."
|
log "do_download : the version ($VERSION) provided, does not match format $VERSION_REGEX."
|
||||||
exit 2
|
exit 2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
## Making the URL to download the package
|
## Making the URL to download the package
|
||||||
### replacing all {VERSION} in PACKAGE_DOWNLOAD_URL_BASE with $REMOTE_VERSION using string substitution
|
### replacing all {VERSION} in PACKAGE_DOWNLOAD_URL_BASE with $REMOTE_VERSION using string substitution
|
||||||
PACKAGE_DOWNLOAD_URL="${PACKAGE_DOWNLOAD_URL_BASE//\{VERSION\}/$REMOTE_VERSION}"
|
PACKAGE_DOWNLOAD_URL="${PACKAGE_DOWNLOAD_URL_BASE//\{VERSION\}/$REMOTE_VERSION}"
|
||||||
|
log "Download url created ($PACKAGE_DOWNLOAD_URL)"
|
||||||
|
|
||||||
## Getting filename from url
|
## Getting filename from url
|
||||||
### Removing all characters from the last / back to leave only the filename
|
### Removing all characters from the last / back to leave only the filename
|
||||||
FILENAME="${PACKAGE_DOWNLOAD_URL/*\/}"
|
FILENAME="${PACKAGE_DOWNLOAD_URL/*\/}"
|
||||||
|
log "File was downloaded as $FILENAME"
|
||||||
|
|
||||||
## Downloading the discord package (tar.gz)
|
## Downloading the discord package (tar.gz)
|
||||||
curl "$PACKAGE_DOWNLOAD_URL" -o "$FILENAME" >/dev/null 2>&1
|
curl "$PACKAGE_DOWNLOAD_URL" -o "$FILENAME" >/dev/null 2>&1
|
||||||
@ -54,6 +63,8 @@ function do_download(){
|
|||||||
|
|
||||||
function update_desktop_file() {
|
function update_desktop_file() {
|
||||||
|
|
||||||
|
log "Updating desktop file"
|
||||||
|
|
||||||
## Desktop file in the current/new install
|
## Desktop file in the current/new install
|
||||||
DESKTOP_FILE=$EXISTING_INSTALL/discord.desktop
|
DESKTOP_FILE=$EXISTING_INSTALL/discord.desktop
|
||||||
|
|
||||||
@ -75,6 +86,7 @@ function update_desktop_file() {
|
|||||||
|
|
||||||
## Pushing replacement values to desktop file
|
## Pushing replacement values to desktop file
|
||||||
echo -e "$DESKTOP_FILE_CONTENTS" > $DESKTOP_FILE
|
echo -e "$DESKTOP_FILE_CONTENTS" > $DESKTOP_FILE
|
||||||
|
log "Desktop file has been updated"
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -89,8 +101,8 @@ function do_install() {
|
|||||||
if [[ -f $FILENAME ]]; then
|
if [[ -f $FILENAME ]]; then
|
||||||
tar xf "$FILENAME"
|
tar xf "$FILENAME"
|
||||||
else
|
else
|
||||||
echo "$FILENAME failed to download. Exiting now"
|
log "$FILENAME failed to download. Exiting now"
|
||||||
exit 1
|
exit 3
|
||||||
fi
|
fi
|
||||||
|
|
||||||
update_desktop_file
|
update_desktop_file
|
||||||
@ -137,11 +149,13 @@ function do_upgrade(){
|
|||||||
|
|
||||||
if [[ -d $EXISTING_INSTALL ]] && [[ -f $BUILD_FILE ]]; then
|
if [[ -d $EXISTING_INSTALL ]] && [[ -f $BUILD_FILE ]]; then
|
||||||
LOCAL_VERSION=`grep -Eo $VERSION_REGEX $BUILD_FILE`
|
LOCAL_VERSION=`grep -Eo $VERSION_REGEX $BUILD_FILE`
|
||||||
|
log "Local version was found to be ($LOCAL_VERSION)"
|
||||||
else
|
else
|
||||||
ACTION=INSTALL
|
ACTION=INSTALL
|
||||||
fi
|
fi
|
||||||
|
|
||||||
REMOTE_VERSION=`get_remote_version`
|
REMOTE_VERSION=`get_remote_version`
|
||||||
|
log "Retrieved remote version ($REMOTE_VERSION)"
|
||||||
|
|
||||||
# END: Pre-Work Check
|
# END: Pre-Work Check
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user