[Kimchi-devel] [PATCH 1/3] Prohibits slashes '/' in VM name

Aline Manera alinefm at linux.vnet.ibm.com
Thu Mar 26 19:41:10 UTC 2015


Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>

On 24/03/2015 13:46, Rodrigo Trujillo wrote:
> This patch adds a pattern to checks if vm name has slashes. It also
> replace slashes from template name by dashes, case user does not give
> any name to the new VM.
>
> Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo at linux.vnet.ibm.com>
> ---
>   src/kimchi/API.json       | 2 ++
>   src/kimchi/i18n.py        | 2 +-
>   src/kimchi/model/utils.py | 3 ++-
>   3 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/src/kimchi/API.json b/src/kimchi/API.json
> index f507251..2455745 100644
> --- a/src/kimchi/API.json
> +++ b/src/kimchi/API.json
> @@ -228,6 +228,7 @@
>                   "name": {
>                       "description": "The name of the new VM",
>                       "type": "string",
> +                    "pattern": "^[^/]*$",
>                       "error": "KCHVM0011E"
>                   },
>                   "template": {
> @@ -252,6 +253,7 @@
>                   "name": {
>                       "description": "New name of VM",
>                       "type": "string",
> +                    "pattern": "^[^/]*$",
>                       "minLength": 1,
>                       "error": "KCHVM0011E"
>                   },
> diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
> index e4e1a89..7c11016 100644
> --- a/src/kimchi/i18n.py
> +++ b/src/kimchi/i18n.py
> @@ -83,7 +83,7 @@ messages = {
>       "KCHVM0008E": _("Unable to update virtual machine %(name)s. Details: %(err)s"),
>       "KCHVM0009E": _("Unable to retrieve virtual machine %(name)s. Details: %(err)s"),
>       "KCHVM0010E": _("Unable to connect to powered off virtual machine %(name)s."),
> -    "KCHVM0011E": _("Virtual machine name must be a string"),
> +    "KCHVM0011E": _("Virtual machine name must be a string without slashes (/)"),
>       "KCHVM0012E": _("Invalid template URI %(value)s specified for virtual machine"),
>       "KCHVM0013E": _("Invalid storage pool URI %(value)s specified for virtual machine"),
>       "KCHVM0014E": _("Supported virtual machine graphics are Spice or VNC"),
> diff --git a/src/kimchi/model/utils.py b/src/kimchi/model/utils.py
> index 9896289..80e7da0 100644
> --- a/src/kimchi/model/utils.py
> +++ b/src/kimchi/model/utils.py
> @@ -34,7 +34,8 @@ def get_vm_name(vm_name, t_name, name_list):
>       if vm_name:
>           return vm_name
>       for i in xrange(1, 1000):
> -        vm_name = "%s-vm-%i" % (t_name, i)
> +        # VM will have templace name, but without slashes
> +        vm_name = "%s-vm-%i" % (t_name.replace('/', '-'), i)
>           if vm_name not in name_list:
>               return vm_name
>       raise OperationFailed("KCHUTILS0003E")




More information about the Kimchi-devel mailing list