RapidTools: Difference between revisions

From Spring
Jump to navigationJump to search
Gajop (talk | contribs)
No edit summary
Gajop (talk | contribs)
No edit summary
 
Line 12: Line 12:
=Compile=
=Compile=
to compile it on ubuntu:
to compile it on ubuntu:
<code><pre>
<pre>
git clone https://github.com/spring/pr-downloader.git --recursive
git clone https://github.com/spring/pr-downloader.git --recursive
sudo apt-get install liblua5.1-0-dev libzip-dev zlib1g-dev cmake libssl-dev
sudo apt-get install liblua5.1-0-dev libzip-dev zlib1g-dev cmake libssl-dev
cmake .
cmake .
make
make
</pre></code>
</pre>


Additional setup instructions: https://springrts.com/wiki/Admin:Rapid
Additional setup instructions: https://springrts.com/wiki/Admin:Rapid
Line 27: Line 27:


Usage:
Usage:
<code><pre>
<pre>
AddZip <Store Path> <Zip Path> [Tag1] ...
AddZip <Store Path> <Zip Path> [Tag1] ...
</pre></code>
</pre>


==BuildGit==
==BuildGit==
Line 36: Line 36:


Usage:
Usage:
<code><pre>
<pre>
BuildGit <Git Path> <Mod Root> <Modinfo> <Store Path> <Git Hash> <Prefix>
BuildGit <Git Path> <Mod Root> <Modinfo> <Store Path> <Git Hash> <Prefix>
</pre></code>
</pre>


==Streamer==
==Streamer==
Line 51: Line 51:
streamer.cgi then returns all files in a single stream in the same order than in the sdp. it has to be in the root of a [[rapid]] file structure.
streamer.cgi then returns all files in a single stream in the same order than in the sdp. it has to be in the root of a [[rapid]] file structure.


<code><pre>
<pre>
Usage: ./Streamer
Usage: ./Streamer
Expects environment variables DOCUMENT_ROOT and QUERY_STRING
Expects environment variables DOCUMENT_ROOT and QUERY_STRING
Expects a gziped bitarray as stdin
Expects a gziped bitarray as stdin
</pre></code>
</pre>


for details see the source-code:
for details see the source-code:

Latest revision as of 01:58, 19 November 2018

RapidTools are for managing a rapid game/archive repository.

Made by det

Source

https://github.com/spring/pr-downloader

Bugs

https://github.com/spring/pr-downloader/issues


Compile

to compile it on ubuntu:

git clone https://github.com/spring/pr-downloader.git --recursive
sudo apt-get install liblua5.1-0-dev libzip-dev zlib1g-dev cmake libssl-dev
cmake .
make

Additional setup instructions: https://springrts.com/wiki/Admin:Rapid

Tool description

AddZip

takes a .zip and adds it to the repo with user specified tags:

Usage:

AddZip <Store Path> <Zip Path> [Tag1] ...

BuildGit

adds a git path to the repo and generates the tags automatically from the commit message, it also optimizes for incremental updates

Usage:

BuildGit <Git Path> <Mod Root> <Modinfo> <Store Path> <Git Hash> <Prefix>

Streamer

is a cgi program to serve some specific files of a .sdp. This is the fastest and official way to fetch a rapid archive.

at client side you have to http POST: http://packages.springrts.com/streamer.cgi?<hash of sdp>

post data is binary 0/1 if a file of the specified sdp is needed or not.

streamer.cgi then returns all files in a single stream in the same order than in the sdp. it has to be in the root of a rapid file structure.

Usage: ./Streamer
Expects environment variables DOCUMENT_ROOT and QUERY_STRING
Expects a gziped bitarray as stdin

for details see the source-code: https://github.com/spring/pr-downloader/blob/master/src/Streamer.cpp#L94

MakeZip

can create a zip from a .sdp

MakeZip ~/.spring ba:stable ba.zip

Notes

If you get this error:

Error on unknown tag lookup

MakeZip doesn't find the tag specified in (for example) ~/.spring/versions.gz. To fix, copy the required versions.gz:

cp ~/.spring/rapid/packages.springrts.com/versions.gz ~/.spring/