[Kimchi-devel] [PATCH 2/4] Live migration: new features changes in docs/API/i18n
dhbarboza82 at gmail.com
dhbarboza82 at gmail.com
Mon Nov 16 23:04:45 UTC 2015
From: Daniel Henrique Barboza <dhbarboza82 at gmail.com>
This patch adds:
- a new optional parameter called 'password'
in the vm_migrate API. It also sets one of the existing
parameters, 'user', as optional too.
- control/vms.py changes to support the new parameter
- added 'paramiko' and 'mock' as install/test dependencies
in README.md
- extra messages in i18n
Signed-off-by: Daniel Henrique Barboza <dhbarboza82 at gmail.com>
---
src/wok/plugins/kimchi/API.json | 6 ++++++
src/wok/plugins/kimchi/control/vms.py | 3 ++-
src/wok/plugins/kimchi/docs/API.md | 3 ++-
src/wok/plugins/kimchi/docs/README.md | 6 ++++--
src/wok/plugins/kimchi/i18n.py | 8 ++++++++
5 files changed, 22 insertions(+), 4 deletions(-)
diff --git a/src/wok/plugins/kimchi/API.json b/src/wok/plugins/kimchi/API.json
index 961f35f..e236e51 100644
--- a/src/wok/plugins/kimchi/API.json
+++ b/src/wok/plugins/kimchi/API.json
@@ -315,6 +315,7 @@
"remote_host": {
"description": "IP address or hostname of the remote server",
"type": "string",
+ "required": true,
"minLength": 1,
"error": "KCHVM0060E"
},
@@ -323,6 +324,11 @@
"type": "string",
"minLength": 1,
"error": "KCHVM0059E"
+ },
+ "password": {
+ "description": "Password of the user in the remote server",
+ "type": "string",
+ "error": "KCHVM0069E"
}
},
"additionalProperties": false
diff --git a/src/wok/plugins/kimchi/control/vms.py b/src/wok/plugins/kimchi/control/vms.py
index 5e24538..96bdb20 100644
--- a/src/wok/plugins/kimchi/control/vms.py
+++ b/src/wok/plugins/kimchi/control/vms.py
@@ -51,7 +51,8 @@ class VM(Resource):
self.clone = self.generate_action_handler_task('clone')
self.migrate = self.generate_action_handler_task('migrate',
['remote_host',
- 'user'])
+ 'user',
+ 'password'])
self.suspend = self.generate_action_handler('suspend')
self.resume = self.generate_action_handler('resume')
diff --git a/src/wok/plugins/kimchi/docs/API.md b/src/wok/plugins/kimchi/docs/API.md
index 52368b7..5f0b234 100644
--- a/src/wok/plugins/kimchi/docs/API.md
+++ b/src/wok/plugins/kimchi/docs/API.md
@@ -185,7 +185,8 @@ server.
* migrate: Migrate a virtual machine to a remote server, only support live
mode without block migration.
* remote_host: IP address or hostname of the remote server.
- * user: User to log on at the remote server.
+ * user *(optional)*: User to log on at the remote server.
+ * password *(optional)*: password of the user in the remote server.
### Sub-resource: Virtual Machine Screenshot
diff --git a/src/wok/plugins/kimchi/docs/README.md b/src/wok/plugins/kimchi/docs/README.md
index 2b0427a..16fd1e5 100644
--- a/src/wok/plugins/kimchi/docs/README.md
+++ b/src/wok/plugins/kimchi/docs/README.md
@@ -54,7 +54,7 @@ Install Dependencies
nfs-utils iscsi-initiator-utils pyparted \
python-libguestfs libguestfs-tools \
python-websockify novnc spice-html5 \
- python-configobj python-magic
+ python-configobj python-magic python-paramiko
# If using RHEL, install the following additional packages:
$ sudo yum install python-unittest2 python-ordereddict
@@ -64,6 +64,8 @@ Install Dependencies
# These dependencies are only required if you want to run the tests:
$ sudo yum install pyflakes python-pep8 python-requests
+ $ sudo pip install mock
+
*Note for RHEL users*: Some of the above packages are located in the Red Hat
EPEL repositories. See
@@ -80,7 +82,7 @@ channel at RHN Classic or Red Hat Satellite.
qemu-kvm python-parted python-ethtool sosreport \
xsltproc python-ipaddr python-lxml open-iscsi \
python-guestfs libguestfs-tools spice-html5 \
- python-magic \
+ python-magic python-paramiko \
# These dependencies are only required if you want to run the tests:
$ sudo apt-get install pep8 pyflakes python-requests
diff --git a/src/wok/plugins/kimchi/i18n.py b/src/wok/plugins/kimchi/i18n.py
index 5e9eee4..d2bc408 100644
--- a/src/wok/plugins/kimchi/i18n.py
+++ b/src/wok/plugins/kimchi/i18n.py
@@ -118,6 +118,14 @@ messages = {
"KCHVM0061E": _("Unable to create file %(path)s at %(host)s using user %(user)s."),
"KCHVM0062E": _("Unable to read disk size of %(path)s, error: %(error)s"),
"KCHVM0063E": _("Unable to create disk image %(path)s at %(host)s using user %(user)s. Error: %(error)s"),
+ "KCHVM0064E": _("Unable to migrate virtual machine to remote host %(host)s with arch %(destarch)s using localhost with arch %(srcarch)s."),
+ "KCHVM0065E": _("Unable to migrate virtual machine to remote host %(host)s with hypervisor %(desthyp)s because localhost uses hypervisor %(srchyp)s."),
+ "KCHVM0066E": _("Unable to determine remote host hypervisor and architecture. Error: %(error)s"),
+ "KCHVM0067E": _("Unable to migrate virtual machine: subcores per core setting from localhostand remote host %(host)s differs."),
+ "KCHVM0068E": _("Unable to setup password-less login at remote host %(host)s using user %(user)s. Error: %(error)s"),
+ "KCHVM0069E": _("Password field must be a string."),
+ "KCHVM0070E": _("Error creating local host ssh rsa key of user 'root'."),
+
"KCHVMHDEV0001E": _("VM %(vmid)s does not contain directly assigned host device %(dev_name)s."),
--
2.4.3
More information about the Kimchi-devel
mailing list