Router: Add "router delete" command using SDK
This patch adds "router delete" command to osc using sdk. Change-Id: I47d0ca7f7984942ffceaeb1c9ac69efd09145f40 Implements: blueprint neutron-client Partial-bug: #1519503
This commit is contained in:
parent
6158ebb0e0
commit
3364855a22
@ -44,6 +44,22 @@ Create new router
|
|||||||
|
|
||||||
New router name
|
New router name
|
||||||
|
|
||||||
|
router delete
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Delete router(s)
|
||||||
|
|
||||||
|
.. program:: router delete
|
||||||
|
.. code:: bash
|
||||||
|
|
||||||
|
os router delete
|
||||||
|
<router> [<router> ...]
|
||||||
|
|
||||||
|
.. _router_delete-router:
|
||||||
|
.. describe:: <router>
|
||||||
|
|
||||||
|
Router(s) to delete (name or ID)
|
||||||
|
|
||||||
router list
|
router list
|
||||||
-----------
|
-----------
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
import json
|
import json
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
from cliff import command
|
||||||
from cliff import lister
|
from cliff import lister
|
||||||
from cliff import show
|
from cliff import show
|
||||||
|
|
||||||
@ -117,6 +118,30 @@ class CreateRouter(show.ShowOne):
|
|||||||
return (tuple(columns), data)
|
return (tuple(columns), data)
|
||||||
|
|
||||||
|
|
||||||
|
class DeleteRouter(command.Command):
|
||||||
|
"""Delete router(s)"""
|
||||||
|
|
||||||
|
log = logging.getLogger(__name__ + '.DeleteRouter')
|
||||||
|
|
||||||
|
def get_parser(self, prog_name):
|
||||||
|
parser = super(DeleteRouter, self).get_parser(prog_name)
|
||||||
|
parser.add_argument(
|
||||||
|
'router',
|
||||||
|
metavar="<router>",
|
||||||
|
nargs="+",
|
||||||
|
help=("Router(s) to delete (name or ID)")
|
||||||
|
)
|
||||||
|
return parser
|
||||||
|
|
||||||
|
def take_action(self, parsed_args):
|
||||||
|
self.log.debug('take_action(%s)' % parsed_args)
|
||||||
|
client = self.app.client_manager.network
|
||||||
|
for router in parsed_args.router:
|
||||||
|
obj = client.find_router(router)
|
||||||
|
client.delete_router(obj)
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
class ListRouter(lister.Lister):
|
class ListRouter(lister.Lister):
|
||||||
"""List routers"""
|
"""List routers"""
|
||||||
|
|
||||||
|
@ -88,6 +88,35 @@ class TestCreateRouter(TestRouter):
|
|||||||
self.assertEqual(self.data, data)
|
self.assertEqual(self.data, data)
|
||||||
|
|
||||||
|
|
||||||
|
class TestDeleteRouter(TestRouter):
|
||||||
|
|
||||||
|
# The router to delete.
|
||||||
|
_router = network_fakes.FakeRouter.create_one_router()
|
||||||
|
|
||||||
|
def setUp(self):
|
||||||
|
super(TestDeleteRouter, self).setUp()
|
||||||
|
|
||||||
|
self.network.delete_router = mock.Mock(return_value=None)
|
||||||
|
|
||||||
|
self.network.find_router = mock.Mock(return_value=self._router)
|
||||||
|
|
||||||
|
# Get the command object to test
|
||||||
|
self.cmd = router.DeleteRouter(self.app, self.namespace)
|
||||||
|
|
||||||
|
def test_delete(self):
|
||||||
|
arglist = [
|
||||||
|
self._router.name,
|
||||||
|
]
|
||||||
|
verifylist = [
|
||||||
|
('router', [self._router.name]),
|
||||||
|
]
|
||||||
|
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
||||||
|
|
||||||
|
result = self.cmd.take_action(parsed_args)
|
||||||
|
self.network.delete_router.assert_called_with(self._router)
|
||||||
|
self.assertEqual(None, result)
|
||||||
|
|
||||||
|
|
||||||
class TestListRouter(TestRouter):
|
class TestListRouter(TestRouter):
|
||||||
|
|
||||||
# The routers going to be listed up.
|
# The routers going to be listed up.
|
||||||
|
@ -333,6 +333,7 @@ openstack.network.v2 =
|
|||||||
network_set = openstackclient.network.v2.network:SetNetwork
|
network_set = openstackclient.network.v2.network:SetNetwork
|
||||||
network_show = openstackclient.network.v2.network:ShowNetwork
|
network_show = openstackclient.network.v2.network:ShowNetwork
|
||||||
router_create = openstackclient.network.v2.router:CreateRouter
|
router_create = openstackclient.network.v2.router:CreateRouter
|
||||||
|
router_delete = openstackclient.network.v2.router:DeleteRouter
|
||||||
router_list = openstackclient.network.v2.router:ListRouter
|
router_list = openstackclient.network.v2.router:ListRouter
|
||||||
|
|
||||||
openstack.object_store.v1 =
|
openstack.object_store.v1 =
|
||||||
|
Loading…
x
Reference in New Issue
Block a user