def take_action(self, parsed_args):
        rows = const.LISTENER_ROWS
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        validate.check_listener_attrs(attrs)

        body = {"listener": attrs}
        data = self.app.client_manager.load_balancer.listener_create(json=body)

        if parsed_args.wait:
            v2_utils.wait_for_active(
                status_f=(
                    self.app.client_manager.load_balancer.load_balancer_show),
                res_id=data['listener']['loadbalancers'][0]['id'])
            data = {
                'listener':
                (self.app.client_manager.load_balancer.listener_show(
                    data['listener']['id']))
            }

        formatters = {
            'loadbalancers': v2_utils.format_list,
            'pools': v2_utils.format_list,
            'l7policies': v2_utils.format_list,
            'insert_headers': v2_utils.format_hash,
            'allowed_cidrs': v2_utils.format_list_flat
        }

        return (rows, (utils.get_dict_properties(data['listener'],
                                                 rows,
                                                 formatters=formatters)))
    def take_action(self, parsed_args):
        rows = const.LISTENER_ROWS
        data = None
        if uuidutils.is_uuid_like(parsed_args.listener):
            try:
                data = self.app.client_manager.load_balancer.listener_show(
                    listener_id=parsed_args.listener)
            except exceptions.NotFound:
                pass
        if data is None:
            attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                                parsed_args)

            listener_id = attrs.pop('listener_id')

            data = self.app.client_manager.load_balancer.listener_show(
                listener_id=listener_id, )
        formatters = {
            'loadbalancers': v2_utils.format_list,
            'pools': v2_utils.format_list,
            'l7policies': v2_utils.format_list,
            'insert_headers': v2_utils.format_hash,
            'allowed_cidrs': v2_utils.format_list_flat
        }

        return rows, utils.get_dict_properties(data,
                                               rows,
                                               formatters=formatters)
Exemplo n.º 3
0
    def take_action(self, parsed_args):
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        self.app.client_manager.load_balancer.listener_delete(
            listener_id=listener_id)
Exemplo n.º 4
0
 def take_action(self, parsed_args):
     columns = const.QUOTA_COLUMNS
     attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                         parsed_args)
     data = self.app.client_manager.load_balancer.quota_list(**attrs)
     formatters = {'quotas': v2_utils.format_list}
     return (columns,
             (utils.get_dict_properties(s, columns, formatters=formatters)
              for s in data['quotas']))
Exemplo n.º 5
0
    def take_action(self, parsed_args):
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        body = {'listener': attrs}

        self.app.client_manager.load_balancer.listener_set(listener_id,
                                                           json=body)
    def take_action(self, parsed_args):
        rows = const.LOAD_BALANCER_STATS_ROWS
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        data = self.app.client_manager.load_balancer.listener_stats_show(
            listener_id=listener_id, )

        return (rows, (utils.get_dict_properties(data['stats'],
                                                 rows,
                                                 formatters={})))
    def take_action(self, parsed_args):
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        self.app.client_manager.load_balancer.listener_delete(
            listener_id=listener_id)

        if parsed_args.wait:
            v2_utils.wait_for_delete(
                status_f=self.app.client_manager.load_balancer.listener_show,
                res_id=listener_id)
    def take_action(self, parsed_args):
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        body = {'listener': attrs}

        self.app.client_manager.load_balancer.listener_set(listener_id,
                                                           json=body)

        if parsed_args.wait:
            v2_utils.wait_for_active(
                status_f=self.app.client_manager.load_balancer.listener_show,
                res_id=listener_id)
Exemplo n.º 9
0
    def take_action(self, parsed_args):
        rows = const.LISTENER_ROWS
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)
        body = {"listener": attrs}
        data = self.app.client_manager.load_balancer.listener_create(
            json=body)
        formatters = {'loadbalancers': v2_utils.format_list,
                      'pools': v2_utils.format_list,
                      'l7policies': v2_utils.format_list,
                      'insert_headers': v2_utils.format_hash}

        return (rows,
                (utils.get_dict_properties(data['listener'],
                                           rows,
                                           formatters=formatters)))
Exemplo n.º 10
0
    def take_action(self, parsed_args):
        rows = const.LISTENER_ROWS
        attrs = v2_utils.get_listener_attrs(self.app.client_manager,
                                            parsed_args)

        listener_id = attrs.pop('listener_id')

        data = self.app.client_manager.load_balancer.listener_show(
            listener_id=listener_id,
        )
        formatters = {'loadbalancers': v2_utils.format_list,
                      'pools': v2_utils.format_list,
                      'l7policies': v2_utils.format_list,
                      'insert_headers': v2_utils.format_hash}

        return (rows,
                (utils.get_dict_properties(data, rows, formatters=formatters)))