[libvirt] [test-API][PATCH] Add 3 APIs in snapshotAPI

Guannan Ren gren at redhat.com
Mon Feb 13 11:23:06 UTC 2012


On 02/13/2012 05:03 PM, Wayne Sun wrote:
>    * new APIs
>      get_parent(self, domname, snapname, flag = 0)
>      children_num(self, domname, snapname, flag)
>      children_names_list(self, domname, snapname, flag)
>
>      the flag in children_num and children_names_list could be in 0-7,
>      which is the OR operation result of
>      (VIR_DOMAIN_SNAPSHOT_LIST_DESCENDANTS |
>       VIR_DOMAIN_SNAPSHOT_LIST_METADATA |
>       VIR_DOMAIN_SNAPSHOT_LIST_LEAVES)
>
>    * deleted redundancy spaces and fixed a typo in function domain()
>
>    * getConnect(), getDomain() and getName() API are not added in,
>      current snapshotAPI requires user to offer connection obj, domain
>      name and snapshot name.
> ---
>   lib/snapshotAPI.py |   59 ++++++++++++++++++++++++++++++++++++++++-----------
>   1 files changed, 46 insertions(+), 13 deletions(-)
>
> diff --git a/lib/snapshotAPI.py b/lib/snapshotAPI.py
> index 43ccb89..d866b60 100644
> --- a/lib/snapshotAPI.py
> +++ b/lib/snapshotAPI.py
> @@ -24,14 +24,14 @@ import libvirt
>   import re
>   import os
>
> -def append_path(path):
> +def append_path(path):
>       """Append root path of package"""
>       if path in sys.path:
>           pass
>       else:
>           sys.path.append(path)
> -
> -pwd = os.getcwd()
> +
> +pwd = os.getcwd()
>   result = re.search('(.*)libvirt-test-API', pwd)
>   append_path(result.group(0))
>
> @@ -39,7 +39,7 @@ import exception
>
>   class SnapshotAPI(object):
>       def __init__(self, connection):
> -        self.conn = connection
> +        self.conn = connection
>
>       def create(self, domname, xml_desc, flag = 0):
>   	try:
> @@ -57,7 +57,7 @@ class SnapshotAPI(object):
>           except libvirt.libvirtError, e:
>               message = e.get_error_message()
>               code = e.get_error_code()
> -            raise exception.LibvirtAPI(message, code)
> +            raise exception.LibvirtAPI(message, code)
>
>       def snapshot_name_list(self, domname, flag = 0):
>           try:
> @@ -66,7 +66,7 @@ class SnapshotAPI(object):
>           except libvirt.libvirtError, e:
>               message = e.get_error_message()
>               code = e.get_error_code()
> -            raise exception.LibvirtAPI(message, code)
> +            raise exception.LibvirtAPI(message, code)
>
>       def snapshot_nums(self, domname, flag = 0):
>           try:
> @@ -95,31 +95,64 @@ class SnapshotAPI(object):
>               message = e.get_error_message()
>               code = e.get_error_code()
>               raise exception.LibvirtAPI(message, code)
> -
> +
>       def delete(self, domname, snapname, flag = 0):
>           try:
> -            snap = self.snapshot_lookup_by_name(domname, snapname, flag = 0)
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
>               return snap.delete(flag)
>           except libvirt.libvirtError, e:
>               message = e.get_error_message()
>               code = e.get_error_code()
> -            raise exception.LibvirtAPI(message, code)
> +            raise exception.LibvirtAPI(message, code)
>
>       def get_xml_desc(self, domname, snapname, flag = 0):
>           try:
> -            snap = self.snapshot_lookup_by_name(domname, snapname, flag = 0)
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
>               return snap.getXMLDesc(flag)
>           except libvirt.libvirtError, e:
>               message = e.get_error_message()
>               code = e.get_error_code()
>               raise exception.LibvirtAPI(message, code)
>
> -    def domain(self, domname):
> +    def domain(self, domname, snapname):
>           try:
> -            snap = self.snapshot_lookup_by_name(domname, snapname, flag = 0)
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
>               return  snap.domain()
>           except libvirt.libvirtError, e:
>               message = e.get_error_message()
>               code = e.get_error_code()
>               raise exception.LibvirtAPI(message, code)
> -
> +
> +    def get_parent(self, domname, snapname, flag = 0):
> +        try:
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
> +            return  snap.getParent(flag)
> +        except libvirt.libvirtError, e:
> +            message = e.get_error_message()
> +            code = e.get_error_code()
> +            raise exception.LibvirtAPI(message, code)
> +
> +    def children_num(self, domname, snapname, flag):
> +        try:
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
> +            return snap.numChildren(flag)
> +        except libvirt.libvirtError, e:
> +            message = e.get_error_message()
> +            code = e.get_error_code()
> +            raise exception.LibvirtAPI(message, code)
> +
> +    def children_names_list(self, domname, snapname, flag):
> +        try:
> +            snap = self.snapshot_lookup_by_name(domname, snapname)
> +            return snap.listChildrenNames(flag)
> +        except libvirt.libvirtError, e:
> +            message = e.get_error_message()
> +            code = e.get_error_code()
> +            raise exception.LibvirtAPI(message, code)
> +
> +# virDomainSnapshotListFlags
> +VIR_DOMAIN_SNAPSHOT_LIST_DESCENDANTS = 1
> +VIR_DOMAIN_SNAPSHOT_LIST_ROOTS = 1
> +VIR_DOMAIN_SNAPSHOT_LIST_METADATA = 2
> +VIR_DOMAIN_SNAPSHOT_LIST_LEAVES = 4
> +

     ACK




More information about the libvir-list mailing list