A first look at v8 from sources

Hello,

I’ve built v8.0.3 from sources in order to make some QA assessment:

I’ve used a v11 JDK as seems required.
I’ve UNinstalled gradle.
I’ve set up a PostgreSQL server (v16), added a user and an owned database.

% git clone --recurse-submodules git@github.com:axelor/open-suite-webapp.git
% git checkout v8.0.3
% cat modules/axelor-open-suite/version.txt
8.0.3

I’ve run the build with:
./gradlew clean build

The included gradle wrapper downloaded and used gradle v7.5.
The build ended with:
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
BUILD SUCCESSFUL in 7m

Should gradle be upgraded ?

I got a 258M axelor-erp-8.0.3.war

What is src/main/resources/META-INF/persistence.xml ? What is the hsqldb referenced in it ?

Once the build finished I’ve tuned a custom axelor-config.properties (my pg database name, database user name, logging level).

I’ve run inplace with:
./gradlew --no-daemon -Daxelor.config=/tmp/custom-ax-conf.properties run

It did not work:
com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
org.postgresql.util.PSQLException: FATAL: role « axelor » does not exist

I renamed my db user to « axelor » and rerun.
It did not work:
com.zaxxer.hikari.pool.HikariPool : HikariPool-1 - Exception during pool initialization.
org.postgresql.util.PSQLException: FATAL: database « axelor-open-suite » does not exist

I renamed my db to « axelor-open-suite » and rerun.

This time it worked and I’ve logged in as admin / admin.
I can then (un)install each app in the app management. And use them.
Congrats to Axelor for the v8 and all its potential.

Where is v8 doc ? with the specific requirements ? the build procedure ? the deploy one ?

The « axelor » role and the « axelor-open-suite » database name seems hardcoded somewhere ?
Can v8 be run with arbitrary role name and database name ?

The settings have commented out lines about Oracle, MySQL, SQLite…
Which databases engines does v8 officially support ?
Which migrations are supported ? for example: MariaDB dev, Oracle prod.

BTW what is the gradlew procedure to package the build (preferably without Docker) to run it in an external (preprod, cloud…) application server ?