[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] Re: xm, no such domain error code...



Not sure what happened to my reply, so here it is again, slightly modified.
I'll attempt to, I'm not too familiar with python.

From what it looks like the exit code is actually already defined. If you
have a look at tools/python/xen/xend/XendClient.py you will find a macro setup that sets ERROR_INVALID_DOMAIN to 3. This is also whats checked in ./tools/python/xen/xm/main.py

       if ex.faultCode == XendClient.ERROR_INVALID_DOMAIN:
           err("Domain '%s' does not exist." % ex.faultString)
       else:
           err(ex.faultString)
           _usage(cmd_name)

The problem is that at the end of this function a generic "return False, 1"
is used... I think the easiest thing to do would be to just add a line after thant err() function with "return False, ex.faultCode"

What do you think? I did this on my install and it worked perfect! 3 was returned to $?


~Shaun Reitan




Shaun R. writes ("[Xen-devel] xm, no such domain error code..."):
Right now xm will return 1 if you run `xm list non_existant_domain`

Wouldnt it be a better idea to have a specific error code for this error so that scripts wrapping around xm can better determine if the domain does not
exist or if xm just failed for whatever reason?

Yes.  Probably the right thing is to keep 1 for general failure, since
it will be too hard to track down all of the places it is used.  So we
should start new specific exit codes at 10 or 16 or something.

Would you care to prepare a suitable patch ?  I haven't looked at the
code recently but perhaps you can transform the domain not found
exception into a specific exit code in a single place.

Ian.



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.