This repository contains the API endpoints for PI-Planner's route search engine. It is structured as a single build with gradle.
- In order to get running, you need a
secrets.properties
file in the root directory of the project, containing the following properties:Reason: We use our own package repository on github (e.g., kotlin validator, pi-planner) and need to authenticate to access it.# secrets.properties github.actor=imecusername0@imec.be github.password=token_with_package_read_access
- Enabling the git hooks: we format commit messages and lint upon committing.
The git hooks are enabled by either running./gradlew installGitHooks
or by running./gradlew build
. This is a one-time setup that checks if the hooks folder is set to.github/hooks
and if not sets it to that value. Theprepare-commit-msg
hook is in python and requires gitlint (can be installed through pip, apt or brew).
./gradlew build
./gradlew run # run the application
./gradlew ktlintCheck # runs linter
./gradlew ktlintFormat # runs lint fixer
./gradlew jibDockerBuild # builds docker image
# you can also use ./gradlew jibDockerBuild -Pversion=x.x.x to set the version of the image (this is normally done by the CI/CD)
We should not push images manually, but rather use the CI/CD pipeline to do so.
The API provides a single endpoint to search for routes. TODO