I don't the deb build on master will work, as we moved build system from ant to 
maven, the artifacts build by maven is quite different from ant(regarding to 
the path). You can find the discussion about the build system in the following 
the mail threads:
http://markmail.org/message/lsjigqvnbkjtbl4y
http://markmail.org/message/utce4esqjl7xhwr4

-----Original Message-----
From: Dave Cahill [mailto:dcah...@midokura.jp] 
Sent: Monday, November 05, 2012 1:13 AM
To: cloudstack-dev@incubator.apache.org
Subject: Proposed fixes for debian package building process

Hi,

There appear to be some errors in the debian package building process; I'd like 
to double-check my approach for fixing them.

The wiki [1] gives the procedure for building debian packages as:
mvn install -P deps && dpkg-buildpackage

However, mvn install -P deps fails with:

[ERROR] Failed to execute goal on project cloud-deps: Could not resolve 
dependencies for project
org.apache.cloudstack:cloud-deps:jar:4.1.0-SNAPSHOT: Could not find artifact 
org.apache.cloudstack:cloud-awsapi:jar:4.1.0-SNAPSHOT in apache.snapshots 
(http://repository.apache.org/snapshots) -> [Help 1]

The reason for this failure seems to be this section of deps/pom.xml:
    <dependency>
      <groupId>org.apache.cloudstack</groupId>
      <artifactId>cloud-awsapi</artifactId>
      <version>${project.version}</version>
    </dependency>

${project.version} is 4.1.0-SNAPSHOT, however looking at 
https://repository.apache.org/content/groups/snapshots/org/apache/cloudstack/cloud-awsapi/,
I only see 4.0.0-SNAPSHOT.

If I replace ${project.version} for cloud-awsapi in deps/pom.xml with a 
hardcoded "4.0.0-SNAPSHOT", mvn -P deps succeeds. An alternative fix would be 
if 4.1.0-SNAPSHOT version of cloud-awsapi was available on 
repository.apache.org.

I also found that in order for dpkg-buildpackage to succeed, I needed to run 
"mvn install -P deps -pl deps" rather than just "mvn install -P deps".

For reference, if you run dpkg-buildpackages without running "mvn -P deps", the 
error returned is:
/PATH/incubator-cloudstack/build/build-aws-api.xml:34: taskdef class 
org.apache.axis2.tool.ant.AntCodegenTask cannot be found

Lastly, I would have expected "mvn clean" to remove the .jars in the deps 
folder, however it does not - this made debugging "interesting"!

Proposed changes:
* Hardcode 4.0.0-SNAPSHOT as the version of cloud-awsapi in deps/poms.xml
* Change the wiki to reflect the fact that "mvn install -P deps -pl deps"
needs to be run when building debian packages
* Change mvn clean to remove the jars from the deps folder

Please let me know if those changes make sense, or if I'm missing something. If 
they look OK, I'll create a patch and submit.

Thanks,
Dave.

[1]
https://cwiki.apache.org/confluence/display/CLOUDSTACK/Building+with+Maven#BuildingwithMaven-BuildingCloudStack

Reply via email to