Check out and build
Checking out the code
Requirements: git, GitHub Account
Create a remote fork of https://github.com/Taskana/taskana
Fork A Repo (Github Help)
Configure git to automatically adjust line endings with each commit
(optional, but recommended)
git config --global core.autocrlf input
Create a local clone
# using https git clone https://github.com/<yourname>/taskana.git # using ssh git clone git@github.com:<yourname>/taskana.git
Configure git to automatically validate your commit messages (more information: Contribution Guide)
cd taskana git config core.hooksPath qa/hooks
Optional: Create a symlink to
.git/hooks
in order to support external toolsrm -rf .git/hooks ln -s $PWD/qa/hooks .git/hooks
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.