Check out and build

Checking out the code

Requirements: git, GitHub Account


  1. Create a remote fork of https://github.com/Taskana/taskana

    Fork A Repo (Github Help)

  2. Configure git to automatically adjust line endings with each commit (optional, but recommended)

    git config --global core.autocrlf input
  3. Create a local clone

    # using https
    git clone https://github.com/<yourname>/taskana.git
    # using ssh
    git clone git@github.com:<yourname>/taskana.git
  4. Configure git to automatically validate your commit messages (more information: Contribution Guide)

    cd taskana
    git config core.hooksPath qa/hooks
    1. Optional: Create a symlink to .git/hooks in order to support external tools

      rm -rf .git/hooks
      ln -s $PWD/qa/hooks .git/hooks
  5. Create a remote for the upstream project so that it is later easier to retrieve changes from the main repository.

    # using https
    git remote add upstream https://github.com/Taskana/taskana.git
    # using ssh
    git remote add upstream git@github.com:Taskana/taskana.git

Build the application(s)

Requirements: java, node, yarn

Version requirements: Java 11, Node 16.14.2

We use maven wrapper. For windows please use mvnw.cmd instead of the bash script

Full build

./mvnw clean install

UI (admin / monitor / workspace)

cd web
yarn

When a taskana version is changed please do not forget to build taskana-parent, taskana-rest-parent and taskana-lib-parent
Options:
A) full build

B) See codeblock below

./mvnw install -pl :taskana-parent,:taskana-common-parent,:taskana-rest-parent,:taskana-history-parent
or
./mvnw install -pl :<module name> -am


Start the application(s)

Requirements:  java, node

Rest Api

First of all change devMode property to true and enableCsrf property to false in taskana-rest-spring-example-boot application.properties file, then follow the next steps.

./mvnw spring-boot:run -pl :taskana-rest-spring-example-boot 

Admin, Monitor and Workplace UI

Make sure to run the following command in /web/ before starting the application:

yarn install


cd web
yarn start

Then you can open a browser pointing to http://localhost:4200/ to access to web application.


Architecture example after running previous steps.