Skip to content

Commit 8899bc4

Browse files
author
Guojian Shao
committed
fix confused domain argument for network create v2
we have used domain scope arguments --project-domain, --user-domain and --group-domain in identity commands, for example, role add v3, to prevent resources conflict from same resource name existence. To keep with the style of identity commands, it's better to rename --domain to --project-domain. Closes-Bug: #1468988 Change-Id: Ic6ccb895cf9be4a3d5f0001525e3b80cd340da8b
1 parent ec31a2a commit 8899bc4

3 files changed

Lines changed: 16 additions & 24 deletions

File tree

‎doc/source/command-objects/network.rst‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,20 +13,20 @@ Create new network
1313
.. code:: bash
1414
1515
os network create
16-
[--domain <domain>]
16+
[--project <project> [--project-domain <project-domain>]]
1717
[--enable | --disable]
18-
[--project <project>]
1918
[--share | --no-share]
2019
<name>
2120
22-
.. option:: --domain <domain>
23-
24-
Owner's domain (name or ID)
25-
2621
.. option:: --project <project>
2722
2823
Owner's project (name or ID)
2924
25+
.. option:: --project-domain <project-domain>
26+
27+
Domain the project belongs to (name or ID).
28+
This can be used in case collisions between project names exist.
29+
3030
.. option:: --enable
3131
3232
Enable network (default)

‎openstackclient/network/v2/network.py‎

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,7 @@ def get_parser(self, prog_name):
8787
'--project',
8888
metavar='<project>',
8989
help="Owner's project (name or ID)")
90-
parser.add_argument(
91-
'--domain',
92-
metavar='<domain>',
93-
help="Owner's domain (name or ID)")
90+
identity_common.add_project_domain_option_to_parser(parser)
9491
return parser
9592

9693
def take_action(self, parsed_args):
@@ -112,15 +109,11 @@ def get_body(self, parsed_args):
112109
body['shared'] = parsed_args.shared
113110
if parsed_args.project is not None:
114111
identity_client = self.app.client_manager.identity
115-
if parsed_args.domain is not None:
116-
domain = identity_common.find_domain(identity_client,
117-
parsed_args.domain)
118-
project_id = utils.find_resource(identity_client.projects,
119-
parsed_args.project,
120-
domain_id=domain.id).id
121-
else:
122-
project_id = utils.find_resource(identity_client.projects,
123-
parsed_args.project).id
112+
project_id = identity_common.find_project(
113+
identity_client,
114+
parsed_args.project,
115+
parsed_args.project_domain,
116+
).id
124117
body['tenant_id'] = project_id
125118
return {'network': body}
126119

‎openstackclient/tests/network/v2/test_network.py‎

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -90,14 +90,14 @@ def test_create_all_options(self):
9090
"--disable",
9191
"--share",
9292
"--project", identity_fakes_v3.project_name,
93-
"--domain", identity_fakes_v3.domain_name,
93+
"--project-domain", identity_fakes_v3.domain_name,
9494
FAKE_NAME,
9595
] + self.given_show_options
9696
verifylist = [
9797
('admin_state', False),
9898
('shared', True),
9999
('project', identity_fakes_v3.project_name),
100-
('domain', identity_fakes_v3.domain_name),
100+
('project_domain', identity_fakes_v3.domain_name),
101101
('name', FAKE_NAME),
102102
] + self.then_show_options
103103
mocker = mock.Mock(return_value=copy.deepcopy(RESPONSE))
@@ -165,7 +165,6 @@ def test_create_with_project_identityv2(self):
165165
arglist = [
166166
"--project", identity_fakes_v2.project_name,
167167
FAKE_NAME,
168-
169168
]
170169
verifylist = [
171170
('admin_state', True),
@@ -203,14 +202,14 @@ def test_create_with_project_identityv2(self):
203202
def test_create_with_domain_identityv2(self):
204203
arglist = [
205204
"--project", identity_fakes_v3.project_name,
206-
"--domain", identity_fakes_v3.domain_name,
205+
"--project-domain", identity_fakes_v3.domain_name,
207206
FAKE_NAME,
208207
]
209208
verifylist = [
210209
('admin_state', True),
211210
('shared', None),
212211
('project', identity_fakes_v3.project_name),
213-
('domain', identity_fakes_v3.domain_name),
212+
('project_domain', identity_fakes_v3.domain_name),
214213
('name', FAKE_NAME),
215214
]
216215
mocker = mock.Mock(return_value=copy.deepcopy(RESPONSE))

0 commit comments

Comments
 (0)