[Kimchi-devel] [PATCH 4/5] [Memory HotPlug] Add parameters checking and documentation to memory device API
Rodrigo Trujillo
rodrigo.trujillo at linux.vnet.ibm.com
Mon May 25 21:18:25 UTC 2015
This patch add necessary restrictions to new API, avoiding and warning
user about basic mistakes.
The restriction is basically: pass "amount" parameter, which must be an
integer.
Signed-off-by: Rodrigo Trujillo <rodrigo.trujillo at linux.vnet.ibm.com>
---
docs/API.md | 16 ++++++++++++++++
src/kimchi/API.json | 14 +++++++++++++-
src/kimchi/i18n.py | 2 ++
3 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/docs/API.md b/docs/API.md
index 71f2539..4f05dc0 100644
--- a/docs/API.md
+++ b/docs/API.md
@@ -223,6 +223,22 @@ Represents a snapshot of the Virtual Machine's primary monitor.
**URI:** /vms/*:name*/snapshots/current
* **GET**: Retrieve current snapshot information for the virtual machine.
+### Sub-collection: Virtual Machine Memory Device
+**URI:** /vms/*:name*/memdevices
+* **GET**: Retrieve a list of all devices attached to given virtual machine.
+* **POST**: Attach new 1GB memory devices to virtual machine. Attach as many
+ as the amount given, and only if there are slots available.
+ * amount: An integer representing the total of GB to be attached to VM.
+
+### Sub-resource: memdevice
+**URI:** /vms/*:name*/memdevices/*:memdevice*
+* **GET**: Retrive the memory device information from VM xml.
+ ":memdevice" is the slot or position in the xml, starting from 0.
+ * slot: The slot or position in the VM xml.
+ * node: The NUMA node where the device is associated. '0' by default.
+ * size: The total of memory of the device.
+
+
### Collection: Templates
**URI:** /templates
diff --git a/src/kimchi/API.json b/src/kimchi/API.json
index a6330ae..569f8a8 100644
--- a/src/kimchi/API.json
+++ b/src/kimchi/API.json
@@ -831,6 +831,18 @@
}
},
"error": "KCHAPI0001E"
- }
+ },
+ "vmmemdevices_create": {
+ "type": "object",
+ "error": "KCHMEMDEV0003E",
+ "properties": {
+ "amount": {
+ "description": "Amount of memory in GB to be attached to VM.",
+ "type": "integer",
+ "required": true,
+ "error": "KCHMEMDEV0004E"
+ }
+ }
+ }
}
}
diff --git a/src/kimchi/i18n.py b/src/kimchi/i18n.py
index 7085530..e6e00b8 100644
--- a/src/kimchi/i18n.py
+++ b/src/kimchi/i18n.py
@@ -342,4 +342,6 @@ messages = {
"KCHMEMDEV0001E": _("Host's libvirt version does not support memory devices. Libvirt must be >= 1.2.14"),
"KCHMEMDEV0002E": _("Error attaching memory device. Details: %(error)s"),
+ "KCHMEMDEV0003E": _("Parameter 'amount' is required."),
+ "KCHMEMDEV0004E": _("Amount of memory (GB) to be attached is required and must be an integer."),
}
--
2.1.0
More information about the Kimchi-devel
mailing list