65 lines
1.9 KiB
Bash
Executable file
65 lines
1.9 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
function error {
|
|
echo -e "\\e[91m$1\\e[39m"
|
|
exit 1
|
|
}
|
|
|
|
# Check dependencies
|
|
jq --version &> /dev/null || error "jq is required, please install it with 'sudo apt install jq'"
|
|
git --version &> /dev/null || error "git is required, please install it with 'sudo apt install git'"
|
|
sha256sum --version &> /dev/null || error "sha256sum is required, please install it with 'sudo apt install coreutils'"
|
|
|
|
# Check if script from build or script from hook and cd into build folder
|
|
scriptDir="$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
|
|
if [ "$( echo "$scriptDir" | rev | cut -d/ -f1 | rev )" == "build" ]; then
|
|
cd -- "$scriptDir" &> /dev/null || exit
|
|
else
|
|
cd -- "$(git rev-parse --show-toplevel)/build" &> /dev/null || exit
|
|
fi
|
|
|
|
# Get file location (Variables) from env file
|
|
homedir='../'
|
|
. env.sh
|
|
|
|
# Variable to update
|
|
doUpdate=false
|
|
|
|
# Check if there is a new app
|
|
CurrentNumOfApps=$( ls "$appsfolder" | wc -l )
|
|
PreviousNumOfApps=$( head -n -1 "$verificationFile" | wc -l)
|
|
[[ $CurrentNumOfApps -eq $PreviousNumOfApps ]] || doUpdate=true
|
|
|
|
# Check if Template or appinfo has changed
|
|
sha256sum -c --quiet "$verificationFile" &> /dev/null || doUpdate=true
|
|
|
|
if $doUpdate ; then
|
|
|
|
# Make sure tmp folder exists
|
|
mkdir -p "$( dirname -- "$verificationFile" )"
|
|
|
|
echo "Updating documentation..."
|
|
# Run all scripts
|
|
echo "Starting joinApps.sh..."
|
|
./joinApps.sh
|
|
echo "Starting generateAppList..."
|
|
./generators/generateAppList.sh
|
|
echo "Starting generateDocList..."
|
|
./generators/generateDocList.sh
|
|
echo "Starting generateREADME..."
|
|
./generators/generateREADME.sh
|
|
echo "Starting generateToolsREADME..."
|
|
./generators/generateToolsREADME.sh
|
|
echo "Update finished"
|
|
|
|
# Update lastrun.sha256
|
|
sha256sum "$appinfo" > "$verificationFile"
|
|
find "$appsfolder" -type f -name '*.json' -exec sha256sum {} + >> "$verificationFile"
|
|
|
|
# Add files to stagging
|
|
git add -- "$README"
|
|
git add -- "$TOOLSREADME"
|
|
git add -- "$AppList"
|
|
git add -- "$DocList"
|
|
|
|
fi
|