Skip to content

imec-int/pi-planner-api

Repository files navigation

PI-Planner API

This repository contains the API endpoints for PI-Planner's route search engine. It is structured as a single build with gradle.

Getting started

  1. In order to get running, you need a secrets.properties file in the root directory of the project, containing the following properties:
    # secrets.properties
    github.actor=imecusername0@imec.be
    github.password=token_with_package_read_access
    
    Reason: We use our own package repository on github (e.g., kotlin validator, pi-planner) and need to authenticate to access it.
  2. 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. The prepare-commit-msg hook is in python and requires gitlint (can be installed through pip, apt or brew).

Other useful commands

./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.

Searching for routes

The API provides a single endpoint to search for routes. TODO

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published