Skip to content

Latest commit

 

History

History
159 lines (108 loc) · 5.05 KB

README.rst

File metadata and controls

159 lines (108 loc) · 5.05 KB

TOMATO - The Offer MAnager Tool

Tomato assists in managing and creating offers

Github Workflow Build Maven Package Status Github Workflow Tests Status CodeQL Release status Project Licence Written in Java Written in Groovy

How to run

Build the project with Maven and Java 8

mvn clean package

Deploy the created portlet in a Liferay instance. Make sure that Chromium is installed on the server, it is required for the download of the offer. (see How to use)

Local testing

Run the project with

mvn clean jetty:run -Denvironment=testing

And open the application through localhost:8080. The system property -Denvironment=testing will enable to application to run in test mode and does not require a successful user role determination to access all the features.

The WAR file will be created in the /target folder:

How to use

Authorization and roles

The offer manager app currently distinguishes between two roles: Role.PROJECT_MANAGER and Role.OFFER_ADMIN. The admin role provides access to features such as the service product maintenance interface, and only dedicated users with the admin role will be able to access it.

The current production implementation of the RoleService interface is used for deployment in an Liferay 6.2 GA6 environment and maps the Liferay site-roles "Project Manager" and "Offer Administration" to the internal app role representation.

If an authenticated user has none of these roles, she will not be able to execute the application.

Configuration

Environment Description Default Value
datasource.url Connection to datasource https://openbis.domain.de
datasource.api.url Connection to API datasource https://openbis.domain.de/api/path
datasource.user The user name for the datasource myuser
datasource.password The password for the datasource mypassword
mysql.host Host address for MySQL database 123.4.56.789
mysql.pass Password for MySQL database mypassword
mysql.user MySQL user mysqluser
mysql.db MySQL database my_sql_database_name
mysql.port Port to MySQL database 3306
portal.user Username for QBiC portal qbcjb02

System setup

Make sure to have chromium installed on your laptop. In case you use a Mac, can do so via homebrew

brew install --cask chromium

If you want to build the chromium browser from source please see the instructions on the chromium website For some Linux system the application is also provided by the name chromium-browser

sudo apt-get install chromium-browser

After successful installation please provide the offer manager with your chromium installation by setting

export CHROMIUM_EXECUTABLE=<your/path/to/chromium>

In order to enable the offer manager app to convert an offer as PDF, you need to define a environment variable in the system's environment accessible by the application.

The app will look for an environment variable CHROMIUM_EXECUTABLE, so make sure to have set it.

License

This work is licensed under the MIT license.

Note: This work uses the Vaadin Framework, which is licensed under Apache 2.0.