Skip to content

Latest commit

 

History

History
79 lines (57 loc) · 1.98 KB

development.adoc

File metadata and controls

79 lines (57 loc) · 1.98 KB

3scale CMS Tools Development

1. Building Locally

Project builds are orchestrated by Apache Maven, utilizing Maven Wrapper with the goal for a consistent compilation environment.

1.1. Prerequisites

The following is required to build 3scale-cms for any build type:

  1. Java JDK 17 or newer

  2. Maven 3.9.2 or newer - this is automatic when using Maven Wrapper

To perform a native-mode build, at least one of the following must also be installed:

  1. Podman

  2. Docker

  3. Mandrel, a GraalVM downstream distribution that focuses solely on Quarkus support

  4. GraalVM

For more information on prerequisites and configuration for native-mode builds, refer to the Quarkus "Building a Native Executable" Guide.

1.2. Building in JVM-mode

To build 3scale-cms to run in JVM-mode, run the following Maven Wrapper phase:

./mvnw verify

Upon successful compilation, the 3scale-cms CLI may be executed via the following Java command:

java -jar cli/target/quarkus-app/quarkus-run.jar

1.3. Building in Native-mode

Similar to JVM-mode builds, native-mode builds are also run with Maven Wrapper. The difference is by enabling the native profile:

./mvnw verify -Pnative

Upon successful completion, the 3scale-cms CLI may be executed via the newly compiled executable:

cli/target/3scale-cms-tools-cli-VERSION-runner
Note

Replace VERSION with the version number of 3scale-cms that was just compiled.

1.4. Running in Quarkus Dev-Mode

To run 3scale-cms CLI in Quarkus dev-mode, the following Maven Wrapper command may be invoked from the project root:

./mvnw -pl cli -am verify quarkus:dev