Attempting to use Dashboard to create a security group whose name contains an '@' (at) character fails.
Similar symptom and probably same root cause as bug #1224576 'Security group names cannot contain spaces': Django's 'validate_slug' validator only accepts letters, numbers, underscores and hyphens.
The purpose of this dashboard-level validation remains obscure to me. Is anyone able to explain the intent of this validation?
I can create security groups with names that contain an '@' character from the command line using "nova secgroup-create '@foo' bar", and after I've done so, Horizon seems functional so far - it can show and can even delete such a security group. It just can't create them.
I don't think validate_slug is the appropriate validator for these data.
Also, does 'validate_slug' really accept *all* "characters" as its documentation states? I am dubious.
What's a 'character' in this context, anyway?
Is a string consisting of a mixture of East Asian wide characters, Unicode private-use area characters that I personally intended to be interpreted as Klingon, and a Euro character for good measure, a valid security-group name?
These are all "characters" as defined by ISO-10646.
If a Django character is not the same as an ISO-10646 character, then I'd like to know what the differences are.
Actually its documentation says "letters", not "characters". So I'm wondering how a letter is different to a character, if it is.