def Run(self, args): client = zones_api.Client(version=self._API_VERSION) perimeter_ref = args.CONCEPTS.perimeter.Parse() result = repeated.CachedResult.FromFunc(client.Get, perimeter_ref) policies.ValidateAccessPolicyArg(perimeter_ref, args) return self.Patch( client=client, args=args, result=result, perimeter_ref=perimeter_ref, description=args.description, title=args.title, perimeter_type=perimeters.GetTypeEnumMapper( version=self._API_VERSION).GetEnumForChoice(args.type), resources=perimeters.ParseResources(args, result), restricted_services=perimeters.ParseRestrictedServices( args, result), levels=perimeters.ParseLevels(args, result, perimeter_ref.accessPoliciesId), vpc_allowed_services=perimeters.ParseVpcRestriction( args, result, self._API_VERSION), enable_vpc_accessible_services=args.enable_vpc_accessible_services, ingress_policies=perimeters.ParseUpdateDirectionalPoliciesArgs( args, self._release_track, 'ingress-policies'), egress_policies=perimeters.ParseUpdateDirectionalPoliciesArgs( args, self._release_track, 'egress-policies'))
def Run(self, args): client = zones_api.Client(version=self._API_VERSION) perimeter_ref = args.CONCEPTS.perimeter.Parse() result = repeated.CachedResult.FromFunc(client.Get, perimeter_ref) return client.Patch( perimeter_ref, description=args.description, title=args.title, perimeter_type=perimeters.GetTypeEnumMapper( version=self._API_VERSION).GetEnumForChoice(args.type), resources=perimeters.ParseResources(args, result), restricted_services=perimeters.ParseRestrictedServices(args, result), levels=perimeters.ParseLevels(args, result, perimeter_ref.accessPoliciesId))