Skip to content

Latest commit

 

History

History
100 lines (70 loc) · 2.59 KB

developer_guide.md

File metadata and controls

100 lines (70 loc) · 2.59 KB

Developer Guide

Clone and configure

mkdir time-recording-data
git clone https://github.com/itsallcode/white-rabbit.git
cd white-rabbit
# Configure
echo "data = $HOME/time-recording-data/" > $HOME/.whiterabbit.properties

Using Build Scripts

Build and launch

# Build WhiteRabbit and install plugins to $HOME/.whiterabbit/plugins/
./gradlew build installPlugins
# To skip unit and ui-tests, run
./gradlew build installPlugins -x test -x uiTest
# Run
java -jar jfxui/build/libs/white-rabbit-fx-<version>[-SNAPSHOT].jar

# Build and run, loading plugins from $HOME/.whiterabbit/plugins/
./gradlew run

# Build and run including plugins. Useful when developing plugins.
# Make sure to remove unwanted plugins from $HOME/.whiterabbit/plugins/
./gradlew runWithPlugins

Running Tests

Run all tests:

./gradlew check

Run only UI-Tests:

# Headless (default)
./gradlew check
# Not Headless (don't move mouse while running!)
./gradlew check -PuiTestsHeadless=false

Run a single test:

./gradlew uiTest -i --tests AboutDialogUiTest

Check that dependencies are up-to-date

./gradlew dependencyUpdates

Build Native Packages

Precondition for Windows: Install the WiX Toolset and add it to the PATH.

./gradlew jpackage --info -PreleaseVersion=x.y.z

Deployment

This will build WhiteRabbit and publish the plugin api to Maven Central.

Initial setup

Add the following to your ~/.gradle/gradle.properties:

```properties
ossrhUsername=<your maven central username>
ossrhPassword=<your maven central passwort>

signing.keyId=<gpg key id (last 8 chars)>
signing.password=<gpg key password>
signing.secretKeyRingFile=<path to secret keyring file>
```

Build and deploy

  1. Make sure the Changelog is updated

  2. Run the following command:

    ./gradlew clean build publish closeAndReleaseRepository --info -PreleaseVersion=<version>

    The release will be written to jfxui/build/libs/white-rabbit-fx-<version>.jar. Snapshots will be available at oss.sonatype.org.

  3. Create a new release in GitHub and attach the built jar.

  4. Close the milestone in GitHub.

  5. After some time the release will be available at Maven Central.