File tree Expand file tree Collapse file tree
doc/source/command-objects Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -46,3 +46,19 @@ Create new address scope
4646.. describe:: <name>
4747
4848 New address scope name
49+
50+ address scope delete
51+ --------------------
52+
53+ Delete an address scope
54+
55+ .. program:: address scope delete
56+ .. code:: bash
57+
58+ os address scope delete
59+ <address-scope>
60+
61+ .. _address_scope_delete-address-scope:
62+ .. describe:: <address-scope>
63+
64+ Address scope to delete (name or ID)
Original file line number Diff line number Diff line change @@ -94,3 +94,22 @@ def take_action(self, parsed_args):
9494 data = utils .get_item_properties (obj , columns , formatters = {})
9595
9696 return columns , data
97+
98+
99+ class DeleteAddressScope (command .Command ):
100+ """Delete an address scope"""
101+
102+ def get_parser (self , prog_name ):
103+ parser = super (DeleteAddressScope , self ).get_parser (prog_name )
104+ parser .add_argument (
105+ 'address_scope' ,
106+ metavar = "<address-scope>" ,
107+ help = _ ("Address scope to delete (name or ID)" )
108+ )
109+
110+ return parser
111+
112+ def take_action (self , parsed_args ):
113+ client = self .app .client_manager .network
114+ obj = client .find_address_scope (parsed_args .address_scope )
115+ client .delete_address_scope (obj )
Original file line number Diff line number Diff line change @@ -162,3 +162,34 @@ def test_create_no_share(self):
162162 })
163163 self .assertEqual (self .columns , columns )
164164 self .assertEqual (self .data , data )
165+
166+
167+ class TestDeleteAddressScope (TestAddressScope ):
168+
169+ # The address scope to delete.
170+ _address_scope = (
171+ network_fakes .FakeAddressScope .create_one_address_scope ())
172+
173+ def setUp (self ):
174+ super (TestDeleteAddressScope , self ).setUp ()
175+ self .network .delete_address_scope = mock .Mock (return_value = None )
176+ self .network .find_address_scope = mock .Mock (
177+ return_value = self ._address_scope )
178+
179+ # Get the command object to test
180+ self .cmd = address_scope .DeleteAddressScope (self .app , self .namespace )
181+
182+ def test_delete (self ):
183+ arglist = [
184+ self ._address_scope .name ,
185+ ]
186+ verifylist = [
187+ ('address_scope' , self ._address_scope .name ),
188+ ]
189+
190+ parsed_args = self .check_parser (self .cmd , arglist , verifylist )
191+
192+ result = self .cmd .take_action (parsed_args )
193+ self .network .delete_address_scope .assert_called_once_with (
194+ self ._address_scope )
195+ self .assertIsNone (result )
Original file line number Diff line number Diff line change @@ -320,6 +320,7 @@ openstack.image.v2 =
320320
321321openstack.network.v2 =
322322 address_scope_create = openstackclient.network.v2.address_scope:CreateAddressScope
323+ address_scope_delete = openstackclient.network.v2.address_scope:DeleteAddressScope
323324
324325 ip_floating_create = openstackclient.network.v2.floating_ip:CreateFloatingIP
325326 ip_floating_delete = openstackclient.network.v2.floating_ip:DeleteFloatingIP
You can’t perform that action at this time.
0 commit comments