All,
I chatted with Max at JBoss World about requirements for what I'm code-naming JBoss Stacks, which is a really an extension of the JBoss BOMs project.
The JBoss Stacks project takes all the BOMs, all the archetypes, and all the runtimes, and identifies which work with which. This can then be used by tools (like JBDS, Forge, Maven plugins) to correctly configure users projects.
The stacks project requires 3 different dictionaries:
* available BOMs
* available archetypes
* available runtimes
and the ability to see the intersection between these things (i.e. if I'm on runtime version 1.2.3.Final, what BOMs are possible, what BOM is recommended, what archetypes are available, what is recommended).
The runtime should include a download URL, so that plugins such as James' AS plugin for forge can download it. It should also contain a some options. I'm not sure exactly what is needed here, but James can provide details and what makes most sense.
The runtimes should include what type they are (e.g. JBoss AS, EAP) to allow categorisation, filtering, sorting
The Yaml parser in use should be pluggable, to avoid introducing uncessary extra dependencies
There should be a recommended runtime per major version and per minor version (so you can say "I want JBoss AS 7" and you get back AS 7.1.1.Final or you can say "I want JBoss AS 7.0" and you get back 7.0.2.Final).
We're going to need to be careful about compat, eventually, so we need to get everything in there, and get it right. We'll have a long beta cycle ;-)
There will be a client utility, written in Java. This should be a single source file, which projects can copy in. It must have no dependencies other than a Yaml parser.
I think Rafael is going to take the lead on this. But we'll decide on Monday next week.
Pete