Skip to content

Commit 8dbb712

Browse files
committed
identity: Use plural dest for append opts
Change-Id: I73a263a309e022b7606ced43a814a1d1914bc751 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
1 parent 43ffea5 commit 8dbb712

File tree

13 files changed

+49
-41
lines changed

13 files changed

+49
-41
lines changed

openstackclient/identity/v2_0/project.py

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ def get_parser(self, prog_name):
5959
parser.add_argument(
6060
'--property',
6161
metavar='<key=value>',
62+
dest='properties',
6263
action=parseractions.KeyValueAction,
6364
help=_(
6465
'Add a property to <name> '
@@ -79,8 +80,8 @@ def take_action(self, parsed_args):
7980
if parsed_args.disable:
8081
enabled = False
8182
kwargs = {}
82-
if parsed_args.property:
83-
kwargs = parsed_args.property.copy()
83+
if parsed_args.properties:
84+
kwargs.update(parsed_args.properties)
8485

8586
try:
8687
project = identity_client.tenants.create(
@@ -230,6 +231,7 @@ def get_parser(self, prog_name):
230231
parser.add_argument(
231232
'--property',
232233
metavar='<key=value>',
234+
dest='properties',
233235
action=parseractions.KeyValueAction,
234236
help=_(
235237
'Set a project property '
@@ -255,8 +257,8 @@ def take_action(self, parsed_args):
255257
kwargs['enabled'] = True
256258
if parsed_args.disable:
257259
kwargs['enabled'] = False
258-
if parsed_args.property:
259-
kwargs.update(parsed_args.property)
260+
if parsed_args.properties:
261+
kwargs.update(parsed_args.properties)
260262
if 'id' in kwargs:
261263
del kwargs['id']
262264
if 'name' in kwargs:
@@ -338,6 +340,7 @@ def get_parser(self, prog_name):
338340
parser.add_argument(
339341
'--property',
340342
metavar='<key>',
343+
dest='properties',
341344
action='append',
342345
default=[],
343346
help=_(
@@ -354,7 +357,7 @@ def take_action(self, parsed_args):
354357
parsed_args.project,
355358
)
356359
kwargs = project._info
357-
for key in parsed_args.property:
360+
for key in parsed_args.properties:
358361
if key in kwargs:
359362
kwargs[key] = None
360363
identity_client.tenants.update(project.id, **kwargs)

openstackclient/identity/v3/application_credential.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ def get_parser(self, prog_name):
149149
parser.add_argument(
150150
'--role',
151151
metavar='<role>',
152+
dest='roles',
152153
action='append',
153154
default=[],
154155
help=_(
@@ -208,7 +209,7 @@ def take_action(self, parsed_args):
208209
user_id = conn.config.get_auth().get_user_id(conn.identity)
209210

210211
role_ids = []
211-
for role in parsed_args.role:
212+
for role in parsed_args.roles:
212213
if is_uuid_like(role):
213214
role_ids.append({'id': role})
214215
else:

openstackclient/identity/v3/identity_provider.py

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ def get_parser(self, prog_name):
4141
identity_remote_id_provider.add_argument(
4242
'--remote-id',
4343
metavar='<remote-id>',
44+
dest='remote_ids',
4445
action='append',
4546
help=_(
4647
'Remote IDs to associate with the Identity Provider '
@@ -99,16 +100,15 @@ def get_parser(self, prog_name):
99100

100101
def take_action(self, parsed_args):
101102
identity_client = self.app.client_manager.identity
103+
remote_ids: list[str] | None = None
102104
if parsed_args.remote_id_file:
103105
file_content = utils.read_blob_file_contents(
104106
parsed_args.remote_id_file
105107
)
106108
remote_ids = file_content.splitlines()
107109
remote_ids = list(map(str.strip, remote_ids))
108-
else:
109-
remote_ids = (
110-
parsed_args.remote_id if parsed_args.remote_id else None
111-
)
110+
elif parsed_args.remote_ids:
111+
remote_ids = parsed_args.remote_ids
112112

113113
domain_id = None
114114
if parsed_args.domain:
@@ -240,6 +240,7 @@ def get_parser(self, prog_name):
240240
identity_remote_id_provider.add_argument(
241241
'--remote-id',
242242
metavar='<remote-id>',
243+
dest='remote_ids',
243244
action='append',
244245
help=_(
245246
'Remote IDs to associate with the Identity Provider '
@@ -287,8 +288,8 @@ def take_action(self, parsed_args):
287288
)
288289
remote_ids = file_content.splitlines()
289290
remote_ids = list(map(str.strip, remote_ids))
290-
elif parsed_args.remote_id:
291-
remote_ids = parsed_args.remote_id
291+
elif parsed_args.remote_ids:
292+
remote_ids = parsed_args.remote_ids
292293

293294
# Setup keyword args for the client
294295
kwargs = {}
@@ -298,7 +299,7 @@ def take_action(self, parsed_args):
298299
kwargs['enabled'] = True
299300
if parsed_args.disable:
300301
kwargs['enabled'] = False
301-
if parsed_args.remote_id_file or parsed_args.remote_id:
302+
if parsed_args.remote_id_file or parsed_args.remote_ids:
302303
kwargs['remote_ids'] = remote_ids
303304

304305
# TODO(pas-ha) actually check for 3.14 microversion

openstackclient/identity/v3/project.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,8 +73,8 @@ def get_parser(self, prog_name):
7373
parser.add_argument(
7474
'--property',
7575
metavar='<key=value>',
76-
action=parseractions.KeyValueAction,
7776
dest='properties',
77+
action=parseractions.KeyValueAction,
7878
help=_(
7979
'Add a property to <name> '
8080
'(repeat option to set multiple properties)'

openstackclient/identity/v3/tag.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ def add_tag_option_to_parser_for_set(parser, resource_name):
114114
parser.add_argument(
115115
'--remove-tag',
116116
action='append',
117+
dest='remove_tags',
117118
metavar='<tag>',
118119
default=[],
119120
help=_(
@@ -128,8 +129,8 @@ def update_tags_in_args(parsed_args, obj, args):
128129
if parsed_args.clear_tags:
129130
args['tags'] = []
130131
obj.tags = []
131-
if parsed_args.remove_tag:
132-
args['tags'] = sorted(set(obj.tags) - set(parsed_args.remove_tag))
132+
if parsed_args.remove_tags:
133+
args['tags'] = sorted(set(obj.tags) - set(parsed_args.remove_tags))
133134
return
134135
if parsed_args.tags:
135136
args['tags'] = sorted(set(obj.tags).union(set(parsed_args.tags)))

openstackclient/identity/v3/token.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ def get_parser(self, prog_name):
3737
parser.add_argument(
3838
'--role',
3939
metavar='<role>',
40+
dest='roles',
4041
action='append',
4142
default=[],
4243
required=True,
@@ -52,7 +53,7 @@ def take_action(self, parsed_args):
5253

5354
# NOTE(stevemar): We want a list of role ids
5455
roles = []
55-
for role in parsed_args.role:
56+
for role in parsed_args.roles:
5657
role_id = utils.find_resource(
5758
identity_client.roles,
5859
role,

openstackclient/identity/v3/user.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,9 +82,9 @@ def _get_options_for_user(identity_client, parsed_args):
8282
options['multi_factor_auth_enabled'] = True
8383
if parsed_args.disable_multi_factor_auth:
8484
options['multi_factor_auth_enabled'] = False
85-
if parsed_args.multi_factor_auth_rule:
85+
if parsed_args.multi_factor_auth_rules:
8686
auth_rules = [
87-
rule.split(",") for rule in parsed_args.multi_factor_auth_rule
87+
rule.split(",") for rule in parsed_args.multi_factor_auth_rules
8888
]
8989
if auth_rules:
9090
options['multi_factor_auth_rules'] = auth_rules
@@ -175,7 +175,8 @@ def _add_user_options(parser):
175175
parser.add_argument(
176176
'--multi-factor-auth-rule',
177177
metavar='<rule>',
178-
action="append",
178+
dest='multi_factor_auth_rules',
179+
action='append',
179180
default=[],
180181
help=_(
181182
'Set multi-factor auth rules. For example, to set a rule '

openstackclient/tests/unit/identity/v2_0/test_project.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ def test_project_create_property(self):
195195
self.fake_project.name,
196196
]
197197
verifylist = [
198-
('property', {'fee': 'fi', 'fo': 'fum'}),
198+
('properties', {'fee': 'fi', 'fo': 'fum'}),
199199
('name', self.fake_project.name),
200200
]
201201
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -464,7 +464,7 @@ def test_project_set_unexist_project(self):
464464
('description', None),
465465
('enable', False),
466466
('disable', False),
467-
('property', None),
467+
('properties', None),
468468
]
469469
self.projects_mock.get.side_effect = exceptions.NotFound(None)
470470
self.projects_mock.find.side_effect = exceptions.NotFound(None)
@@ -588,7 +588,7 @@ def test_project_set_property(self):
588588
self.fake_project.name,
589589
]
590590
verifylist = [
591-
('property', {'fee': 'fi', 'fo': 'fum'}),
591+
('properties', {'fee': 'fi', 'fo': 'fum'}),
592592
('project', self.fake_project.name),
593593
]
594594
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -683,7 +683,7 @@ def test_project_unset_key(self):
683683
self.fake_proj.name,
684684
]
685685
verifylist = [
686-
('property', ['fee', 'fo']),
686+
('properties', ['fee', 'fo']),
687687
]
688688
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
689689

openstackclient/tests/unit/identity/v3/test_application_credential.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ def test_application_credential_create_with_options(self):
120120
verifylist = [
121121
('name', self.application_credential.name),
122122
('secret', 'moresecuresecret'),
123-
('role', [self.roles.id]),
123+
('roles', [self.roles.id]),
124124
('expiration', '2024-01-01T00:00:00'),
125125
('description', 'credential for testing'),
126126
]

openstackclient/tests/unit/identity/v3/test_identity_provider.py

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ def test_create_identity_provider_remote_id(self):
127127
]
128128
verifylist = [
129129
('identity_provider_id', identity_fakes.idp_id),
130-
('remote_id', identity_fakes.idp_remote_ids[:1]),
130+
('remote_ids', identity_fakes.idp_remote_ids[:1]),
131131
]
132132
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
133133
columns, data = self.cmd.take_action(parsed_args)
@@ -157,7 +157,7 @@ def test_create_identity_provider_remote_ids_multiple(self):
157157
]
158158
verifylist = [
159159
('identity_provider_id', identity_fakes.idp_id),
160-
('remote_id', identity_fakes.idp_remote_ids),
160+
('remote_ids', identity_fakes.idp_remote_ids),
161161
]
162162
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
163163
columns, data = self.cmd.take_action(parsed_args)
@@ -561,7 +561,7 @@ def prepare(self):
561561
('description', new_description),
562562
('enable', False),
563563
('disable', False),
564-
('remote_id', None),
564+
('remote_ids', None),
565565
]
566566
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
567567
self.cmd.take_action(parsed_args)
@@ -597,7 +597,7 @@ def prepare(self):
597597
('description', None),
598598
('enable', False),
599599
('disable', True),
600-
('remote_id', identity_fakes.idp_remote_ids),
600+
('remote_ids', identity_fakes.idp_remote_ids),
601601
]
602602
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
603603

@@ -637,7 +637,7 @@ def prepare(self):
637637
('description', None),
638638
('enable', True),
639639
('disable', False),
640-
('remote_id', identity_fakes.idp_remote_ids),
640+
('remote_ids', identity_fakes.idp_remote_ids),
641641
]
642642
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
643643

@@ -675,7 +675,7 @@ def prepare(self):
675675
('description', None),
676676
('enable', True),
677677
('disable', False),
678-
('remote_id', [self.new_remote_id]),
678+
('remote_ids', [self.new_remote_id]),
679679
]
680680
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
681681

@@ -756,7 +756,7 @@ def prepare(self):
756756
('identity_provider', identity_fakes.idp_id),
757757
('enable', False),
758758
('disable', False),
759-
('remote_id', None),
759+
('remote_ids', None),
760760
]
761761
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
762762

@@ -776,7 +776,7 @@ def prepare(self):
776776
('identity_provider', identity_fakes.idp_id),
777777
('enable', False),
778778
('disable', False),
779-
('remote_id', None),
779+
('remote_ids', None),
780780
('authorization_ttl', 60),
781781
]
782782
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -800,7 +800,7 @@ def prepare(self):
800800
('identity_provider', identity_fakes.idp_id),
801801
('enable', False),
802802
('disable', False),
803-
('remote_id', None),
803+
('remote_ids', None),
804804
('authorization_ttl', 0),
805805
]
806806
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -816,7 +816,7 @@ def test_identity_provider_set_authttl_negative(self):
816816
('identity_provider', identity_fakes.idp_id),
817817
('enable', False),
818818
('disable', False),
819-
('remote_id', None),
819+
('remote_ids', None),
820820
('authorization_ttl', -1),
821821
]
822822
parsed_args = self.check_parser(self.cmd, arglist, verifylist)

0 commit comments

Comments
 (0)