38 lines
1.1 KiB
Bash
38 lines
1.1 KiB
Bash
#!/bin/sh
|
|
|
|
# CyberChef web directory
|
|
CYBERCHEF_DIRECTORY="/var/www/public/cyberchef"
|
|
# download srouce code of latest releases page
|
|
CYBERCHEF_RELEASES_API=$(wget -O - https://api.github.com/repos/gchq/CyberChef/releases/latest)
|
|
# version
|
|
VERSION=$(echo ${CYBERCHEF_RELEASES_API} | jq -r .tag_name)
|
|
# get download url
|
|
DOWNLOAD_URL=$(echo ${CYBERCHEF_RELEASES_API} | jq -r .assets[].browser_download_url)
|
|
# get filename
|
|
FILENAME=$(echo ${CYBERCHEF_RELEASES_API} | jq -r .assets[].name)
|
|
|
|
# test if version is already downloaded
|
|
if [ $(ls ${CYBERCHEF_DIRECTORY}/*${VERSION}* | wc -l) -gt 0 ]; then
|
|
echo "Version is already downloaded"
|
|
exit
|
|
fi
|
|
|
|
# download file
|
|
wget -P ${CYBERCHEF_DIRECTORY} ${DOWNLOAD_URL}
|
|
|
|
# unzip file
|
|
unzip -d ${CYBERCHEF_DIRECTORY} -o ${CYBERCHEF_DIRECTORY}/${FILENAME}
|
|
|
|
# remove old index file
|
|
rm -f ${CYBERCHEF_DIRECTORY}/index.html
|
|
|
|
# HTML filename
|
|
HTML_FILENAME="${FILENAME/zip/html}"
|
|
|
|
# link new index file
|
|
ln -s ${CYBERCHEF_DIRECTORY}/${HTML_FILENAME} ${CYBERCHEF_DIRECTORY}/index.html
|
|
|
|
# move zip to archive folder
|
|
mv -f ${CYBERCHEF_DIRECTORY}/${FILENAME} ${CYBERCHEF_DIRECTORY}/.archive/
|
|
|