[Kimchi-devel] [PATCH v6 (BACKEND) 5/5] Storagepool SCSI/FC: Modify backend errors messages to use i18n system
Aline Manera
alinefm at linux.vnet.ibm.com
Thu Feb 13 22:25:47 UTC 2014
Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>
I will join this patch to those when the changes were made at first time
before applying
On 02/13/2014 04:33 PM, Rodrigo Trujillo wrote:
> This patch modifies the backend error exception return messages to use
> i18n.py and be tranlatable.
>
> Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo at linux.vnet.ibm.com>
> ---
> src/kimchi/API.json | 6 ++++--
> src/kimchi/i18n.py | 4 ++++
> src/kimchi/mockmodel.py | 5 +++--
> src/kimchi/model/host.py | 2 +-
> src/kimchi/model/vms.py | 2 +-
> 5 files changed, 13 insertions(+), 6 deletions(-)
>
> diff --git a/src/kimchi/API.json b/src/kimchi/API.json
> index 84a9da7..f93f540 100644
> --- a/src/kimchi/API.json
> +++ b/src/kimchi/API.json
> @@ -92,7 +92,8 @@
> },
> "adapter_name": {
> "description": "SCSI host name",
> - "type": "string"
> + "type": "string",
> + "error": "KCHPOOL0030E"
> },
> "auth": {
> "description": "Storage back-end authentication information",
> @@ -157,7 +158,8 @@
> "description": "list of scsi volumes to be assigned to the new VM.",
> "type": "array",
> "items": { "type": "string" },
> - "uniqueItems": true
> + "uniqueItems": true,
> + "error": "KCHVM0018E"
> }
> }
> },
> diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
> index 03d1052..603adab 100644
> --- a/src/kimchi/i18n.py
> +++ b/src/kimchi/i18n.py
> @@ -73,6 +73,8 @@ messages = {
> "KCHVM0014E": _("Supported virtual machine graphics are spice or VNC"),
> "KCHVM0015E": _("Graphics address to listen on must be IPv4 or IPv6"),
> "KCHVM0016E": _("Specify a template to create a virtual machine from"),
> + "KCHVM0017E": _("Volume list (LUNs names) not given."),
> + "KCHVM0018E": _("Virtual machine volumes must be a list of strings with distinct LUNs names."),
>
> "KCHVMIF0001E": _("Interface %(iface)s does not exist in virtual machine %(name)s"),
> "KCHVMIF0002E": _("Network %(network)s specified for virtual machine %(name)s does not exist"),
> @@ -129,6 +131,7 @@ messages = {
> "KCHPOOL0027E": _("%(disk)s is not a valid disk/partition. Could not add it to the pool %(pool)s."),
> "KCHPOOL0028E": _("Error while extending logical pool %(pool)s. Details: %(err)s"),
> "KCHPOOL0029E": _("The parameter disks only can be updated for logical storage pool."),
> + "KCHPOOL0030E": _("The SCSI host adapter name must be a string."),
>
> "KCHVOL0001E": _("Storage volume %(name)s already exists"),
> "KCHVOL0002E": _("Storage volume %(name)s does not exist in storage pool %(pool)s"),
> @@ -175,6 +178,7 @@ messages = {
>
> "KCHHOST0001E": _("Unable to shutdown host machine as there are running virtual machines"),
> "KCHHOST0002E": _("Unable to reboot host machine as there are running virtual machines"),
> + "KCHHOST0003E": _("Node device '%(name)s' not found"),
>
> "KCHOBJST0001E": _("Unable to find %(item)s in datastore"),
>
> diff --git a/src/kimchi/mockmodel.py b/src/kimchi/mockmodel.py
> index 98715af..481498f 100644
> --- a/src/kimchi/mockmodel.py
> +++ b/src/kimchi/mockmodel.py
> @@ -160,7 +160,7 @@ class MockModel(object):
> if pool.info['type'] == 'scsi':
> vm.disk_paths = []
> if not params.get('volumes'):
> - raise MissingParameter("Volume list (LUNs names) not given.")
> + raise MissingParameter('KCHVM0017E')
> for vol in params['volumes']:
> vm.disk_paths.append({'pool': pool.name,
> 'volume': vol})
> @@ -315,7 +315,8 @@ class MockModel(object):
> pool.info['path'] = '/dev/disk/by-path'
> pool.info['source'] = params['source']
> if not pool.info['source'].get('adapter_name'):
> - raise MissingParameter('adapter_name')
> + raise MissingParameter('KCHPOOL0004E',
> + {'item': 'adapter_name', 'name': name})
> for vol in ['unit:0:0:1','unit:0:0:2',
> 'unit:0:0:3','unit:0:0:4']:
> mockvol = MockStorageVolume(name, vol,
> diff --git a/src/kimchi/model/host.py b/src/kimchi/model/host.py
> index bc75ec4..514f672 100644
> --- a/src/kimchi/model/host.py
> +++ b/src/kimchi/model/host.py
> @@ -244,7 +244,7 @@ class DeviceModel(object):
> try:
> dev_xml = conn.nodeDeviceLookupByName(nodedev_name).XMLDesc(0)
> except:
> - raise NotFoundError('Node device "%s" not found' % nodedev_name)
> + raise NotFoundError('KCHHOST0003E', {'name': nodedev_name})
> cap_type = xmlutils.xpath_get_text(
> dev_xml, '/device/capability/capability/@type')
> wwnn = xmlutils.xpath_get_text(
> diff --git a/src/kimchi/model/vms.py b/src/kimchi/model/vms.py
> index a215352..d8807ec 100644
> --- a/src/kimchi/model/vms.py
> +++ b/src/kimchi/model/vms.py
> @@ -197,7 +197,7 @@ class VMsModel(object):
> vol_list = []
> if t._get_storage_type() == 'scsi':
> if not params.get('volumes'):
> - raise MissingParameter("Volume list (LUNs names) not given.")
> + raise MissingParameter('KCHVM0017E')
> else:
> # Get system path of the LUNs
> pool = t.info['storagepool'].split('/')[-1]
More information about the Kimchi-devel
mailing list