geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron Mulder" <ammul...@alumni.princeton.edu>
Subject Re: Questions about www.geronimoplugins.com site
Date Tue, 02 May 2006 01:44:19 GMT
As far as whether plugins are valuable, here's an example to consider.
 Let's say someone gives you an EAR that contains a WAR and an EJB
JAR, and uses JMS as well as a database pool.  Your task is to get
this running in Geronimo.

Strategy 1: File-based (they provide EAR, you write 5 XML files)
 - install any required 3rd party JARs
 - write a Geronimo deployment plan for WAR
 - write a Geronimo deployment plan for EJB JAR
 - write a Geronimo deployment plan for EAR
 - write a Geronimo deployment plan for the DB pool
 - write a Geronimo deployment plan for the JMS resources
 - deploy all those in some sensible order, each with the accompanying
JAR file (the TranQL RAR and ActiveMQ RAR for the resources)

Strategy 2: Use the console to your advantage (they provide EAR, you
write 3 XML files)
 - install any required 3rd party JARs
 - write a Geronimo deployment plan for WAR
 - write a Geronimo deployment plan for EJB JAR
 - write a Geronimo deployment plan for EAR
 - use the console to configure, test, and deploy the DB pool
 - use the console to configure and deploy the JMS resources
 - deploy the application

Strategy 3: Install from a plugin (they provide plugin)
 - point Geronimo to the application plugin.  Application, DB Pool,
and JMS resources are all downloaded with their dependencies and
everything is installed automatically in one shot.


As far as whether different kinds of things should be plugins, patches
and updates can use the plugin infrastructure, so we might as well
consider them.  And I don't think that either sample applications or
an LDAP server are "core functions" that should be included with the
default Geronimo download.  It's fine if we have an installer package
that lets you select some extensions to include in your installation,
but if you just grap a zip or tarball, I'd much prefer that it was
very clean/lightweight with easy links to install additional
functionality.

Another use case is the minimal Tomcat server.  It will be possible to
start with the lightest-weight Geronimo installation and add JMS or DB
pools or EJB or the full J2EE bundle via plugins.  Without
re-installing your apps or restarting the server!  Let's say you have
an existing web app and you want to add JMS.  Much nicer to make the
new version of your app depend on an ActiveMQ resource group and just
redeploy the plugin for your app and have JMS features downloaded and
added to your server at runtime, so in the process of the app upgrade
the new server features go in, the new resources go it, and it all
goes live.  Bam! (if you favor Emeril.)  No need to do a separate
Geronimo/J2EE installation and repeat any configuration you may have
done in your old installation and them add new resources in the
console and only then deploy your new app and find out at that time
whether you've done everything right and all the dependencies are
there (oops, forgot the security realm).

For "production" use, I think it'll be nice in many situations to
transfer a module directly from one server to another without
redeploying.  For example, from a dev box to a QA box, perhaps.  Make
absolutely sure you're using the same code.  It won't always be
appropriate, like if you require different EJB env-entry settings for
the different environments, but it could handle something like your
database pool points to a different DB in each environment but the app
always points to the same database pool name.

Finally, I think plugins will be pretty effective for examples since
they minimize the number of steps to get a group of related things
installed.  It's certainly possible to pack a lot into a single EAR if
you're sufficiently clever about it, but with plugins it should be
easier to have 1-stop installs for whatever modules you want people to
have to work through things.  There are even plugin lists so you can
install 10 otherwise unrelated things in one bundle.  No good if you
want to teach them how to write a deployment plan, but hey.

Thanks,
    Aaron

On 5/1/06, Hernan Cunico <hcunico@gmail.com> wrote:
> I think the issue to be discussed should be more than just the physical location of the
plugin server.
>
> We have just way to many alternatives to do the same thing, which is to DEPLOY.
>
> For what I understand about the idea behind the plugins, they seem to be good for installing
some
> things and not so good for others. If the long-term plan is to move everything to plugins,
then I
> think it is a bad move.
>
> We need to clearly separate what and how we deploy in Geronimo.  We could separate into
groups such
> as (I am intentionally not including resources):
>
> 1. Geronimo modules
> 2. Sample applications
> 3. User applications
> 4. Vendor applications
>
> This is just a rough, and certainly not complete, grouping but helps to express my point.
Following
> the order from the list:
>
> Having some Geronimo "modules" and sample applications available as plugins may be OK
if these are
> hosted within the ASF. I think this could be a relatively painless way to distribute
a patch/update
> to the single server installation users (if you have many servers this is not a viable
solution).
>
> We develop/integrate the modules and samples so we provide, as a deployment alternative,
the Apache
> Geronimo plugins site. When fully documented, it ends up being a working sample site
for configuring
> your own plugins site.
>
> But it would not feel right if you need to install the LDAP module (to give just an example)
and you
> have to go outside the ASF, a different server from where you downloaded the Geronimo
binary, to get
> part of the Apache Geronimo standard functionality.
>
> If not hosted at the ASF, how would we ensure server availability, performance and maintenance?
>
> In terms of user applications, I think it is very  unlikely that this will became the
method of
> choice for  installing everyday applications. In a production environment, it is very
likely that
> the command line tool will be the most popular alternative.
>
> As for vendors applications, if you build your custom solution around Apache Geronimo
it is probably
> that you will distribute it all in one package (Apache Geronimo included). Just like
with the
> Geronimo modules example, plugins may be a good alternative for distributing patches/updates,
but we
> wouldn't call them plugins anymore would we!?
>
> In this case the vendor should choose to have their own plugins site implementing the
security (if
> needed) to match the appropriate downloads depending on the licensing and sensitivity
of the plugins
> to be installed.
>
> Two final thoughts. First, I would really like to see and participate in the discussions
before
> seeing the changes already implemented. Second and last, the whole deployment strategy
should be
> revised, including the repository. Having too many options does not make the things easier.
>
> Cheers!
> Hernan
>
>
> Aaron Mulder wrote:
> > I thought the point of this thread was to have a discussion?  Please,
> > let's not have any more votes, let's have a discussion.  Can you
> > describe your position?
> >
> > I think it makes perfect sense to move documentation and tutorials to
> > the Geronimo/Confluence/Apache site.  But my understanding of the
> > Apache distribution rules is that no code not developed at Apache can
> > be distributed by the Apache infrastructure.  To be as inclusive as
> > possible of non-Apache BSD, GPL, and commercial plugins, I think the
> > primary plugin repository needs to be separate.  We really want to
> > offer our users the best of all available plugins.
> >
> > Also note that I'm not taking any position on the location of source
> > code.  The source and configuration files for any plugins developed by
> > Apache will continue to be hosted at Apache, and the output of those
> > builds will continue to be available on Apache infrastructure. However,
> > the common plugin repository will also need a copy of the
> > packaged plugin files to make available for installation -- alongside
> > the packaged plugin files for any non-Apache plugins.
> >
> > And, of course, we're only discussing plugins -- third-party add-ons
> > to Geronimo.  I'm not suggesting any changes to the core Geronimo
> > features or distribution model.
> >
> > Thanks,
> >    Aaron
> >
> > On 5/1/06, Alan D. Cabrera <list@toolazydogs.com> wrote:
> >
> >> I do not agree.  I do not think that we should have any sites that are
> >> non-ASF, much less any non-ASF sites being the default.  I do admit that
> >> I have not thoroughly thought it out and am willing to discuss the
> >> matter further.
> >>
> >> Until such time, please consider this my -1 veto until we work this out.
> >>
> >>
> >> Regards,
> >> Alan
> >>
> >> Dain Sundstrom wrote:
> >> > I personally don't see a problem with this site specifically.  The
> >> > console appears to support several plugin sites, so if anyone else
> >> > wants to setup a site they can.  All I see us deciding is what sites
> >> > get added to the list by default, and which site is selected by
> >> default.
> >> >
> >> > -dain
> >> >
> >> > On May 1, 2006, at 6:45 AM, Jeff Genender wrote:
> >> >
> >> >>
> >> >>
> >> >> Aaron Mulder wrote:
> >> >>> On 5/1/06, John Sisson <jrsisson@gmail.com> wrote:
> >> >>>> I noticed that the 1.1 console has the www.geronimoplugins.com
site
> >> >>>> as a
> >> >>>> default value for the URL in the "Import/Export Configurations"
> >> page.
> >> >>>> This was introduced in
> >> >>>> http://svn.apache.org/viewcvs?rev=394605&view=rev .
> >> >>>>
> >> >>>> I have a few questions:
> >> >>>>
> >> >>>> Was the plugin concept, site etc. discussed on the dev list?
 I
> >> >>>> haven't
> >> >>>> been able to find much at all.
> >> >>>
> >> >>> No, not really as such, more in little bits and pieces and
> >> discussions
> >> >>> at TSSJS and so on.  Though I think it was covered in some detail
in
> >> >>> the vision and goals writeup.  I need to do a better job of
> >> describing
> >> >>> the plugin architecture, but I've been kind of holding off until
it
> >> >>> gets out of the testing stages and I can put together a writeup
with
> >> >>> some walkthroughs and so on.  But I'll send out some documentation
on
> >> >>> it later today.
> >> >>>
> >> >>
> >> >> I think there needs to be significant discussion about this on our
> >> >> community forums.  This one has caught a few folks by surprise.
> >> >>
> >> >>>> Where is this site currently hosted?
> >> >>>
> >> >>> Erin's currently donating the hosting.
> >> >>>
> >> >>>> Will it be an ASF hosted site before the 1.1 release goes out?
> >> >>>
> >> >>> No.  Among other things, it needs to be able to host non-ASL plugins,
> >> >>> including GPL, commercial, whatever.  We really need a central
site
> >> >>> for *all* plugins, not separate places for ASL plugins and non-ASL
> >> >>> open source and non-open source plugins.
> >> >>>
> >> >>
> >> >> The hosting location is an issue.  I think this needs discussion
> >> and if
> >> >> it is going to be hosted somewhere that is non-ASF, I think an open
> >> >> source locale such as Codehaus or SourceForge would be appropriate.
 I
> >> >> personally am not happy with a link off our portal going to someone's
> >> >> personal site.  We need consensus on this.
> >> >>
> >> >>>> Where is the source for the site?
> >> >>>
> >> >>> The source for the plugins themselves is presently entirely in
the
> >> >>> Geronimo SVN tree.  To make a configuration into a plugin, you
just
> >> >>> need an extra XML descriptor, and the Geronimo packaging plugin
has
> >> >>> hooks to insert that into CARs as they are built.  However, as
new
> >> >>> plugins come in, it will no longer be the case that all the plugin
> >> >>> source is at Apache.
> >> >>>
> >> >>> The source for the web site itself is on the site.  It's not open
> >> >>> source (e.g. the images are not redistributable as such), however,
> >> >>> we'd be glad to set up accounts for any Geronimo committers who
want
> >> >>> to work on the site.  And the web site really isn't the important
> >> part
> >> >>> -- it just a way to navigate to the plugins themselves.
> >> >>
> >> >> This gets a -1 from me.  Any links off our portal should pass muster
> >> >> with the powers that be, which I believe probably should pass through
> >> >> the PMC and very likely Apache, the community, and I would hope
> >> that the
> >> >> hosting link is just as open as Geronimo/Apache is
> >> >> (Codehaus/SF/java.net, etc).  If Apache, the PMC, and everyone else
is
> >> >> ok with this, then I am willing to acquiesce based on consensus,
> >> albeit
> >> >> with great dismay.  The plugin idea is great, but the way in which
> >> this
> >> >> has gone about is not community focused.
> >> >>
> >> >> I don't mean to be the negative voice, but something this big
> >> should go
> >> >> through significant discussion with the Geronimo community before
> >> >> implementing it.
> >> >>
> >> >> I would like to hear what others think about this.
> >> >>
> >> >> Jeff
> >> >
> >>
> >>
> >
>

Mime
View raw message