...
- xCode (if using Mac - free download from the apple store)
- JDK 7 (Ambari 2.0 and below can be compiled with JDK 6, from Ambari 3.0, it can be compiled with at least JDK 8)
- Apache Maven 3.3.9 or later
Tip: In order to persist your changes to the JAVA_HOME environment variable and add Maven to your path, create the following files:File: ~/.profileCode Block source ~/.bashrc
File: ~/.bashrcCode Block export PATH=/usr/local/apache-maven-3.3.9/bin:$PATH export JAVA_HOME=$(/usr/libexec/java_home) export _JAVA_OPTIONS="-Xmx2048m -XX:MaxPermSize=512m -Djava.awt.headless=true"
- Python 2.6
Python setuptools - python 2.6: Download or python 2.7: Download and run:
2.6:Code Block sh setuptools-0.6c11-py2.6.egg
2.7
Code Block sh setuptools-0.6c11-py2.7.egg
- rpmbuild (rpm-build package)
g++ (gcc-c++ package)
NodeJS - Latest version tested for compatibility is v0.10.44 (as of April 5, 2016). 0.12.x won't work. Download the binary tarball, extract, and put the bin directory in your PATH. Verify that you can run the command node and npm. Alternatively, you can use yum to install NodeJS if you are on Fedora 18:
Code Block #Fedora 18: sudo yum update audit; sudo yum --enablerepo=updates-testing install nodejs npm
Brunch 1.7.20 (to install it, run the following command after NodeJS is installed):
Code Block npm install -g brunch@1.7.20
Verify that you can run the command brunch. Later versions may work, but 1.7.20 is the latest version that has been tested (as of Dec 10, 2015).
Running Unit Tests
mvn clean test
Run unit tests in a single module:
Code Block mvn -pl ambari-server test
Run only Java tests:
Code Block mvn -pl ambari-server -DskipPythonTests
Run only specific Java tests:
Code Block mvn -pl ambari-server -DskipPythonTests -Dtest=AgentHostInfoTest test
Run only Python tests:
Code Block mvn -pl ambari-server -DskipSurefireTests test
Run only specific Python tests:
Code Block mvn -pl ambari-server -DskipSurefireTests -Dpython.test.mask=TestUtils.py test
Run only Checkstyle and RAT checks:
Code Block mvn -pl ambari-server -DskipTests test
...