##BigTop Toolchain Deployment through Puppet
Puppet module for configuring a CentOS host for building BigTop. It installs:
Apache Ant 1.9.4
Apache Forrest 0.9
Oracle JDK 1.6u45
Apache Maven 3.0.5
Gradle 2.0
Protobuf 2.5.0
##Usage
These can be indivdually applied using:
node "node1.example.com" { include bigtop_toolchain::jdk include bigtop_toolchain::maven include bigtop_toolchain::forrest include bigtop_toolchain::ant include bigtop_toolchain::gradle include bigtop_toolchain::protobuf include bigtop_toolchain::packages include bigtop_toolchain::env include bigtop_toolchain::user }
Or installed as a whole with:
node "node2.example.com" { include bigtop_toolchain::installer }
It will create a user jenkins with the required environment variables set for building BigTop:
MAVEN_HOME=/usr/local/maven PATH=$PATH:$MAVEN_HOME/bin JAVA_HOME=/usr/java/latest ANT_HOME=/usr/local/ant PATH=$PATH:$ANT_HOME/bin FORREST_HOME=/usr/local/apache-forrest
GRADLE_HOME=/usr/local/gradle PATH=$PATH:$FORREST_HOME/bin:$GRADLE_HOME/bin
If you do not want to use a puppet master this module can be applied standalone with a command such as:
puppet apply --modulepath=<path_to_bigtop> -e "include bigtop_toolchain::installer"
where <path_to_bigtop> is the cloned git repo.
This is a separated set of manifests that helps to setup tools for Bigtop deployment. The usage is as below:
puppet apply --modulepath=<path_to_bigtop> -e "include bigtop_toolchain::deployment-tools"
By applying the snippet, Vagrant will be installed(the Docker installation will be added soon).
For RedHat/Centos, due to redistribution restrictions the Oracle JDK must be downloaded seperately.
Download the JDK 64bit rpm.bin file, run it with the -x switch to extract the rpm file and copy jdk-6u45-linux-amd64.rpm to files/.
Download the JDK 64 bit jdk-7u60-linux-x64.gz file into files/
The Ant/Maven/Forrest sources will be downloaded automatically. If you already have them and do not want to download them again please copy the source .tar.gz files into /usr/src.
License: Apache License, Version 2.0