incubator-cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chip Childers <>
Subject Re: [DISCUSS] Packaging in 4.1
Date Sun, 03 Feb 2013 18:55:24 GMT
Thanks for bringing this back to the list Hugo!  Hope you guys had a
good time at FOSDEM.

On Sun, Feb 3, 2013 at 2:24 AM, Hugo Trippaers
<> wrote:
> Heya all,
> As Devid already mentioned we met up at Build-A-Cloud-Day in Ghent with Wido, Noa and
a few other folks. During this day (with lots of nice talks) we had a chance to sit down and
discuss packaging. Something that Noa, Wido and myself were planning to do for a long time.
Some other people joined in the discussion and with the help of the available black board
(the event was held in a school ;-) ) we managed to sync our ideas on packaging the 4.1 release.
> With our ideas synced we thought it time to bring our ideas to the list and ask for feedback
from the community. We are also using our current time at FOSDEM to sync up with some of the
people from the distros to see what they think of the new ideas, it would still be nice to
have CloudStack packaged up and shipped with some of the distributions out there.
> So the main goals of redoing packaging are getting rid of ant and waf completely. A secondary
goal is to create a reference set of packages which in itself should be enough to get anyone
going with CloudStack, but will hardly depend on the underlying distro. Real distro specific
stuff should be handled by packagers from those distros. We just aim to provide a reference
> Our goal is to have a reference implementation that will install on the following list
of operating systems: CentOS 6.3, Ubuntu 12.04 and Fedora 18. This means that it will probably
install and run on a lot more, but this is the set that we will test against (i'm using a
jenkins system at the office to automatically build and install and these images will be used
for the tests).
> Next we will remove as much system dependencies as possible, so we will use maven to
gather the dependencies and make sure that they are packaged and shipped with the RPMs. This
makes for slightly bigger packages, but reduced the overhead of having to check each operating
system and run the risk of version mismatched with versions of jar files present on the distro.
> We also intend to change the name of the packages to cloudstack to make it perfectly
clear what somebody is installing, this will also affect the location of several files like
configuration files and scripts, but we plan to include symlinks for backwards compatibility.
The feasibility of this will obviously be tested in the packaging street my collegues are
building for me.
> The planned packages for now are cloudstack-management, cloudstack-agent, cloudstack-common,
cloudstack-cli, cloudstack-docs, cloudstack-awsapi and cloudstack-usage. You might already
have seen these names in some of the checkins. I this the best we to demonstrate is by showing
code, instead of a lengthy email ;-) All packages will have a directory in /usr/share/cloudstack-%{name}
and the main jar will be located there and any dependencies will be located in the lib directory
beneath that location. With the exception of management which will be created as an exploded
webapplication archive in the same directory. Scripts will be located in /usr/share/cloudstack-common/scripts
and symlinks will be made to the previous locations for backwards compatibility.
> I think these are the highlights of what we intend to do for release 4.1. We have a lot
of plans for subsequenst release and on how to get us into distros. But for now we thought
it prudent to focus on getting packages for the 4.1 release as son as possible and focus on
other improvement later.

+1 for the approaches mentioned.  I love the idea that our packages
are the "reference" packages (which we test and have faith in), but
that we concurrently work with the distros to get the code into their
packaging schemes.

> @Wido, @Noa, @David did i miss anything important?
> Cheers,
> Hugo

View raw message