Commit 5f712034 by Stéphane Graber

python3: binding update

This adds rename(new_name) to the binding as well as two new const, LXC_CLONE_KEEPBDEVTYPE and LXC_CLONE_MAYBE_SNAPSHOT. Signed-off-by: 's avatarStéphane Graber <stgraber@ubuntu.com> Acked-by: 's avatarSerge E. Hallyn <serge.hallyn@ubuntu.com>
parent c0e0d2b2
......@@ -1038,6 +1038,23 @@ Container_reboot(Container *self, PyObject *args, PyObject *kwds)
}
static PyObject *
Container_rename(Container *self, PyObject *args, PyObject *kwds)
{
char *new_name = NULL;
static char *kwlist[] = {"new_name", NULL};
if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|", kwlist,
&new_name))
return NULL;
if (self->container->rename(self->container, new_name)) {
Py_RETURN_TRUE;
}
Py_RETURN_FALSE;
}
static PyObject *
Container_remove_device_node(Container *self, PyObject *args, PyObject *kwds)
{
static char *kwlist[] = {"src_path", "dest_path", NULL};
......@@ -1529,6 +1546,12 @@ static PyMethodDef Container_methods[] = {
"\n"
"Ask the container to reboot."
},
{"rename", (PyCFunction)Container_rename,
METH_VARARGS|METH_KEYWORDS,
"rename(new_name) -> boolean\n"
"\n"
"Rename the container."
},
{"remove_device_node", (PyCFunction)Container_remove_device_node,
METH_VARARGS|METH_KEYWORDS,
"remove_device_node(src_path, dest_path) -> boolean\n"
......@@ -1740,8 +1763,10 @@ PyInit__lxc(void)
PYLXC_EXPORT_CONST(LXC_ATTACH_SET_PERSONALITY);
/* clone: clone flags */
PYLXC_EXPORT_CONST(LXC_CLONE_KEEPBDEVTYPE);
PYLXC_EXPORT_CONST(LXC_CLONE_KEEPMACADDR);
PYLXC_EXPORT_CONST(LXC_CLONE_KEEPNAME);
PYLXC_EXPORT_CONST(LXC_CLONE_MAYBE_SNAPSHOT);
PYLXC_EXPORT_CONST(LXC_CLONE_SNAPSHOT);
/* create: create flags */
......
......@@ -327,6 +327,18 @@ class Container(_lxc.Container):
return ips
def rename(self, new_name):
"""
Rename the container.
On success, returns the new Container object.
On failure, returns False.
"""
if _lxc.Container.rename(self, new_name):
return Container(new_name)
return False
def set_config_item(self, key, value):
"""
Set a config key to a provided value.
......@@ -460,8 +472,10 @@ LXC_ATTACH_REMOUNT_PROC_SYS = _lxc.LXC_ATTACH_REMOUNT_PROC_SYS
LXC_ATTACH_SET_PERSONALITY = _lxc.LXC_ATTACH_SET_PERSONALITY
# clone: clone flags
LXC_CLONE_KEEPBDEVTYPE = _lxc.LXC_CLONE_KEEPBDEVTYPE
LXC_CLONE_KEEPMACADDR = _lxc.LXC_CLONE_KEEPMACADDR
LXC_CLONE_KEEPNAME = _lxc.LXC_CLONE_KEEPNAME
LXC_CLONE_MAYBE_SNAPSHOT = _lxc.LXC_CLONE_MAYBE_SNAPSHOT
LXC_CLONE_SNAPSHOT = _lxc.LXC_CLONE_SNAPSHOT
# create: create flags
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment