atom feed22 messages in net.java.dev.glassfish.adminRe: Handling commands missing from a ...
FromSent OnAttachments
Kedar MhaswadeMar 12, 2009 3:11 pm 
Lloyd ChambersMar 12, 2009 3:17 pm 
Kedar MhaswadeMar 12, 2009 3:30 pm 
Jane YoungMar 12, 2009 3:32 pm 
Ken PaulsenMar 12, 2009 3:37 pm 
Tim QuinnMar 12, 2009 3:39 pm 
Kedar MhaswadeMar 12, 2009 3:39 pm 
Kedar MhaswadeMar 12, 2009 3:44 pm 
Lloyd ChambersMar 12, 2009 3:48 pm 
Jerome DochezMar 12, 2009 3:51 pm 
Kedar MhaswadeMar 12, 2009 3:51 pm 
Kedar MhaswadeMar 12, 2009 4:00 pm 
Dixie PineMar 12, 2009 5:03 pm 
Jerome DochezMar 12, 2009 9:25 pm 
Tim QuinnMar 12, 2009 9:48 pm 
Kedar MhaswadeMar 13, 2009 11:04 am 
Jerome DochezMar 15, 2009 9:23 pm 
SahooMar 16, 2009 7:36 am 
Kedar MhaswadeMar 16, 2009 10:07 am 
Kedar MhaswadeMar 16, 2009 11:19 am 
Tim QuinnMar 17, 2009 8:52 am 
Kedar MhaswadeMar 17, 2009 11:08 am 
Subject:Re: Handling commands missing from a given distribution ...
From:Jerome Dochez (Jero@Sun.COM)
Date:Mar 12, 2009 9:25:47 pm
List:net.java.dev.glassfish.admin

On Mar 12, 2009, at 4:01 PM, Kedar Mhaswade wrote:

Hi Jerome,

Didn't know that work was underway in this area. But I am not sure if deployment is the only trigger for this.

My idea is analogous to Ubuntu, which doesn't just break on a command missing from PATH, but helps the user get to it if the command is something that it knows about! Thus, svn/git/hg/... get a special treatment, but a typo or an unknown program does not.

Thus, something special is going on there. I suspect it is communicating with the Debian package repo and doing something. Need to investigate.

Also, how would deploy command help when user tries something like "asadmin create-cluster" or "create-node-agent"?

it would not, clearly what you are proposing would be the only way to solve it. All I was saying is that, agreeing with Tim, it would be nice to support :

asadmin deploy myejb.jar

the ejb container is not installed, do you want to install it ?

and that's what deployment backend has some hooks and facilities for. This would not be something you would be able to solve with your proposal unless you would have some miracle logic. The two technologies are complementary.

I also think that solving the example above has a lot of value, because a lot of users would get into such scenario, let's face it, deploy and undeploy are probably to most used commands (with start- domain of course).

jerome

When a user tries this, asadmin knows that s/he's aware of that command (like svn) and hence we help the user get there.

-Kedar

On Mar 12, 2009, at 3:39 PM, Tim Quinn wrote:

Kedar,

This seems like a very nice usability enhancement. One possible frustration awaits users... If the system is smart enough to tell me (as the user) what *I* should do to obtain the missing piece, why doesn't it just ask me if I want *it* to do it for me?

EJB support is not currently installed. Would you like to download and install it now? [y/n]

unfortunately this is not possible through what Kedar is proposing since the generic deploy command would be the most likely trigger for that message. But I have to say this would be the most useful application of the concept "you are missing X, do you want X to be installed?". Sniffers would be a way to achieve that behaviour (that was my reason for coming up with Sniffer all together) but some work is needed to get there. jerome

I remember with not much fondness a product I used back in the '80s called TDMS from Digital (both long gone!). It had a definition language in which the word "request" figured prominently. I remember with great disgust that, encountering the misspelling "reqeust" (I was a frequent offender) its diagnostic error would complain something like

Found "reqeust." Did you mean "request?"

Infuriating.

Lloyd Chambers wrote:

It would be a nice touch.

But what is the likelihood of using a command for something that is not installed on the server (perhaps intentionally)...isn't that putting the cart before the horse?

On Mar 12, 2009, at 3:12 PM, Kedar Mhaswade wrote:

Soliciting inputs from all of you regarding this interesting problem I am seeing with modular nature of the server.

The inspiration is drawn from Ubuntu. On my Ubuntu machine, when I say "svn", it says:

The program 'svn' is currently not installed. You can install it by typing:

sudo apt-get install *subversion*

Thus, it knows the "intent" of the user and helps him/her to get there.

Wouldn't it be nice to have something similar for asadmin especially since we are in a diverse environments of distributions like web profile, full Java EE 6 profile, cluster-aware installation/domain, or just a domain that's missing certain "capabilities" that might be available in update center? e.g. you do

asadmin migrate-timers ... on a domain/installation that has no EJB support and it comes back and says:

EJB support is currently not installed. You can install it by typing pkg install glassfish-v3-ejb (or whatever that is).

I am tempted to add this as a requirement in CLI spec. What are your thoughts? If we decide to do this, we need a lot of co- ordination across teams to do this.