Build Guideline¶
This procedure explains how to build all the packages from the latest commit.
Setup Prerequisites¶
On Ubuntu¶
- Ubuntu 16.04 or 18.04
- Java JDK 8 (tested with OpenJDK 1.8.0_181)
- Maven 3 (tested with 3.5.4)
- Python 2.7 (tested with 2.7.15-rc1) et Python PIP
- Git (tested with 2.17.1)
- mkdocs, mkdocs-material & pandoc (read pp-documentation/README.md)
- Yarn & NodeJS (read pp-gui/README.md)
- curl & jq
- Python dependencies for admin service housekeeping unit tests:
sudo pip install -r pp-core/punchplatform-admin/bin/punchplatform-admin.pipreqs
sudo pip install behave
behind a proxy
if you are behind a proxy, use http_proxy
and https_proxy
environment variables;
use sudo -E
to preserve environment variables
On Mac OSX¶
Tested with El Capitan and Sierra
Same as Ubuntu, except for apt commands. Please use brew package.
To install texlive-* packages :
brew cask install mactex
Build order¶
Execute build command on each repository, following this order:
- api
- libraries
- nodes
- applications
- plugins
- documentation
- packagings
You can optionally build this internal documentation
9. documentation
Build command¶
mvn clean install -DskipTests=true
Build output¶
You can find built archives in those directories:
Standalone in packagings/punch-standalone/target/punch-standalone-X.Y.Z.zip
Deployer in packagings/punch-deployer/target/punch-deployer-X.Y.Z.zip
Documentation in documentation/target/documentation-X.Y.Z.zip
You can find others built archives:
Sample PunchPlatform configuration tree, suitable for deployment on cluster infrastructure emulation, in packagings/punch-resources