Add update delta checking

gf-arm64
ShaneTheAwesome 4 years ago
parent e346d57793
commit 4bc723dca4

@ -55,6 +55,7 @@ pre_update_actions() {
post_update_actions() {
unzipmaps;
updatedelta;
return 0;
}
@ -73,3 +74,34 @@ unzipmaps() {
rm -rf "$resdldir/$mapsfile.zip";
}
updatedelta() {
echo " ";
echo " - Checking resdl delta between updates...";
newlog=""
oldlogs=""
for log in $(ls -t $reldir/update-*.log); do
[ "$newlog" ] && oldlogs="$oldlogs $(basename "$log")" || newlog="$(basename "$log")";
done;
[ "$oldlogs" ] || { echo " -- No old logs to compare"; return 0; }
for entry in $(cat "$reldir/$newlog" | grep -Po "FILE: [^,]*" | cut -d" " -f2); do
line="$(grep "FILE: $entry," "$reldir/$newlog")";
file="$entry";
url="$(echo $line | grep -Po "URL: [^,]*" | cut -d" " -f2)";
oldurl="";
for log in $oldlogs; do
oldurl="$(grep "FILE: $file," "$reldir/$log" | grep -Po "URL: [^,]*" | cut -d" " -f2)";
[ "$oldurl" ] && break;
done;
[ "$oldurl" ] || oldurl="None";
/usr/bin/[ "$url" == "$oldurl" ] && continue;
echo " -- Updated file: $file"
echo " ++ Old URL: $oldurl"
echo " ++ New URL: $url"
echo " ++ Old name: $(basename $oldurl)"
echo " ++ New name: $(basename $url)"
done;
}

@ -5,9 +5,10 @@ workdir="$(pwd)";
cd "$workdir";
confdir="$workdir/conf";
resdldir="$workdir/resdl";
reldir="$workdir/releases";
tmpdir="$workdir/tmp";
updatetime="$(date -u +%Y%m%d%H%M%S)";
updatelog="$workdir/releases/update-$updatetime.log";
updatelog="$reldir/update-$updatetime.log";
echo " ";
echo "-- Minimal MicroG Update Script --";
@ -37,7 +38,7 @@ mkdir -p "$tmpdir" "$tmpdir/repos" "$(dirname "$updatelog")";
[ -f "$confdir/resdl-download.txt" ] || { echo " "; echo "F: No resdl-download.txt found"; return 1; }
eval "$(cat "$confdir/resdl-download.txt")" || { echo "FATAL: resdl-download.txt cannot be executed"; return 1; };
if [ $@ ]; then
if [ "$*" ]; then
echo " ";
echo " - Building update list...";
stuff_download_new="";

Loading…
Cancel
Save