geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron Mulder" <>
Subject Re: New Feature: Configuration Import/Export
Date Mon, 27 Mar 2006 18:01:01 GMT
Right now the console lets you view the dependencies before deciding
whether to proceed (though it has to at least download the CAR to get
that information), and likewise gives you a button you have to click
to start the configuration you just installed.  The command-line tool
is so far a bit more primitive.  It gives you a list of available
configurations, and if you select one, it's installed with all its
dependencies and started.

I'm not sure it's worth going much further with this before we define
an external format to hold the dependency information (such as an XML
file per artifact).  I would hope to wait for the Maven 2 conversion
for that, since Maven 2 already has metadata in the repository, though
it's not strictly necessary.

As far as the file that lists all the available artifacts for
Geronimo, I'm not sure we need to make it corespond to a Geronimo
release.  I was thinking more that it would list all the artifacts and
each one would say which Geronimo release(s) it works with.  I
certainly don't want to have to provide a new file for every dot
release of Geronimo.  Let's just try to get it right and use a parsing
routine that will be forgiving of future enhancements.

I'd like to learn a little more about how Maven 2 maintains the
metadata in the repository -- it seems like it already has per
artifact/version, per artifact, and per repository metadata support,
though I don't know what handles the updates and merges to those
metadata files.


On 3/27/06, Donald Woods <> wrote:
> What are you thoughts on dependencies within a selected CAR?
> It would be nice to see that by choosing Daytrader, you would also be
> install the Corba, Axis and ActiveMQ plans while selecting the LDAP demo
> would pull in the ApacheDS configuration.  Users will probably want a
> way to see/list what prerequisites are required for each configuration
> along with the estimated diskspace required before they deploy it, via
> something like a 'deploy list-configs' option.
> I think going with an XML format similar to the project.xml files for
> the current file is a good way to go.
>   It gives us and end-users a way to provide more than just CAR files
> (like WAR/EAR applications and JDBC drivers), apply validation to the
> file during the build and potentially use Maven or the Eclipse Maven
> plug-in for building server instances from scratch.
> I assume we would have a configuration file per release?  Something like
> geronimo-configs-1.2.xml, which would allow us to change our configs
> package structure and available packages between releases.
> -Donald
> Aaron Mulder wrote:
> > This now works from the command line too:
> >
> > java -jar bin/deployer.jar install-configs http://localhost/maven/
> >
> > But you still need the in the root
> > of the Maven repo.  I'm thinking of changing that to an XML format
> > since there's at least one more piece of information that it would be
> > nice to fit in there -- namely, the version of Geronimo that this
> > particular CAR is expected to work in.  We may even consider
> > explicitly breaking out the web container for web app configurations
> > so we don't bother listing all the Tomcat apps if you have a Jetty
> > server and vice versa.
> >
> > Thanks,
> >     Aaron
> >
> > On 3/24/06, Aaron Mulder <> wrote:
> >
> >>I've just added a new feature to the console whereby it can export an
> >>installed configuration to a CAR file, and also install previously
> >>uninstalled configurations (CAR files and dependency JAR files) from a
> >>Maven repository (though at present, it depends on a properties file
> >>being in the repository the provide some metadata on the available
> >>CARs).  It also still doesn't have any reasonable feedback during the
> >>download process.
> >>
> >>Anyway, I'm not really looking at this as a final definition of the
> >>feature, more a look at what we can do so we can talk about the best
> >>way to do it.  (For example, we've talked about how it would be nice
> >>to have command-line tools to do this, and while some of the code
> >>could be extracted, we'd potentially need a separate file upload
> >>solution, if we can't reuse the remote-deploy web app.  Also, it can
> >>only install from a Maven repo [vs a direct file upload] so it can
> >>fetch needed dependencies.  Also, it doesn't take advantage of the
> >>soon-to-be-on-iBiblio Maven repository manager.)
> >>
> >>As a conversation starter, it would be nice to distribute Geronimo
> >>without any sample applications to make it a little leaner and faster
> >>to start -- just have the screen in the console that lets you download
> >>and install any of them that you want.  I also think it would be nice
> >>to distribute without Directory and some of the other add-ons, and
> >>provide the ability to download and install those, ServiceMix, Quartz,
> >>and other packages we know of integration for.
> >>
> >>If you want to take a look at this, there's an Import/Export entry in
> >>the application part of the console navigation bar (in HEAD).  You
> >>need to set up some Maven repo to point it to (though for a REAL quick
> >>start you can just use a file URL like
> >>file:///home/ammulder/.maven/repository).  And then you need a file in
> >>the root of the Maven repo called
> >>with entries like this:
> >>
> >>Category.ConfigId=Description
> >>
> >>Then enter the URL to your Maven repo in the screen in the console,
> >>and it'll list all the configurations from the properties file,
> >>grouped by the categories you specified, and let you install anything
> >>that's not already available in the local server.  I've attached a
> >>sample that exposes some of the Geronimo web apps if you want a real,
> >>real quick start.
> >>
> >>Thanks,
> >>    Aaron
> >>
> >>
> >>
> >
> >
> >

View raw message