cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rohit Yadav <rohit.ya...@citrix.com>
Subject Building debs with Maven
Date Thu, 13 Sep 2012 15:58:38 GMT
Hi,

Just wanted to share some progress on maven. Please share your ideas, suggestions. Thanks.

I tried various plugins for deb and rpms. I've nailed down one called jdeb, that seems to
work for creating debs.
The plugins folder is tricky. I will try to see if we can have maven do everything for us
in next few days, till then we've ant/waf/maven.

The layout I used for plugins:
Every module/subproject will have a pkg/ folder that would control deb or rpm specific control
files and specs.

And, unlike what waf generates, all debs/rpm of a project will contain only jars, conf etc
files from that module only. So, for example, cloud-agent won't have cloud-plugin-kvm. The
plugins deb/rpm will be separate. This makes implementing relatively easier. Vote?

For example, I got only one cloud-agent.deb that has all the scripts and jars which is now
shipped as agent-libs, -scripts etc.
Patch 1-4 works, 5 is in progress. Progress now is 5/11 (subprojects) for debs. (debs for
api, agent, core, server work fine, plugins is wip).

Question: what to do with awsapi, the current debs and also those hosted by Wido don't have
awsapi?

The idea is soon we'll have simple command to do our development; something like:

mvn clean # cleans project targets, think make clean
mvn compile # compiles .class, think make
mvn install # installs in ~//m2

mvn package # generates jars/wars
mvn package -Pdeb # to generate debs only

mvn deploy # have exec plugin deploydb etc.


Regards,
Rohit

PS. After several hours of hunting, I found variables in Maven have reflection property, so
in case in a submodule, ${project.parent.parent.build.directory} can be used. Even the book
by Sonatype failed to mention in their properties chapter: http://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide


Mime
View raw message