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@lists.xensource.com
http://lists.xensource.com/xen-devel