Skip to Content.
Sympa Menu

grouper-dev - Re: [grouper-dev] VMs for testing and demo/tryout

Subject: Grouper Developers Forum

List archive

Re: [grouper-dev] VMs for testing and demo/tryout


Chronological Thread 
  • From: Rob Hebron <>
  • To:
  • Subject: Re: [grouper-dev] VMs for testing and demo/tryout
  • Date: Thu, 16 Dec 2010 21:47:46 +0000

That would depend on how many VMs we'd want to be running. If we go for the 3 OSS ones to avoid licensing issues (one HSQL, one Postgres and one MySQL), then I'd say 4gb per VM, with another 4gb to hold the base image and another 4 Gb for the CI server, configuration tools and space for a compressed final VM. This works out at about 20Gb, but as disk usage only ever goes up I'd play safe with a 30Gb estimate.

Rob

On 16/12/10 16:46, Chris Hyzer wrote:
This sounds great. How much disk space would you need altogether?

-----Original Message-----
From:


[mailto:]
On Behalf Of Rob Hebron
Sent: Thursday, December 16, 2010 9:26 AM
To:

Subject: [grouper-dev] VMs for testing and demo/tryout

An action on me from the last call was to look at this.

It seems to be fairly commonly done as part of a continuous integration
(CI) build process. The idea is that a build/test cycle is farmed out to
VMs for building and testing with results reported back to the CI
server. There is no standardisation on what VM technology to use
(although some CI servers have helper plugins written for some
virtualisation platforms), it normally comes down to scripting a process
to run through whatever interface is available. The main advantage is
that you end up with a fully repeatable build/test process and can
guarantee a clean system before each run.

I've set up my Huson CI server to run a build/test cycle for Grouper. It
checks out the code from svn, builds it and runs the tests using gsh.
Then it parses the output to report test failures. It would be easy
enough to set it up to test multiple databases one after another. I've
also tested starting a VM as part of the process and running the
build/test cycle on this using a remote logon. It's turned out to be
fairly straightforward. The trick seems to be to have a base image to
clone when creating a new VM, and then install everything needed for the
build/test onto it. At the moment I throw away the VM when I'm finished
with it, but it would be very little work to clean it up a little and
make it suitable as a demo/test platform.

So, to take it any further we'd need to think about whether we want to
use a CI server for Grouper builds and testing, where it would be
hosted, whether the relatively small amount additional effort that using
VMs calls for is worth it, and if so what virtualisation technology we
should target. I think a good approach would be to have as little
dependence as possible on the virutalisation technology and use some
like CF Engine or Puppet to configure the VM automatically rather than
use a proprietary API. Once it's configured the CI server could connect
up and do its stuff.

In summary, it's been pretty easy to set up on my own servers and could
help in testing Grouper releases, as well as meaning we could end up
with a VM. What do people think? It it worth going down this route?

Rob



Archive powered by MHonArc 2.6.16.

Top of Page