Merge "Fix batch of bugs"

This commit is contained in:
Jenkins 2016-04-05 02:15:36 +00:00 committed by Gerrit Code Review
commit 91a761af69
3 changed files with 40 additions and 22 deletions

View File

@ -19,6 +19,7 @@ import sys
from cliff.command import Command
from cliff.lister import Lister
from steth.stethclient import utils
from steth.stethclient.utils import Logger
from steth.stethclient.utils import setup_server
@ -43,10 +44,11 @@ class TearDownLink(Command):
self.log.debug('Agent is %s' % parsed_args.agent)
self.log.debug('Interface is %s' % parsed_args.interface)
server = setup_server(parsed_args.agent)
try:
res = server.teardown_link(parsed_args.interface)
except Exception as e:
self.log.error('Error %s has occured because: %s' % (res, e))
res = server.teardown_link(parsed_args.interface)
if not res['code']:
Logger.log_normal("Delete interface success.")
else:
Logger.log_fail(res['message'])
class SetUpLink(Lister):
@ -161,6 +163,11 @@ class AgentPing(Lister):
self.log.debug('Get parsed_args: %s' % parsed_args)
server = setup_server(parsed_args.agent)
dest = parsed_args.destination.split(',')
for ip in dest:
if utils.is_ip(ip):
Logger.log_fail("%s is invalid." % ip)
sys.exit()
Logger.log_normal("Ping start...")
res = server.ping(ips=dest,
count=parsed_args.count,
timeout=parsed_args.timeout,
@ -190,22 +197,17 @@ class CheckPortsOnBr(Lister):
def take_action(self, parsed_args):
self.log.debug('Get parsed_args: %s' % parsed_args)
server = setup_server(parsed_args.agent)
try:
res = server.check_ports_on_br(parsed_args.bridge,
[parsed_args.port])
self.log.debug('Response is %s' % res)
if res['code'] == 1:
Logger.log_fail(res['message'])
sys.exit()
if res['code'] == 0:
return (('Port', 'Exists'),
((k, v) for k, v in res['data'].items()))
except Exception as e:
self.log.error('Agent %s return error: %s!' % parsed_args.agent, e)
res = server.check_ports_on_br(parsed_args.bridge,
[parsed_args.port])
self.log.debug('Response is %s' % res)
if res['code']:
Logger.log_fail(res['message'])
sys.exit()
return (('Port', 'Is Exist'),
((k, v) for k, v in res['data'].items()))
class CheckVlanInterface(Lister):
class CheckVlanInterface(Command):
"""Check vlan if exists in switch"""
log = logging.getLogger(__name__)
@ -257,9 +259,10 @@ class CheckVlanInterface(Lister):
if serverB_interface_existence['code']:
resB = serverB.teardown_link(interface)
if res['code'] == 0:
return (('Destination', 'Packet Loss (%)'),
((k, v) for k, v in res['data'].items()))
return (['Error Mssage', ' '], [('message', res['message'])])
Logger.log_normal("Packet loss is %s%%" % res['data'].values()[0])
sys.exit()
msg = "Error happens because %s" % res['message']
Logger.log_fail(msg)
class PrintAgentsInfo(Lister):

View File

@ -27,6 +27,17 @@ OPTS = [
help="Prefix of every node."),
]
NEUTRON_CLIENT_OPTS = [
cfg.StrOpt('username', default='admin',
help='To get neutronclient, you must specify a username'),
cfg.StrOpt('password', default='admin',
help='To get neutronclient, you must specify a password'),
cfg.StrOpt('tenant_name', default='admin',
help='To get neutronclient, you must specify a project'),
cfg.StrOpt('auth_url', default='http://127.0.0.1:5000/v2.0',
help='To get neutronclient, you must specify a auth_url'),
]
MGMT_AGENTS_INFOS = {}
NET_AGENTS_INFOS = {}
STORAGE_AGENTS_INFOS = {}
@ -43,6 +54,8 @@ def etcdir(*p):
steth_config_file = etcdir('steth.conf')
cfg.CONF.register_opts(OPTS)
cfg.CONF.register_opts(NEUTRON_CLIENT_OPTS, 'neutron_client')
try:
cfg.CONF([], project='steth',
default_config_files=['/etc/steth/steth.conf'])

View File

@ -54,8 +54,10 @@ class CheckIperf(Lister):
help='IPERF server will be started at this agent.')
parser.add_argument('client_agent', default='bad',
help='IPERF client will be started at this agent.')
parser.add_argument('iperf_server_type', default='mgmt',
help='Choose from "mgmt", "net" or "storage".')
parser.add_argument('--iperf_server_type', default='others',
help=("Choose from 'mgmt', 'net' or 'storage'."
"If you want to all of these types, "
"please choose 'others'."))
parser.add_argument('--server_protocol', nargs='?', default='TCP')
parser.add_argument('--server_port', nargs='?', default='5001')
parser.add_argument('--client_protocol', nargs='?', default='TCP')