[Kimchi-devel] [PATCH][Kimchi 3/5] Update REST API
Rodrigo Trujillo
rodrigo.trujillo at linux.vnet.ibm.com
Wed Jun 8 19:44:11 UTC 2016
Hi Ramon,
yes, it is possible to use ENUM (with a little trick )... please,
analyze and try this schema:
********************************************************************
"boot": {
"description": "Boot order and bootmenu configuration",
"type": "object",
"error": "KCHVM0052E",
"properties": {
"order": {
"description": "Boot order",
"type": "array",
"error": "KCHVM0053E",
"items": [
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
}
],
"minItems": 1,
"additionalItems": false,
"uniqueItems": true
}
},
"additionalProperties": false,
"required": ["order"]
}
********************************************************************
In my tests out of Kimchi it worked , but it accepts "boot" empty
("minProperties: 1" did not work).
So you have to treat this in the code.
Let me know.
Rodrigo Trujillo
On 06/08/2016 02:46 PM, Ramon Medeiros wrote:
>
>
> On 06/07/2016 10:02 AM, Rodrigo Trujillo wrote:
>>
>>
>> On 06/06/2016 06:13 PM, Ramon Medeiros wrote:
>>> Signed-off-by: Ramon Medeiros <ramonn at linux.vnet.ibm.com>
>>> ---
>>> API.json | 12 ++++++++++++
>>> i18n.py | 2 ++
>>> 2 files changed, 14 insertions(+)
>>>
>>> diff --git a/API.json b/API.json
>>> index 8d4f725..d0e6831 100644
>>> --- a/API.json
>>> +++ b/API.json
>>> @@ -294,6 +294,18 @@
>>> "minLength": 1,
>>> "error": "KCHVM0011E"
>>> },
>>> + "boot": {
>>> + "description": "Boot order and bootmenu
>>> configuration",
>>> + "type": "object",
>>> + "error": "KCHVM0052E",
>>> + "properties": {
>>> + "order": {
>>> + "description": "Boot order",
>>> + "type": "array",
>>> + "error": "KCHVM0053E"
>> Here you can use ENUM and restrict the options accepted. See the
>> graphics schema a
> I can't use enum, it returns error all time because this patch is to
> add the boot order, not the first device.
>
> Enum seems to be usable to fixed options, like at VNC. I was not able
> to use in this case
>> nd:
>> http://spacetelescope.github.io/understanding-json-schema/reference/array.html
>>
>>
>>> + }
>>> + }
>>> + },
>>> "users": {
>>> "description": "Array of users who have
>>> permission to the VM",
>>> "type": "array",
>>> diff --git a/i18n.py b/i18n.py
>>> index 2d8390f..ec060ae 100644
>>> --- a/i18n.py
>>> +++ b/i18n.py
>>> @@ -103,6 +103,8 @@ messages = {
>>> "KCHVM0049E": _("Cannot power off %(name)s. Virtual machine is
>>> shut off."),
>>> "KCHVM0050E": _("Cannot shutdown %(name)s. Virtual machine is
>>> shut off."),
>>> "KCHVM0051E": _("Cannot reset %(name)s. Virtual machine is
>>> already shut off."),
>>> + "KCHVM0052E": _("Boot configuration must have order list"),
>>> + "KCHVM0053E": _("Boot order must be a list of the devices"),
>> I think the messages must be clearer. Like:
>> "Boot configuration must receive a list of devices in the boot order"
>> "Boot order must be a list of devices among ['network', 'hd', ...]"
>>
>>>
>>> "KCHVM0055E": _("Migrate to localhost %(host)s is not allowed."),
>>> "KCHVM0056E": _("To migrate a virtual machine to the remote
>>> host %(host)s the user %(user)s must have password-less login to the
>>> remote host."),
>>
>> _______________________________________________
>> Kimchi-devel mailing list
>> Kimchi-devel at ovirt.org
>> http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>>
>
More information about the Kimchi-devel
mailing list