Build with Command Line Interface

(All this information is based on what the CI does)

ℹ️
We assume the current working directory is where Asqatasun source code is. For instance: /home/asqatasun/Asqatasun/

Build

MAVEN_CLI_OPTS="--batch-mode"
MAVEN_OPTS="-Dmaven.repo.local=.m2/repository"
./mvnw $MAVEN_CLI_OPTS validate
./mvnw $MAVEN_CLI_OPTS clean
./mvnw $MAVEN_CLI_OPTS install -Dmaven.test.skip=true
./mvnw $MAVEN_CLI_OPTS test
mkdir -p \
  ~/var/log/asqatasun/webapp/ \
  ~/var/log/asqatasun/server/

You may build and skip the dependency-check task (which looks for known CVEs and takes some time) this way:

./mvnw $MAVEN_CLI_OPTS install -Dmaven.test.skip=true -Ddependency-check.skip=true

Run webapp

Launch webapp (MariaDB):

ASQATASUN_RELEASE="6.0.0-SNAPSHOT"
DB_PORT="3307"
DB_HOST="localhost"
DB_DRIVER="mariadb"
DB_DATABASE="asqatasun"
DB_USER="asqatasunDatabaseUserLogin"
DB_PASSWORD="asqatasunDatabaseUserP4ssword"
APP_LOG_DIR="${HOME}/var/log/asqatasun/webapp"
WAR_FILE="${HOME}/Asqatasun/web-app/asqatasun-web-app/target/asqatasun-web-app-${ASQATASUN_RELEASE}.war"

/usr/bin/java \
    -Dapp.engine.loader.selenium.hubUrl=http://localhost:4444/ \
    -Dapp.logging.path="${APP_LOG_DIR}" \
    -Djdbc.url="jdbc:${DB_DRIVER}://${DB_HOST}:${DB_PORT}/${DB_DATABASE}" \
    -Djdbc.user="${DB_USER}" \
    -Djdbc.password="${DB_PASSWORD}" \
    -jar "${WAR_FILE}"

Launch webapp (PostgreSQL):

ASQATASUN_RELEASE="6.0.0-SNAPSHOT"
DB_PORT="5432"
DB_HOST="localhost"
DB_DRIVER="postgresql"
DB_DATABASE="asqatasun"
DB_USER="asqatasunDatabaseUserLogin"
DB_PASSWORD="asqatasunDatabaseUserP4ssword"
APP_LOG_DIR="${HOME}/var/log/asqatasun/webapp"
WAR_FILE="${HOME}/Asqatasun/web-app/asqatasun-web-app/target/asqatasun-web-app-${ASQATASUN_RELEASE}.war"

/usr/bin/java \
    -Dapp.engine.loader.selenium.hubUrl=http://localhost:4444/ \
    -Dapp.logging.path="${APP_LOG_DIR}" \
    -Djdbc.url="jdbc:${DB_DRIVER}://${DB_HOST}:${DB_PORT}/${DB_DATABASE}" \
    -Djdbc.user="${DB_USER}" \
    -Djdbc.password="${DB_PASSWORD}" \
    -jar "${WAR_FILE}"

Use webapp

See Asqatasun usage.

Run server

With PostgreSQL:

ASQATASUN_RELEASE="6.0.0-SNAPSHOT"
DB_PORT="5432"
DB_HOST="localhost"
DB_DRIVER="postgresql"
DB_DATABASE="asqatasun"
DB_USER="asqatasunDatabaseUserLogin"
DB_PASSWORD="asqatasunDatabaseUserP4ssword"
APP_LOG_DIR="${HOME}/var/log/asqatasun/server"
JAR_FILE="${HOME}/Asqatasun/server/asqatasun-server/target/asqatasun-server-${ASQATASUN_RELEASE}.jar"

/usr/bin/java \
    -Dapp.engine.loader.selenium.hubUrl=http://localhost:4444/ \
    -Dapp.logging.path="${APP_LOG_DIR}" \
    -Djdbc.url="jdbc:${DB_DRIVER}://${DB_HOST}:${DB_PORT}/${DB_DATABASE}" \
    -Djdbc.user="${DB_USER}" \
    -Djdbc.password="${DB_PASSWORD}" \
    -jar "${JAR_FILE}"

With MariaDB:

ASQATASUN_RELEASE="6.0.0-SNAPSHOT"
DB_PORT="3307"
DB_HOST="localhost"
DB_DRIVER="mariadb"
DB_DATABASE="asqatasun"
DB_USER="asqatasunDatabaseUserLogin"
DB_PASSWORD="asqatasunDatabaseUserP4ssword"
APP_LOG_DIR="${HOME}/var/log/asqatasun/server"
JAR_FILE="${HOME}/Asqatasun/server/asqatasun-server/target/asqatasun-server-${ASQATASUN_RELEASE}.jar"

/usr/bin/java \
    -Dapp.engine.loader.selenium.hubUrl=http://localhost:4444/ \
    -Dapp.logging.path="${APP_LOG_DIR}" \
    -Djdbc.url="jdbc:${DB_DRIVER}://${DB_HOST}:${DB_PORT}/${DB_DATABASE}" \
    -Djdbc.user="${DB_USER}" \
    -Djdbc.password="${DB_PASSWORD}" \
    -jar "${JAR_FILE}"

Use server

See Asqatasun usage.

Stop service (webapp or server)

Just type CTRL-C on the console.