Use new build system from Waterfall

This commit is contained in:
DoNotSpamPls 2018-11-11 11:47:01 +02:00 committed by Marc Baloup
parent 0281ce1223
commit 2ffb99b297
11 changed files with 58 additions and 16 deletions

View File

@ -8,7 +8,7 @@ Patches to Travertine are very simple, but center around the directory 'Traverti
Assuming you already have forked the repository: Assuming you already have forked the repository:
1. Pull the latest changes from the main repository 1. Pull the latest changes from the main repository
2. Type `git submodule update --recursive --init && ./applyPatches.sh` in git bash to apply the changes from upstream 2. Type `./travertine p` in git bash to apply the changes from upstream
3. cd into `Travertine-Proxy` for proxy changes 3. cd into `Travertine-Proxy` for proxy changes
This directory is not a git repository in the traditional sense: This directory is not a git repository in the traditional sense:
@ -24,7 +24,7 @@ Adding patches to Travertine is very simple:
1. Modify `Travertine-Proxy` with the appropriate changes 1. Modify `Travertine-Proxy` with the appropriate changes
2. Type `git add .` to add your changes 2. Type `git add .` to add your changes
3. Run `git commit` with the desired patch message 3. Run `git commit` with the desired patch message
4. Run `./rebuildPatches.sh` in the main directory to convert your commit into a new patch 4. Run `./travertine rb` in the main directory to convert your commit into a new patch
5. PR your patches back to this repository 5. PR your patches back to this repository
Your commit will be converted into a patch that you can then PR into Travertine Your commit will be converted into a patch that you can then PR into Travertine
@ -47,7 +47,7 @@ This method works by temporarily resetting HEAD to the desired commit to edit us
- **MAKE SURE TO ADD `--amend`** or else a new patch will be created. - **MAKE SURE TO ADD `--amend`** or else a new patch will be created.
- You can also modify the commit message here. - You can also modify the commit message here.
7. Type `git rebase --continue` to finish rebasing. 7. Type `git rebase --continue` to finish rebasing.
8. Type `./rebuildPatches.sh` in the main directory. 8. Type `./travertine rb` in the main directory.
- This will modify the appropriate patches based on your commits. - This will modify the appropriate patches based on your commits.
9. PR your modifications back to this project. 9. PR your modifications back to this project.
@ -58,8 +58,8 @@ If you are simply editing a more recent commit or your change is small, simply m
2. Make a temporary commit. You don't need to make a message for this. 2. Make a temporary commit. You don't need to make a message for this.
3. Type `git rebase -i upstream/upstream`, move (cut) your temporary commit and move it under the line of the patch you wish to modify. 3. Type `git rebase -i upstream/upstream`, move (cut) your temporary commit and move it under the line of the patch you wish to modify.
4. Change the `pick` with `f` (fixup) or `s` (squash) if you need to edit the commit message 4. Change the `pick` with `f` (fixup) or `s` (squash) if you need to edit the commit message
5. Type `./rebuildPatches.sh` in the main directory 5. Type `./travertine rb` in the main directory.
- This will modify the appropriate patches based on your commits - This will modify the appropriate patches based on your commits.
6. PR your modifications to github 6. PR your modifications to github

View File

@ -1,6 +1,6 @@
MIT License MIT License
Copyright (c) 2015-2016 Waterfall Team Copyright (c) 2015-2019 Waterfall Team
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@ -1,4 +1,5 @@
# Travertine <a href="https://ci.destroystokyo.com/job/Travertine/"><img src="https://ci.destroystokyo.com/job/Paper/badge/icon"/></a> Travertine [![Build Status](https://papermc.io/ci/job/Travertine/badge/icon)](https://papermc.io/ci/job/Travertine/)
=========
Travertine is Waterfall with additional protocols. Waterfall is a fork of the well-known [BungeeCord](https://github.com/SpigotMC/BungeeCord) server teleportation suite. Travertine is Waterfall with additional protocols. Waterfall is a fork of the well-known [BungeeCord](https://github.com/SpigotMC/BungeeCord) server teleportation suite.
@ -22,24 +23,24 @@ Travertine will track upstream Waterfall and merge changes as needed.
## How to (Server Admins) ## How to (Server Admins)
Download a copy of of Travertine.jar from our buildserver here: [Travertine](https://ci.destroystokyo.com/job/Travertine) Download a copy of Travertine.jar from our buildserver here: [Travertine](https://papermc.io/ci/job/Travertine/)
Travertine requires **java 8** or above. Travertine requires **Java 8** or above.
## How To (Compiling from source) ## How To (Compiling from source)
To compile Travertine, you need JDK8, git, bash, maven, and an internet connection. To compile Travertine, you need JDK8, git, bash, maven, and an internet connection.
Clone this repo, run `./build.sh` from *bash*, get jar from `Travertine-Proxy/bootstrap/target` Clone this repo, run `./travertine b` from *bash*, get jar from `Travertine-Proxy/bootstrap/target`
## Join us ## Join us
* Feel free to open a PR! We accept contributions. * Feel free to open a PR! We accept contributions.
* Join us on IRC (irc.esper.net #waterfall, [webchat](http://webchat.esper.net/?nick=&channels=waterfall)). * Join us on IRC (irc.spi.gt #paper, [webchat](http://irc.spi.gt/iris/?nick=&channels=paper)).
* Visit our forums on [Aquifer](https://aquifermc.org). * Visit our forums (https://papermc.io/forums).
Special Thanks To Special Thanks To
----------------- -----------------
![YourKit-Logo](https://yourkit.com/images/yklogo.png) ![YourKit-Logo](https://yourkit.com/images/yklogo.png)
[YourKit](https://yourkit.com/), makers of the outstanding Java profiler, supports open source projects of all kinds with their full-featured [Java](https://yourkit.com/features/) and [.NET](https://yourkit.com/dotnet/features/) application profilers. We thank them for granting Waterfall an OSS license so that we can make our software the best it can be. [YourKit](https://yourkit.com/), makers of the outstanding Java profiler, supports open source projects of all kinds with their full-featured [Java](https://yourkit.com/features/) and [.NET](https://yourkit.com/dotnet/features/) application profilers. We thank them for granting Travertine an OSS license so that we can make our software the best it can be.

View File

@ -1,3 +0,0 @@
#!/usr/bin/env bash
git submodule update --recursive --init && ./applyPatches.sh && pushd Travertine-Proxy && mvn clean package && popd

0
applyPatches.sh → scripts/applyPatches.sh Executable file → Normal file
View File

3
scripts/build.sh Normal file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
git submodule update --recursive --init && ./scripts/applyPatches.sh && pushd Travertine-Proxy && mvn clean package && popd

5
scripts/edit.sh Normal file
View File

@ -0,0 +1,5 @@
#!/usr/bin/env bash
pushd Travertine-Proxy
git rebase --interactive upstream/upstream
popd

1
mergeUpstream.sh → scripts/mergeUpstream.sh Executable file → Normal file
View File

@ -1,3 +1,4 @@
#!/usr/bin/env bash
PS1="$" PS1="$"
basedir=`pwd` basedir=`pwd`

0
rebuildPatches.sh → scripts/rebuildPatches.sh Executable file → Normal file
View File

0
wigglePatch.py → scripts/wigglePatch.py Executable file → Normal file
View File

35
travertine Normal file
View File

@ -0,0 +1,35 @@
#!/usr/bin/env bash
case "$1" in
"rb" | "rbp" | "rebuild")
scripts/rebuildPatches.sh
;;
"p" | "patch")
scripts/build.sh
;;
"m" | "up" | "merge")
scripts/mergeUpstream.sh
;;
"b" | "build")
scripts/build.sh --jar
;;
"e" | "edit")
scripts/edit.sh
;;
"w" | "wiggle")
scripts/wigglePatch.py
;;
*)
echo "Travertine build tool command. This provides a variety of commands to control the Travertine"
echo "build. View below for details of the available commands."
echo ""
echo "Commands:"
echo " * rb, rbp, rebuild | Rebuilds the patches"
echo " * p, patch | Applies all the patches to BungeeCord"
echo " * m, up, merge | Utility to aid in merging upstream"
echo " * b, build | Builds the project"
echo " | The bootstrap artifact can be found in Travertine-Proxy/bootstrap/target/"
echo " * e, edit | Runs git rebase -i for Waterfall, allowing patches to be easily modified"
echo " * w, wiggle | Helps to apply patches that fail to using default Git."
;;
esac