2016-04-01 20:55:54 -07:00
|
|
|
#!/usr/bin/env bash
|
2016-01-25 23:04:43 -07:00
|
|
|
|
2016-04-03 00:23:19 -07:00
|
|
|
(
|
|
|
|
set -e
|
2016-01-25 23:04:43 -07:00
|
|
|
PS1="$"
|
2016-04-03 01:35:51 -07:00
|
|
|
basedir="$(cd "$1" && pwd -P)"
|
2016-04-01 20:55:54 -07:00
|
|
|
workdir="$basedir/work"
|
2018-05-24 11:41:50 -07:00
|
|
|
gitcmd="git -c commit.gpgsign=false"
|
2016-01-25 23:04:43 -07:00
|
|
|
|
2019-04-02 20:20:10 -07:00
|
|
|
updated="0"
|
|
|
|
function getRef {
|
|
|
|
git ls-tree $1 $2 | cut -d' ' -f3 | cut -f1
|
|
|
|
}
|
2016-01-25 23:04:43 -07:00
|
|
|
function update {
|
2016-04-01 20:55:54 -07:00
|
|
|
cd "$workdir/$1"
|
2019-04-02 18:46:32 -07:00
|
|
|
$gitcmd fetch && $gitcmd clean -fd && $gitcmd reset --hard origin/master
|
2019-04-02 20:20:10 -07:00
|
|
|
refRemote=$(git rev-parse HEAD)
|
2016-01-25 23:04:43 -07:00
|
|
|
cd ../
|
2021-04-05 04:14:54 -07:00
|
|
|
$gitcmd add --force $1
|
2019-04-02 20:20:10 -07:00
|
|
|
refHEAD=$(getRef HEAD "$workdir/$1")
|
|
|
|
echo "$1 $refHEAD - $refRemote"
|
|
|
|
if [ "$refHEAD" != "$refRemote" ]; then
|
|
|
|
export updated="1"
|
|
|
|
fi
|
2016-01-25 23:04:43 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
update Bukkit
|
|
|
|
update CraftBukkit
|
2016-03-21 10:32:05 -07:00
|
|
|
update Spigot
|
2016-08-19 14:00:59 -07:00
|
|
|
|
2017-05-20 21:41:39 -07:00
|
|
|
if [[ "$2" = "all" || "$2" = "a" ]] ; then
|
2016-08-19 14:00:59 -07:00
|
|
|
update BuildData
|
|
|
|
fi
|
2019-04-02 20:20:10 -07:00
|
|
|
if [ "$updated" == "1" ]; then
|
|
|
|
echo "Rebuilding patches without filtering to improve apply ability"
|
|
|
|
cd "$basedir"
|
2021-06-15 01:38:41 -07:00
|
|
|
./gradlew cleanCache || exit 1 # todo: Figure out why this is necessary
|
2021-06-14 23:42:57 -07:00
|
|
|
./gradlew applyPatches -Dpaperweight.debug=true || exit 1
|
|
|
|
./gradlew rebuildPatches || exit 1
|
2019-04-02 20:20:10 -07:00
|
|
|
fi
|
2016-04-03 00:23:19 -07:00
|
|
|
)
|