Add details about the StackForge build to README.md

Change-Id: I8c7ce0840fc73381e700b5d81bd5378ad9fabfe9
This commit is contained in:
Craig Bryant 2014-07-25 17:15:31 -06:00
parent 3fb50c0b7f
commit 288e92a1b2
1 changed files with 10 additions and 1 deletions

View File

@ -1,13 +1,22 @@
# Overview
`mon-common` is a collection of sub-projects containing reusable application and platform code for building monitoring related services.
`monasca-common` is a collection of sub-projects containing reusable application and platform code for building monitoring related services.
### Build Instructions
Download and do mvn install.
```
cd java
mvn clean install
```
There is a pom.xml in the base directory but that should only be used for the StackForge build. The issue is that currently StackForge's bare-precise system only has Maven 2 on it and at least one of the modules of monasca-common requires Maven 3.
In order to get around this problem, the pom.xml in the base directory uses the exec-maven-plugin to run the script run_maven.sh. This script checks if the version of mvn is Maven 3 and if it is not, it downloads Maven 3 and then uses it to run the build in the java directory.
In addition, the run_maven.sh script copies the jar files that get built from java/\*/target directories to the target directory in the base project directory. This is because the StackForge "monasca-common-localrepo-upload" job uploads any jar files from that directory to http://tarballs.openstack.org/ci/monasca-common. Copying the jar files to that directory made it so there didn't have to be changes made to the "monasca-common-localrepo-upload" job. The build for monasca-thresh downloads the jars it depends on from that location on tarballs.openstack.org.
A change has been submitted to StackForge to switch to bare-trusty for this build in the hopes that those systems will have maven 3, but it is not known how long that change will take to be accepted.
### Application Specific Sub-Projects
* [mon-model](https://git.hpcloud.netstackforge/monasca-common/tree/master/mon-model) - Common domain and event models for monitoring services.