diff options
Diffstat (limited to 'openstackclient/identity')
| -rw-r--r-- | openstackclient/identity/v3/identity_provider.py | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/openstackclient/identity/v3/identity_provider.py b/openstackclient/identity/v3/identity_provider.py index 2b2d9d11..7307cea0 100644 --- a/openstackclient/identity/v3/identity_provider.py +++ b/openstackclient/identity/v3/identity_provider.py @@ -143,10 +143,32 @@ class DeleteIdentityProvider(command.Command): class ListIdentityProvider(command.Lister): _description = _("List identity providers") + def get_parser(self, prog_name): + parser = super(ListIdentityProvider, self).get_parser(prog_name) + parser.add_argument( + '--id', + metavar='<id>', + help=_('The Identity Providers’ ID attribute'), + ) + parser.add_argument( + '--enabled', + dest='enabled', + action='store_true', + help=_('The Identity Providers that are enabled will be returned'), + ) + return parser + def take_action(self, parsed_args): columns = ('ID', 'Enabled', 'Domain ID', 'Description') identity_client = self.app.client_manager.identity - data = identity_client.federation.identity_providers.list() + + kwargs = {} + if parsed_args.id: + kwargs['id'] = parsed_args.id + if parsed_args.enabled: + kwargs['enabled'] = True + + data = identity_client.federation.identity_providers.list(**kwargs) return (columns, (utils.get_item_properties( s, columns, |
