overleaf/services/git-bridge
2016-09-06 09:11:32 +01:00
..
.idea Use better error message for problems building repo (#1576) 2016-08-20 12:15:34 +01:00
src Add and test InMemorySwapStore 2016-09-06 09:11:32 +01:00
.gitignore Add missing newline at end of file 2016-06-02 12:59:23 +01:00
LICENSE Initial commit 2014-11-01 16:02:22 +00:00
pom.xml Add implementations, implement S3SwapStore (with only tars), FSRepoStore, Tar and File utils, add tests 2016-09-06 09:11:32 +01:00
README.md Remove installation scripts 2016-06-02 10:39:21 +01:00
writelatex-git-bridge.iml Add implementations, implement S3SwapStore (with only tars), FSRepoStore, Tar and File utils, add tests 2016-09-06 09:11:32 +01:00

writelatex-git-bridge

Required

  • maven (for building)
  • jdk-8 (for compiling and running)

Installation

Install dependencies:

sudo apt-get update
sudo apt-get install -y maven
sudo apt-get install -y openjdk-8-jdk
sudo update-alternatives --set java /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
sudo update-alternatives --set javac /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/javac

Create a config file according to the format below.

Run mvn package to build, test, and package it into a jar at target/writelatex-git-bridge-1.0-SNAPSHOT-jar-with-dependencies.jar.

Use java -jar <path_to_jar> <path_to_config_file> to run the server.

Runtime Configuration

The configuration file is in .json format.

{
    "port" (int): the port number,
    "rootGitDirectory" (string): the directory in which to store git repos and the db/atts,
    "apiBaseUrl" (string): base url for the snapshot api,
    "username" (string, optional): username for http basic auth,
    "password" (string, optional): password for http basic auth,
    "postbackBaseUrl" (string): the postback url,
    "serviceName" (string): current name of writeLaTeX in case it ever changes
    "oauth2" (object): { /* null or missing if oauth2 shouldn't be used */
        "oauth2ClientID" (string): oauth2 client ID
        "oauth2ClientSecret" (string): oauth2 client secret
        "oauth2Server" (string): oauth2 server, with protocol and without trailing slash
    }
}

You have to restart the server for configuration changes to take effect.