Versions Compared

Key

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

Starting from 4.1.0, a.k.a, the master branch, we are using Maven to build all the artifacts. If you are interesting in how to build cloudstack on 4.0.x branch, please refer to http://incubator.apache.org/cloudstack/develop/environment.htmlImage Removed.

Maven uses the notion of a build life-cycle to which plugins can attach. Plugins are similar to Ant tasks. When a Maven build is invoked, we specify a point in the life-cycle up to which the build should proceed. The compile phase comes before test, and test comes before package, and package comes before install. Once we have Maven setup, we can invoke the Struts build, and specify which phase the build should use.

...

  1.  Deploydb:
    - fix root/cloud permission issue
    - create cloud user is it does not exist
    - create schema/tables for cloud_usage and cloudbridge databases
    - see if we can use http://code.google.com/p/flyway/ etc. for database upgrading/migration during development (suggested by John Burwell <jburwell@basho.com>)
  2. Compile:
    - use jetty to run and debug webapp
    - fix tomcat webapp compilation issue
    - fix compilation of some projects still under WIP
  3. Unittests:
    - fix unittests so they are more useful during compilation
  4. Deploy and Debug:
    - deploy and debug with jetty
    - configure tomcat plugin to do tomcat:deploy and tomcat:run, debug
  5. Artifacts
    - Client-ui.war (done, requires testing)
    - awsapi.war (done, requires testing)
    - usage.jar (wip)
    - systemvm.iso (done, requires testing)
    - agent.zip (not started yet)
  6. External Packaging:
    - deb packaging
    - rpm packaging
  7. Site/doc generation with maven

Installing Maven

We need maven 3, you can either install it from distribution, or install it from maven binary. Following is the steps to install it from maven binary:

Get Maven binary: http://maven.apache.org/download.html

...