mirror of https://github.com/kami-blue/client
64 lines
2.2 KiB
Bash
Executable File
64 lines
2.2 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Created by l1ving on 17/02/20
|
|
#
|
|
# ONLY USED IN AUTOMATED BUILDS
|
|
#
|
|
# Usage: "./runAutomatedRelease.sh <major or empty>"
|
|
|
|
_d="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/.."
|
|
source "$_d/scripts/utils.sh"
|
|
source ~/.profile
|
|
|
|
check_var "KAMI_DIR" "$KAMI_DIR" || exit $?
|
|
check_var "KAMI_MIRROR_DIR" "$KAMI_MIRROR_DIR" || exit $?
|
|
check_var "KAMI_REPO_MAJOR" "$KAMI_REPO_MAJOR" || exit $?
|
|
check_var "KAMI_REPO_NIGHTLY" "$KAMI_REPO_NIGHTLY" || exit $?
|
|
check_var "KAMI_OWNER" "$KAMI_OWNER" || exit $?
|
|
check_var "KAMI_WEBHOOK" "$KAMI_WEBHOOK" || exit $?
|
|
|
|
# Safely update repository
|
|
cd "$KAMI_DIR" || exit $?
|
|
git reset --hard HEAD
|
|
check_git || exit $?
|
|
OLD_COMMIT=$(git log --pretty=%h -1)
|
|
|
|
git reset --hard origin/master || exit $?
|
|
git pull || exit $?
|
|
git submodule update --init --recursive || exit $?
|
|
|
|
# Update mirror
|
|
cd "$KAMI_MIRROR_DIR" || exit $?
|
|
git reset --hard master || exit $?
|
|
git pull "$KAMI_DIR" || exit $?
|
|
git submodule update --init --recursive || exit $?
|
|
git push --force origin master || exit $?
|
|
|
|
cd "$KAMI_DIR" || exit $?
|
|
|
|
# Set some variables, run scripts
|
|
HEAD=$(git log --pretty=%h -1)
|
|
CHANGELOG="$("$_d"/scripts/changelog.sh "$OLD_COMMIT")" || exit $?
|
|
VERSION="$("$_d"/scripts/version.sh "$1")" || exit $?
|
|
VERSION_MAJOR="$("$_d"/scripts/version.sh "major")" || exit $?
|
|
"$_d"/scripts/bumpVersion.sh "$1" || exit $?
|
|
JAR_NAME="$("$_d"/scripts/buildJarSafe.sh)" || exit $?
|
|
|
|
"$_d"/scripts/uploadRelease.sh "$1" "$HEAD" "$VERSION" "$JAR_NAME" "$CHANGELOG" || exit $?
|
|
"$_d"/scripts/bumpWebsite.sh "$JAR_NAME" "$VERSION" "$VERSION_MAJOR" || exit $?
|
|
|
|
REPO="$KAMI_REPO_NIGHTLY"
|
|
[ "$1" == "major" ] && REPO="$KAMI_REPO_MAJOR"
|
|
|
|
# Send ping
|
|
if [ -n "$KAMI_UPDATES_ROLE_ID" ]; then
|
|
curl -X POST \
|
|
-H "Content-Type: application/json" \
|
|
-d '{"username": "", "content": "<@&'"$KAMI_UPDATES_ROLE_ID"'>"}' \
|
|
"$KAMI_WEBHOOK"
|
|
fi
|
|
|
|
# Send changelog embed
|
|
curl -H "Content-Type: application/json" -X POST \
|
|
-d '{"embeds": [{"title": "Download v'"$VERSION"'","color": 10195199,"description": "[**DOWNLOAD**](https://github.com/'"$KAMI_OWNER"'/'"$REPO"'/releases/download/'"$VERSION"'/'"$JAR_NAME"')\n\n**Changelog:** \n'"$CHANGELOG"'\n\nDiff: ['"$OLD_COMMIT"'...'"$HEAD"'](https://github.com/'"$KAMI_OWNER"'/'"$REPO"'/compare/'"$OLD_COMMIT"'...'"$HEAD"') "}]}' "$KAMI_WEBHOOK"
|