Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

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

Deploying Database

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

...