Yep, the current custom assembly portlet needs some love...
I agree that there are three usage scenarios, but thinking that we could handle all with the same portlet. We don't want users to start down an "application" path only to find out that they can't add additional modules (like the deployers, monitoring, ...) and have to start over and use the advanced path.
Maybe we can create a set of views that are displayed or hidden, based on how the user starts, like
1) "Create a server assembly based on a deployed application"- prompts user to choose from deployed application(s) (but hides system modules) - presents user with an "advanced options" link, to add other system modules
2) "Create a server assembly based on a profile"
- prompts user to choose from a predetermined list of profiles
- Web (our minimal assembly today)
- Web + JMS
- Web + EJB
- Web + ....
- presents user with an option to "add deployed application(s)"
- presents user with an "advanced options" link, to add other
system modules
Also, would be nice to give the option to create a local server instance (sharing the same repo), along with the existing zip/tar option....
-Donald Lin Sun wrote:
Hi, I'd like to enhance the assemble server portlet's usability. Currently it is hard to come up with a desired custom server assembly. For example, I want to create a custom server that provides similar function as tomcat. To do this, I picked the boilerplate-minimal, tomcat and tomcat-deployer to build my custom server. However, soon I found out that I am not able to deploy anything to the server, as I didn't select any plugins to enable command deployer or hot deployer or console deployer or gshell deployment. So I went back to the assemble server portlet and I saw so many plugins related to deployment, by looking at the plugins under the Deployment category- org.apache.geronimo.framework/upgrade-cli/2.1.2/car org.apache.geronimo.framework/jsr88-cli/2.1.2/car org.apache.geronimo.framework/jsr88-deploymentfactory/2.1.2/car org.apache.geronimo.framework/offline-deployer/2.1.2/car org.apache.geronimo.framework/online-deployer/2.1.2/car org.apache.geronimo.configs/jsr88-ear-configurer/2.1.2/car org.apache.geronimo.configs/jsr88-jar-configurer/2.1.2/car org.apache.geronimo.configs/jsr88-rar-configurer/2.1.2/car org.apache.geronimo.configs/jsr88-war-configurer/2.1.2/car Which one do I pick? I don't want to select any extra ones... I just want to enable command line deployer for war modules. By poking around the pom.xml files, I think I only need to select org.apache.geronimo.framework/jsr88-cli/2.1.2/car in addition to boilerplate-minimal, tomcat and tomcat-deployer. To improve the usability, I suggest the following:From the assemble server portlet, a user can choose what type ofcustomer assembly he/she wants to build: - Functional custom assembly - Application scope custom assembly - Advanced configuration Selecting "Function custom assembly" will lead to selection of key functions of the server, and we can use the category of plugins to associate functions and plugins. Instead of displaying all the plugins, we group the plugins by their function(category) and display the function only. I think it would be nice to see some explanation of each function. For example: - Geronimo Core - plugins that provide the core service of the geronimo server... - Web Services - plugins that provides the web service stack of the geronimo server... - Deployment - plugins that enables you to deploy apps onto the server... ... If desired, users have the option to see what plugins are associated with a function, such as Geronimo Core. Also, if we want to provide detailed functions, we can update the category to be more accurate, such as Deployment: Offline Deployment, Deployment : Command Line Deployer, Deployment: Hot Deploy, etc. Selecting "Application scope custom assembly" will lead to selection of custom applications deployed to the server. We can also warn our users that the custom server may not be able to deploy anything. Selecting "Advanced configuration" will lead to the current assemble server page that allows a user to select plugins from all the plugins in local server. This assumes the user knows the plugins in local server well. For all options, we should always display the pre-selected boilerplate-minimal. Comments are welcome! If there is no objection, I'll start working on this. Lin
smime.p7s
Description: S/MIME Cryptographic Signature
