I think the plugin installer stuff might be pretty much functionally complete.

In the plugin-config.xml you can specify bits of config.xml, artifact_aliases.properties, and config-substitutions.properties. I think this might be enough installation stuff to build a server.

The car-maven-plugin now:

- constructs the geronimo-plugin.xml and processes the plan.xml.
- dependencies can be from the maven dependencies with or without versions (all compile and runtime dependencies in the current pom are included) - or dependencies can be explicitly specified in the c-m-p configuration. - bits like name, descriptions, licesnes, url, moduleId are derived from the pom with normal maven inheritance. - everything else in the geronimo-plugin.xml is derived from a template in the pom. There are 2 of these: a commonInstance you can put in a parent pom that provides defaults, and an instance that you put in the pom itself. Collections in the instance replace rather than add to stuff specified in the commonInstance. Both of these follow the plugin-artifactType but you can leave out xml namespaces. Don't have more than one of instance or commonInstance in any sequence of pom ancestors: maven interpolation doesn't work on these and will break whatever you are trying to do.

- when you build a car, the plugin will update ~/.m2/repository/ geronimo-plugins.xml with the new geronimo-plugin.xml information.

- to construct an entirely new geronimo-plugins.xml in your local maven repo run
mvn org.apache.geronimo.plugins:car-maven-plugin:create-pluginlist

I've set the default repo list to include this in the local maven repo for the jetty javaee assembly on osx. I'd like it if someone with a windows setup could test if it works on windows as well. Then we can update the tomcat configuration. To test, update and build trunk, start the jetty javaee server, and on a separate console window run java -jar bin/deployer.jar search-plugins

You should see the local maven repo listed and if you select it you should see all the cars in the server listed.

The stuff in the admin console works a little bit but still needs some TLC from someone with a clue about UIs.

thanks
david jencks

On Sep 3, 2007, at 10:55 AM, David Jencks wrote:

I've committed what I have so far:

- use new plugin schema
- generate geronimo-plugin.xml files for each car from pom.xml
- generate plan environment section from explicitly listed car- maven-plugin configuration instead of from maven dependencies. We check that each dependency listed in the maven plugin config is actually present in the maven dependencies section.
- moved car plans to src/main/plan/plan.xml
- include plan in the car for reference.

Problems/left to do:
- I haven't converted many of the car poms to actually generate the correct geronimo-plugin.xml or the correct plan, so most plans have the previously generated dependencies in them. There are a lot (nearly 100) so if anyone wants to help me update the poms that would be great. I did do a few of the cars with existing geronimo- plugin.xmls. - the xml configuration format in pom.xml is adapted for maven, not for jaxb. It would be great if we could figure out how to make the configuration in pom.xml look more like geronimo-plugins.xml or the environment element. - The cli search-plugins and console plugin installer work, but only sort of. For instance they don't show you which plugins are installed or would have problems due to prerequisite or obsoletes problems. I'm hoping someone less clueless about uis can help with this part. - in order to get this to work quickly I added jaxb dependencies to lib. I think this is really bad and hope we can figure out how to remove them again.

Let me know if I've broken other stuff :-)

thanks
david jencks


On Aug 31, 2007, at 10:28 AM, David Jencks wrote:

So I have the code compiling but now all the geronimo-plugin.xml files are in the old format... :-(

I'm going to look into generating them in the car-maven-plugin along with making a car-maven-plugin configuration that includes the dependencies more directly so we don't spend hours trying to generate them from the maven dependencies.

thanks
david jencks

suffering from feature creep...

On Aug 29, 2007, at 12:26 PM, David Jencks wrote:

I'm going to take a couple days to see if I can get the plugin installer in better shape.

My goals are:
- new schema as in GERONIMO-3330
- jaxb based
- easier to use the local maven repo as a plugin repo. This might be done by having a "scan repo and generate geronimo- plugins.xml from all the plugins we find" function. - let plugin xml contain more global bits. Right now it can contain config.xml bits, it should be able to modify other config.xml type files (offline deployer, etc) and artifact_aliases and config-substitutions properties files. The changes to the properties files need to be live so e.g. when the plugin is started the new entries get used.

thanks
david jencks





Reply via email to