Created
December 19, 2016 22:20
-
-
Save NikkyAI/969395970bc377c4c8723d539cbd6855 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
#!/bin/bash | |
DIR=$(cd -P -- "$(dirname -- "$0")" && pwd -P) | |
launcher=Launcher | |
upload_folder=$DIR/.upload/.launcher/ | |
tools=. | |
URLBASE="https://nikky.moe/mc/.launcher/" | |
echo $DIR | |
name=launcher | |
pack_name=launcher | |
json_name=latest | |
_fancy=-dark | |
cd $DIR | |
mkdir $upload_folder | |
function copy () { | |
FOLDER="$launcher/$1/build/libs/" | |
ARG2=${2:-$1.jar} | |
ARG3=${3:-$upload_folder} | |
DEST="$ARG3/$ARG2" | |
FILE=$( find $FOLDER | grep all | sort -n | tail -1 ) | |
VERSION=$( echo $FILE | sed 's/[^0-9\.]*\([0-9\.]*-[a-Z]*\)-all.jar/\1/' ) | |
echo "$ARG2 version $VERSION" | |
cp -v $FILE $DEST | |
} | |
function json () { | |
VERSION=${1:-VERSION} | |
URL=$URLBASE/${2:-no_file_provided} | |
JSONFILE=$upload_folder/${3:-"$(basename $URL ".jar.pack").json"} | |
json="{\n \"version\": \"$VERSION\",\n \"url\": \"$URL\"\n}" | |
echo -e $json > $JSONFILE | |
echo -e "$JSONFILE = $json" | |
} | |
function pack () { | |
FOLDER="$launcher/$1/build/libs/" | |
echo $FOLDER | |
ARG2=${2:-$1.jar} | |
PACK_FILE="$ARG2.pack" | |
DEST="$upload_folder/$PACK_FILE" | |
FILE=$( find $FOLDER | grep all | sort -n | tail -1 ) | |
VERSION=$( echo $FILE | sed 's/[^0-9\.]*\([0-9\.]*-[a-Z]*\)-all.jar/\1/' ) | |
json_string=$(json $VERSION $PACK_FILE $3) | |
echo $json_string | |
echo "$2 version $VERSION" | |
echo "packing $FILE -> $DEST" | |
pack200 --no-gzip $DEST $FILE | |
} | |
cd $launcher | |
git pull | |
#clean build | |
$launcher/gradlew -p $launcher/ clean build | |
echo "copy files from $launcher into $upload_folder" | |
copy launcher-bootstrap $name.jar | |
copy launcher-bootstrap-fancy $name$_fancy.jar | |
echo "copy creator-tools and launcher builder from $launcher into $tools" | |
copy creator-tools "" $tools | |
copy launcher-builder "" $tools | |
echo "package launcher jars from $launcher into $upload_folder" | |
pack launcher "$pack_name.jar" $json_name.json | |
pack launcher-fancy "$pack_name-dark.jar" $json_name$_fancy.json | |
cd $DIR | |
. upload.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
DIR=$(cd -P -- "$(dirname -- "$0")" && pwd -P) | |
upload_folder=$DIR/.upload/modpacks | |
modpacks=( magical_mayhem ftb_unstable lite_pack ) | |
cd $DIR | |
mkdir $upload_folder | |
for modpack in "${modpacks[@]}"; do | |
version=${modpack}_`date +%Y.%m.%d.%H%M%S` | |
java -jar $DIR/launcher-builder-4.3-SNAPSHOT-all.jar \ | |
--version $version \ | |
--input $DIR/modpacks/$modpack \ | |
--output $upload_folder \ | |
--manifest-dest $upload_folder/$modpack.json | |
mkdir $upload_folder/$modpack | |
$DIR/filetree.py \ | |
--out $upload_folder/$modpack/index.html \ | |
--pack $modpack | |
done | |
#cd $DIR | |
echo "\`\`\`" > $upload_folder/_h5ai.header.md | |
tree modpacks \ | |
-P "*.jar|*.cfg|*.yml" \ | |
-I _upload loaders \ | |
>> $upload_folder/_h5ai.header.md | |
echo "\`\`\`" >> $upload_folder/_h5ai.header.md | |
sh $DIR/upload.sh |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
server='pp-treedi_l2jlj@mc.nikky.moe' | |
#remote_path='public/mods' | |
modpack=lite_pack | |
temp_folder=/tmp/server_upload/$modpack | |
cd "$(dirname "$0")" | |
rm -R $temp_folder/mods | |
java -cp launcher-builder-4.3-SNAPSHOT-all.jar com.skcraft.launcher.builder.ServerCopyExport \ | |
--source modpacks/$modpack/src \ | |
--dest $temp_folder \ | |
&& \ | |
curl -k -X GET \ | |
-H "X-Access-Server: XXXXX-XXXX-XXXX-XXXXX-XXXXXXXX" \ | |
-H "X-Access-Token: XXXXX-XXXX-XXXX-XXXXX-XXXXXXXX" \ | |
"https://mc.nikky.moe:5656/server/power/off" \ | |
&& \ | |
rsync -avz $temp_folder/mods/ -e "ssh -p 9029" $server:public/mods \ | |
--exclude '*.url.txt' \ | |
--exclude '*.info.json' \ | |
--update \ | |
--delete \ | |
--info=progress2 | |
curl -k -X GET \ | |
-H "X-Access-Server: XXXXX-XXXX-XXXX-XXXXX-XXXXXXXX" \ | |
-H "X-Access-Token: XXXXX-XXXX-XXXX-XXXXX-XXXXXXXX" \ | |
"https://mc.nikky.moe:5656/server/power/on" | |
rm -R $temp_folder | |
rm -R /tmp/server_upload/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/python3 | |
# -*- coding: utf-8 -*- | |
import argparse | |
import subprocess | |
from bs4 import * | |
import re | |
from urllib.parse import unquote | |
import os | |
from subprocess import check_output | |
parser = argparse.ArgumentParser(description="Download mods from curseforge and other sources") | |
parser.add_argument("--dir", help="dir") | |
parser.add_argument("--out", help="output file") | |
parser.add_argument("--pack", help="pack name") | |
args, unknown = parser.parse_known_args() | |
print(check_output(['pwd'])) | |
html = check_output(['tree', 'modpacks/{args.pack}'.format(**locals()), | |
'-T', 'Directory Listing', | |
'-I', 'loaders|*.url.txt|*.info.json', | |
'--sort=name', | |
'--noreport', '--dirsfirst', | |
'-H', 'https://nikky.moe/mc/modpacks/{args.pack}'.format(**locals()) | |
]) | |
pattern = r'https://nikky.moe/mc/modpacks/{args.pack}/src/(?P<mod>.+)'.format(**locals()) | |
soup = BeautifulSoup(html) | |
for anchor in soup.find_all('a', href=True): | |
print(anchor) | |
url = anchor['href'] | |
text = anchor.contents[0] | |
if url.endswith('_CLIENT/'): | |
anchor.replaceWith('CLIENT') | |
elif url.endswith('_SERVER/'): | |
anchor.replaceWith('SERVER') | |
elif url.endswith('/'): | |
anchor.replaceWith(text) | |
else: | |
match = re.match(pattern, url) | |
if match: | |
mod = match.group('mod') | |
path = unquote('modpacks/{}/src/{}.url.txt'.format(args.pack, mod)) | |
if os.path.isfile(path): | |
url_txt = open(path, 'r').read() | |
anchor['href'] = url_txt | |
else: | |
anchor.replaceWith(text) | |
else: | |
anchor.replaceWith(text) | |
for div in soup.find_all("p", {'class':'VERSION'}): | |
div.decompose() | |
html = str(soup) | |
print(html) | |
with open(args.out, "w") as file: | |
file.write(html) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
upload_folder=.upload/ | |
static_folder=static/ | |
cd $(cd -P -- "$(dirname -- "$0")" && pwd -P) | |
rsync -av --update $static_folder $upload_folder | |
find $upload_folder -type d -empty -delete | |
rsync -av --update --delete --info=progress2 $upload_folder ~/websites/nikky.moe/mc/ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment