Merge pull request #347 from parkervcp/add/scripts

add a scripts folder for resources
This commit is contained in:
Michael (Parker) Parker 2019-11-03 22:36:03 -05:00 committed by GitHub
commit 6b41324cdd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 43 additions and 0 deletions

15
scripts/file_unpacker.sh Normal file
View File

@ -0,0 +1,15 @@
## only needs to have the file with a file passed into it to get the filetype.
## only supports tar.gz/xz and zip currently for unpacking.
## The value for ${DOWNLOAD_LINK##*/} is
FILETYPE=$(file -F ',' ${DOWNLOAD_LINK##*/} | cut -d',' -f2 | cut -d' ' -f2)
if [ "$FILETYPE" == "gzip" ]; then
tar xzvf ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "Zip" ]; then
unzip ${DOWNLOAD_LINK##*/}
elif [ "$FILETYPE" == "XZ" ]; then
tar xvf ${DOWNLOAD_LINK##*/}
else
echo -e "unknown filetype. Exeting"
exit 2
fi

View File

@ -0,0 +1,28 @@
## this is a simple script to use the github API for release versions.
## this requires the egg has a variable for GITHUB_PACKAGE, VERSION and MATCH (match is to match the filename in some way)
## this supports using oauth/personal access tokens via GITHUB_USER and GITHUB_OAUTH_TOKEN (both are required.)
## if you are getting hit with GitHub API limit issues then you need to have the user and token set.
if [ -z "$GITHUB_USER" ] && [ -z "$GITHUB_OAUTH_TOKEN" ] ; then
echo -e "using anon api call"
else
echo -e "user and oauth token set"
alias curl='curl -u $GITHUB_USER:$GITHUB_OAUTH_TOKEN '
fi
## get release info and download links
LATEST_JSON=$(curl --silent "https://api.github.com/repos/$GITHUB_PACKAGE/releases/latest")
RELEASES=$(curl --silent "https://api.github.com/repos/$GITHUB_PACKAGE/releases")
if [ -z "$VERSION" ] || [ "$VERSION" == "latest" ]; then
DOWNLOAD_LINK=$(echo $LATEST_JSON | jq .assets | jq -r .[].browser_download_url | grep -i ${MATCH})
else
VERSION_CHECK=$(echo $RELEASES | jq -r --arg VERSION "$VERSION" '.[] | select(.tag_name==$VERSION) | .tag_name')
if [ "$VERSION" == "$VERSION_CHECK" ]; then
DOWNLOAD_LINK=$(echo $RELEASES | jq -r --arg VERSION "$VERSION" '.[] | select(.tag_name==$VERSION) | .assets[].browser_download_url' | grep -i ${MATCH})
else
echo -e "defaulting to latest release"
DOWNLOAD_LINK=$(echo $LATEST_JSON | jq .assets | jq -r .[].browser_download_url)
fi
fi