Description of problem: Changes to /usr/lib/python2.4/site-packages/virtinst/XenGuest.py have changed the behavior of virt-install in a way that I find irritating. Our Xen guests have a hyphen in their names, but virt-install rejects any name that has a hyphen in it now. It was not this way in python-virtinst-0.95.0-1.fc6 , but it is so in python-virtinst-0.98.0-1.fc6 . I traced the error back to this chunk of /usr/lib/python2.4/site-packages/virtinst/XenGuest.py : def set_name(self, val): # FIXME: need some validation here if re.match("^[a-zA-Z0-9_]*$", val) == None: raise ValueError, "Domain name must be alphanumeric or _" This is unfortunate, because this new code restricts virtual machine names to alphanumeric characters and the underscore. Now, a hyphen is a valid character in a DNS A record (while an underscore character is not). I like my Xen guest OS domain names to match their DNS names for obvious reasons. XenGuest.py should allow any characters allowed in DNS names as a minimum. Version-Release number of selected component (if applicable): python-virtinst-0.98.0-1.fc6 How reproducible: Try supplying a hyphenated name to virt-install, either on the command line with the -n argument, or manually when virt-install prompts for a name. It will reject any name with a hyphen in it. Steps to Reproduce: 1. virt-install -n host-name Actual results: ERROR: Domain name must be alphanumeric or _ Expected results: Completed virt-install with no errors Additional info: There is a workaround: I created the virtual machine with an underscore in the name instead of a hyphen. After the virt-install process and Kickstart were finished, I renamed the /etc/xen/host_name file to /etc/xen/host-name. Then I started the virtual machine and it is fine.
The regex is just a bit too restrictive. You should be able to add - to it without problems and I've done so in hg, will be in the next build.
Thanks, Jeremy, for the quick response. One last note on the workaround I supplied above: you should also edit the /etc/xen/host-name file and change the line that reads name = host_name to read name = host-name
Fixed at http://hg.et.redhat.com/virt/applications/virtinst--devel?cs=aec5777422c0. Sorry for the delay. Will close this when we release next. --Hugh