LGTM

Thanks,

Guido


On Mon, Dec 16, 2013 at 5:50 PM, Klaus Aehlig <[email protected]> wrote:
>
>
> commit 5b1ba1d9cd553a8c6e87594aad76983193cc8e76
> Merge: 89c63fb 7bc2c09
> Author: Klaus Aehlig <[email protected]>
> Date:   Mon Dec 16 17:23:19 2013 +0100
>
>     Merge branch 'stable-2.8' into stable-2.9
>
>     * stable-2.8
>       Add support for blktap2 file-driver
>       Update opcodes test to include network tags
>       Make network tags searchable
>       Add network tag tests to QA
>       Fix RAPI network tag handling
>       Fix gnt-network list-tags
>
>     Conflicts:
>         lib/cmdlib/tags.py
>         test/py/ganeti.hypervisor.hv_xen_unittest.py
>     Resolution: manually apply the changes from stable-2.8 to
>                 the stable-2.9 code.
>
> diff --cc lib/cmdlib/tags.py
> index 91b52fe,9f85f40..b480729
> --- a/lib/cmdlib/tags.py
> +++ b/lib/cmdlib/tags.py
> @@@ -134,13 -136,15 +139,17 @@@ class LUTagsSearch(NoHooksLU)
>       """Returns the tag list.
>
>       """
>  -    cfg = self.cfg
>  -    tgts = [("/cluster", cfg.GetClusterInfo())]
>  +    tgts = [("/cluster", self.cfg.GetClusterInfo())]
> -     ilist = self.cfg.GetAllInstancesInfo().values()
> -     tgts.extend([("/instances/%s" % i.name, i) for i in ilist])
> -     nlist = self.cfg.GetAllNodesInfo().values()
> -     tgts.extend([("/nodes/%s" % n.name, n) for n in nlist])
> -     tgts.extend(("/nodegroup/%s" % n.name, n)
> -                 for n in self.cfg.GetAllNodeGroupsInfo().values())
> +
>  -    LUTagsSearch._ExtendTagTargets(tgts, "instances", 
> cfg.GetAllInstancesInfo())
>  -    LUTagsSearch._ExtendTagTargets(tgts, "nodes", cfg.GetAllNodesInfo())
> ++    LUTagsSearch._ExtendTagTargets(tgts, "instances",
> ++                                   self.cfg.GetAllInstancesInfo())
> ++    LUTagsSearch._ExtendTagTargets(tgts, "nodes",
> ++                                   self.cfg.GetAllNodesInfo())
> +     LUTagsSearch._ExtendTagTargets(tgts, "nodegroup",
>  -                                   cfg.GetAllNodeGroupsInfo())
>  -    LUTagsSearch._ExtendTagTargets(tgts, "network", 
> cfg.GetAllNetworksInfo())
> ++                                   self.cfg.GetAllNodeGroupsInfo())
> ++    LUTagsSearch._ExtendTagTargets(tgts, "network",
> ++                                   self.cfg.GetAllNetworksInfo())
> +
>       results = []
>       for path, target in tgts:
>         for tag in target.GetTags():
> diff --cc lib/constants.py
> index e09f7b6,1453104..3c8e072
> --- a/lib/constants.py
> +++ b/lib/constants.py
> @@@ -609,8 -615,12 +609,9 @@@ RBD_CMD = "rbd
>   # file backend driver
>   FD_LOOP = "loop"
>   FD_BLKTAP = "blktap"
> + FD_BLKTAP2 = "blktap2"
>   FD_DEFAULT = FD_LOOP
>
>  -# the set of drbd-like disk types
>  -LDS_DRBD = compat.UniqueFrozenset([LD_DRBD8])
>  -
>   # disk access mode
>   DISK_RDONLY = "ro"
>   DISK_RDWR = "rw"
> diff --cc man/gnt-instance.rst
> index 9189748,b652d5e..75914bb
> --- a/man/gnt-instance.rst
> +++ b/man/gnt-instance.rst
> @@@ -37,10 -37,10 +37,10 @@@ AD
>   | [{-B|\--backend-parameters} *BEPARAMS*]
>   | [{-H|\--hypervisor-parameters} *HYPERVISOR* [: option=*value*... ]]
>   | [{-O|\--os-parameters} *param*=*value*... ]
> - | [\--file-storage-dir *dir\_path*] [\--file-driver {loop \| blktap}]
> + | [\--file-storage-dir *dir\_path*] [\--file-driver {loop \| blktap \| 
> blktap2}]
>   | {{-n|\--node} *node[:secondary-node]* \| {-I|\--iallocator} *name*}
>   | {{-o|\--os-type} *os-type*}
>  -| [\--submit]
>  +| [\--submit] [\--print-job-id]
>   | [\--ignore-ipolicy]
>   | {*instance*}
>
> diff --cc test/py/ganeti.hypervisor.hv_xen_unittest.py
> index 0c88891,15e4391..b3d0e06
> --- a/test/py/ganeti.hypervisor.hv_xen_unittest.py
> +++ b/test/py/ganeti.hypervisor.hv_xen_unittest.py
> @@@ -302,16 -265,19 +302,19 @@@ class TestGetConfigFileDiskData(unittes
>
>     def testFileDisks(self):
>       disks = [
>  -      (objects.Disk(dev_type=constants.LD_FILE, mode=constants.DISK_RDWR,
>  +      (objects.Disk(dev_type=constants.DT_FILE, mode=constants.DISK_RDWR,
>                       physical_id=[constants.FD_LOOP]),
>          "/tmp/diskFirst"),
>  -      (objects.Disk(dev_type=constants.LD_FILE, mode=constants.DISK_RDONLY,
>  +      (objects.Disk(dev_type=constants.DT_FILE, mode=constants.DISK_RDONLY,
>                       physical_id=[constants.FD_BLKTAP]),
>          "/tmp/diskTwo"),
>  -      (objects.Disk(dev_type=constants.LD_FILE, mode=constants.DISK_RDWR,
>  +      (objects.Disk(dev_type=constants.DT_FILE, mode=constants.DISK_RDWR,
>                       physical_id=[constants.FD_LOOP]),
>          "/tmp/diskThree"),
>  -      (objects.Disk(dev_type=constants.LD_FILE, mode=constants.DISK_RDONLY,
> ++      (objects.Disk(dev_type=constants.DT_FILE, mode=constants.DISK_RDONLY,
> +                     physical_id=[constants.FD_BLKTAP2]),
> +        "/tmp/diskFour"),
>  -      (objects.Disk(dev_type=constants.LD_FILE, mode=constants.DISK_RDWR,
>  +      (objects.Disk(dev_type=constants.DT_FILE, mode=constants.DISK_RDWR,
>                       physical_id=[constants.FD_BLKTAP]),
>          "/tmp/diskLast"),
>         ]
>
> --
> Klaus Aehlig
> Google Germany GmbH, Dienerstr. 12, 80331 Muenchen
> Registergericht und -nummer: Hamburg, HRB 86891
> Sitz der Gesellschaft: Hamburg
> Geschaeftsfuehrer: Graham Law, Christine Elizabeth Flores



-- 
Guido Trotter
Ganeti Engineering
Google Germany GmbH
Dienerstr. 12, 80331, München

Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Geschäftsführer: Graham Law, Christine Elizabeth Flores
Steuernummer: 48/725/00206
Umsatzsteueridentifikationsnummer: DE813741370

Reply via email to