I imagine that once the regexps in trove/common/apischema.py are fixed for password + host + user, that is_valid + is_valid_user + is_valid_host_name are semi-redundant.
If you want to take it a step further, you could also take a look at MySQLDatabase and fix the inconsistencies there (ex: name has a check for > 64 chars, yet apischema.py permits 255, charset checks, etc.)
It looks like there was existing validation for the host in MySQLUser (See https:/ /github. com/openstack/ trove/blob/ master/ trove/guestagen t/db/models. py#L350)
I imagine that once the regexps in trove/common/ apischema. py are fixed for password + host + user, that is_valid + is_valid_user + is_valid_host_name are semi-redundant.
If you want to take it a step further, you could also take a look at MySQLDatabase and fix the inconsistencies there (ex: name has a check for > 64 chars, yet apischema.py permits 255, charset checks, etc.)