[CI-SKIP] Add script to commit upstream changelogs

Paper team can do paper upcommit when manual upstream updates are needed
this will generate a changelog of everything that has changed between then and now.
This commit is contained in:
Aikar 2018-08-05 21:31:40 -04:00
parent 02462ee43c
commit 6ed32b2c2d
2 changed files with 45 additions and 1 deletions

8
paper
View file

@ -82,6 +82,12 @@ case "$1" in
scripts/upstreamMerge.sh "$basedir" "$2"
)
;;
"cu" | "commitup" | "commitupstream" | "upcommit" | "upstreamcommit")
(
cd "$basedir"
scripts/upstreamCommit.sh "$@"
)
;;
"r" | "root")
cd "$basedir"
;;
@ -198,4 +204,4 @@ if [ "$failed" == "1" ]; then
else
unset failed
true
fi
fi

38
scripts/upstreamCommit.sh Executable file
View file

@ -0,0 +1,38 @@
#!/usr/bin/env bash
(
set -e
PS1="$"
function changelog() {
base=$(git ls-tree HEAD $1 | cut -d' ' -f3 | cut -f1)
cd $1 && git log --oneline ${base}...HEAD
}
bukkit=$(changelog work/Bukkit)
cb=$(changelog work/CraftBukkit)
spigot=$(changelog work/Spigot)
updated=""
logsuffix=""
if [ ! -z "$bukkit" ]; then
logsuffix="$logsuffix\n\nBukkit Changes:\n$bukkit"
updated="Bukkit"
fi
if [ ! -z "$cb" ]; then
logsuffix="$logsuffix\n\nCraftBukkit Changes:\n$cb"
if [ -z "$updated" ]; then updated="CraftBukkit"; else updated="$updated/CraftBukkit"; fi
fi
if [ ! -z "$spigot" ]; then
logsuffix="$logsuffix\n\nSpigot Changes:\n$spigot"
if [ -z "$updated" ]; then updated="Spigot"; else updated="$updated/Spigot"; fi
fi
disclaimer="Upstream has released updates that appears to apply and compile correctly.\nThis update has not been tested by PaperMC and as with ANY update, please do your own testing"
if [ ! -z "$1" ]; then
disclaimer="$@"
fi
log="${UP_LOG_PREFIX}Updated Upstream ($updated)\n\n${disclaimer}${logsuffix}"
echo -e "$log" | git commit -F -
) || exit 1