Common-ui historically contains commonly used utils/frameworks (e.g. jquery, angular) that are used across the platform. As we move forward with OSGI it is expected for these to be removed from common-ui to be deployed in a more modular way.
- Maven, version 3+
- Java JDK 1.8
- This settings.xml in your /.m2 directory
Build for nightly/release
All required profiles are activated by the presence of a property named "release".
$ mvn clean install -Drelease
This will build, unit test, and package the whole project (all of the sub-modules). The artifact will be generated in: target
Build for CI/dev
The release
builds will compile the source for production (meaning potential obfuscation and/or uglification). To build without that happening, just eliminate the release
property.
$ mvn clean install
- Delete the existing common-ui platform plugin at pentaho-server/pentaho-solutions/system/common-ui.
- Build common-ui.
- Unzip the file at assemblies/platform-plugin/target/common-ui-{version}.zip to pentaho-server/pentaho-solutions/system/common-ui.
Unit tests
This will run all tests in the project (and sub-modules).
$ mvn test
If you want to remote debug a single java unit test (default port is 5005):
$ cd core
$ mvn test -Dtest=<<YourTest>> -Dmaven.surefire.debug
Integration tests In addition to the unit tests, there are integration tests in the core project.
$ mvn verify -DrunITs
To run a single integration test:
$ mvn verify -DrunITs -Dit.test=<<YourIT>>
To run a single integration test in debug mode (for remote debugging in an IDE) on the default port of 5005:
$ mvn verify -DrunITs -Dit.test=<<YourIT>> -Dmaven.failsafe.debug