...
Running the maven command in the top directory of the CloudStack sources will compile all sources for CloudStack. The resulting jar files will be in the directory target in the subdirectory for a particular module. The default build will have all components that depends on non opensource (non-oss) libraries disabled. If you want to enable this, just add -D nonoss noredist to the mvn command line or see the table below for more fine-grained options. The install goal will compile all sources, make war and jar files and add them to your local repository.
Available profiles | Enabled by property | Requires profiles | Description |
---|---|---|---|
deps |
|
| Enables a convenience download for all dependencies into the deps directory, usage mvn -P deps -pl deps install |
developer |
|
| Enables a convenience pom with developer functions |
vmware | nonoss noredist |
| Enables the build of vmware-base and the vmware plugin, requires vmware SDK to be present. See also Hypervisor VMWare. |
netapp | nonoss noredist |
| Enables the build of the netapp plugin, requires NetApp manageontap sdk. |
f5 | nonoss noredist |
| Enables the build of the f5 plugin, requires f5 iControl library |
netscaler | nonoss noredist |
| Enables the build of the netscaler plugin, requires additional libraries. |
srx | nonoss noredist |
| Enables the build of the juniper srx plugin, requires additional libraries. |
marvin | marvin.config | developer | Allows you to configure cloudstack using a marvin json configuration |
Available properties |
| Required profile | Description |
deploydb |
| developer | Clears and creates the cloud database in the mysql server configured utils/conf/db.properties |
nonoss noredist |
|
| Enables all modules that are not part of the standard ASF build |
systemvm |
| systemvm | Enabled the build of the systemvm.iso, requires mkisofs to be available on the commandline |
awsapi |
| awsapi | Enables building of awsapi module along with rest of the CloudStack |
simulator |
| developer | Enables the simulator spring context for running the integration test |
...
Code Block |
---|
mvn clean install -P developer,systemvm |
To build nonoss noredist code:
Code Block |
---|
$ mvn clean $ mvn install -DnonossDnoredist |
Note: The following is a WIP feature, use the old Ant command for a complete refresh. This command assumes you have a proper setup in utils/conf/db.properties and the cloud user already exists on your mysql database. If you have a root password, copy db.properties to db.properties.override and put your password there.
...
Code Block |
---|
$ mvn -pl :cloud-client-ui jetty:run |
To run a nonoss noredist management server:
Code Block |
---|
$ mvn -pl :cloud-client-ui jetty:run -DnonossDnoredist |
NOTE : In case if BUILD process goes fine but, you are unable to access management server then please make sure that 8080 is opened in iptables.
...
Note |
---|
If you have compiled with additional flags (ex: -DnonossDnoredist), you can get them packaged into the DEB by exporting those flags into the ACS_BUILD_OPTS prior to running dpkg-buildpackage. Example: mvn clean install -P deps -DnonossDnoredist; export ACS_BUILD_OPTS="-DnonossDnoredist"; dpkg-buildpackage |
WIP: Package using deb profile (feature under development uses jdeb plugin, in https://github.com/bhaisaab/incubator-cloudstack/tree/debs-maven debs-maven branch):
...
Code Block |
---|
mvn release:update-versions -DautoVersionSubmodules=true -DnonossDnoredist -Pdeps,developer -DdevelopmentVersion=<version>-SNAPSHOT |
...