Esempio n. 1
0
  def testComplex(self):
    resource_registry = resources.REGISTRY.Clone()
    resource_registry.RegisterApiByName('compute', 'v1')

    args = MockArgs(
        filter=None,
        page_size=None,
        limit=None,
        names=None,
        regexp=None,
        zones=['my-zone-1', 'my-zone-2'],
    )

    zone1 = resource_registry.Parse(
        'https://compute.googleapis.com/compute/v1/projects/'
        'lister-project/zones/my-zone-1')

    zone2 = resource_registry.Parse(
        'https://compute.googleapis.com/compute/v1/projects/'
        'lister-project/zones/my-zone-2')

    frontend = lister.ParseZonalFlags(args, resource_registry)

    self.assertEqual(args.filter, '(zone :(my-zone-1 my-zone-2))')
    self.assertEqual(frontend.filter, None)
    self.assertIsNone(frontend.max_results)
    self.assertEqual(frontend.scope_set, lister.ZoneSet([zone1, zone2]))
Esempio n. 2
0
    def Run(self, args):
        holder = base_classes.ComputeApiHolder(self.ReleaseTrack())
        client = holder.client

        request_data = lister.ParseZonalFlags(args, holder.resources)

        list_implementation = lister.ZonalLister(client,
                                                 client.apitools_client.disks)

        return lister.Invoke(request_data, list_implementation)
Esempio n. 3
0
    def Run(self, args):
        holder = base_classes.ComputeApiHolder(self.ReleaseTrack())
        client = holder.client

        request_data = lister.ParseZonalFlags(args, holder.resources)

        list_implementation = lister.ZonalParallelLister(
            client,
            client.apitools_client.instances,
            holder.resources,
            allow_partial_server_failure=True)

        return lister.Invoke(request_data, list_implementation)
Esempio n. 4
0
    def Run(self, args):
        holder = base_classes.ComputeApiHolder(self.ReleaseTrack())
        client = holder.client

        request_data = lister.ParseZonalFlags(args, holder.resources)

        list_implementation = lister.ZonalLister(
            client, client.apitools_client.instanceGroups)

        results = lister.Invoke(request_data, list_implementation)
        results = (resource for resource in results if 'zone' in resource)

        return instance_groups_utils.ComputeInstanceGroupManagerMembership(
            compute_holder=holder,
            items=results,
            filter_mode=instance_groups_utils.InstanceGroupFilteringMode.
            ONLY_UNMANAGED_GROUPS)
Esempio n. 5
0
  def testSimple(self):
    resource_registry = resources.REGISTRY.Clone()
    resource_registry.RegisterApiByName('compute', 'v1')

    project = resource_registry.Parse(
        'https://compute.googleapis.com/compute/v1/projects/lister-project')

    args = MockArgs(
        filter=None,
        page_size=None,
        limit=None,
        names=None,
        regexp=None,
        zones=[],
    )

    frontend = lister.ParseZonalFlags(args, resource_registry)

    self.assertEqual(args.filter, None)
    self.assertEqual(frontend.filter, None)
    self.assertIsNone(frontend.max_results)
    self.assertEqual(frontend.scope_set,
                     lister.AllScopes(
                         projects=[project], zonal=True, regional=False))