mirror of
https://github.com/CumulusNetworks/ifupdown2.git
synced 2024-05-06 15:54:50 +00:00
more fixes + cleanup + support for --exclude argument
Ticket: CM-1438 Reviewed By: Testing Done:
This commit is contained in:
@@ -4,7 +4,7 @@ import sys
|
||||
import os
|
||||
import re
|
||||
import argparse
|
||||
from ifupdown.ifupdown_main import *
|
||||
from ifupdown.ifupdownmain import *
|
||||
|
||||
import logging
|
||||
|
||||
@@ -17,15 +17,15 @@ def run(args, op):
|
||||
try:
|
||||
logger.debug('creating ifupdown object ..')
|
||||
if op == 'up' or op == 'down':
|
||||
ifupdown_handle = ifupdown_main(force=args.force,
|
||||
dryrun=args.noact,
|
||||
ifupdown_handle = ifupdownMain(force=args.force,
|
||||
nodepends=args.nodepends,
|
||||
perfmode=args.perfmode,
|
||||
njobs=args.jobs)
|
||||
njobs=args.jobs,
|
||||
dryrun=args.noact)
|
||||
elif op == 'query':
|
||||
ifupdown_handle = ifupdown_main(dryrun=args.noact,
|
||||
nodepends=args.nodepends,
|
||||
perfmode=args.perfmode)
|
||||
ifupdown_handle = ifupdownMain(nodepends=args.nodepends,
|
||||
perfmode=args.perfmode,
|
||||
njobs=args.jobs)
|
||||
|
||||
iflist = args.iflist
|
||||
if len(args.iflist) == 0:
|
||||
@@ -33,9 +33,11 @@ def run(args, op):
|
||||
|
||||
logger.debug('calling %s' %op + ' for all interfaces ..')
|
||||
if op == 'up':
|
||||
ifupdown_handle.up(args.all, args.CLASS, iflist)
|
||||
ifupdown_handle.up(args.all, args.CLASS, iflist,
|
||||
excludepats=args.excludepats)
|
||||
elif op == 'down':
|
||||
ifupdown_handle.down(args.all, args.CLASS, iflist)
|
||||
ifupdown_handle.down(args.all, args.CLASS, iflist,
|
||||
excludepats=args.excludepats)
|
||||
elif op == 'query':
|
||||
if args.curstate == True:
|
||||
qstate='curr'
|
||||
@@ -46,7 +48,8 @@ def run(args, op):
|
||||
else:
|
||||
qstate=None
|
||||
ifupdown_handle.query(args.all, args.CLASS, iflist,
|
||||
query_state=qstate)
|
||||
query_state=qstate,
|
||||
excludepats=args.excludepats)
|
||||
except:
|
||||
raise
|
||||
|
||||
@@ -73,14 +76,8 @@ def deinit():
|
||||
{}
|
||||
|
||||
def update_argparser(argparser):
|
||||
|
||||
argparser.add_argument('iflist', metavar='IFACE',
|
||||
nargs='*', help='interfaces list')
|
||||
argparser.add_argument('-a', '--all', action='store_true',
|
||||
help='process all interfaces marked \"auto\"')
|
||||
argparser.add_argument('-n', '--no-act', dest='noact',
|
||||
action='store_true', help='print out what would happen,' +
|
||||
'but don\'t do it')
|
||||
argparser.add_argument('-v', '--verbose', dest='verbose',
|
||||
action='store_true', help='verbose')
|
||||
argparser.add_argument('-d', '--debug', dest='debug',
|
||||
@@ -93,16 +90,24 @@ def update_argparser(argparser):
|
||||
help='ignore non-\"allow-CLASS\" interfaces')
|
||||
argparser.add_argument('--nodepends', dest='nodepends',
|
||||
action='store_true', help=argparse.SUPPRESS)
|
||||
argparser.add_argument('--performance-mode', dest='perfmode',
|
||||
argparser.add_argument('--perfmode', dest='perfmode',
|
||||
action='store_true', help=argparse.SUPPRESS)
|
||||
argparser.add_argument('-j', '--jobs', dest='jobs', type=int,
|
||||
default=-1, choices=range(1,12), help=argparse.SUPPRESS)
|
||||
argparser.add_argument('-X', '--exclude', dest='excludepats',
|
||||
action='append', help='print out what would happen,' +
|
||||
' but don\'t do it')
|
||||
|
||||
|
||||
def update_ifupdown_argparser(argparser):
|
||||
argparser.add_argument('-a', '--all', action='store_true',
|
||||
help='process all interfaces marked \"auto\"')
|
||||
argparser.add_argument('-f', '--force', dest='force',
|
||||
action='store_true',
|
||||
help='force run all operations')
|
||||
argparser.add_argument('-j', '--jobs', dest='jobs', type=int,
|
||||
default=-1, choices=range(1,12), help=argparse.SUPPRESS)
|
||||
argparser.add_argument('-n', '--no-act', dest='noact',
|
||||
action='store_true', help='print out what would happen,' +
|
||||
'but don\'t do it')
|
||||
|
||||
def update_ifup_argparser(argparser):
|
||||
update_ifupdown_argparser(argparser)
|
||||
@@ -111,6 +116,8 @@ def update_ifdown_argparser(argparser):
|
||||
update_ifupdown_argparser(argparser)
|
||||
|
||||
def update_ifquery_argparser(argparser):
|
||||
argparser.add_argument('-l', '--list', action='store_true', dest='all',
|
||||
help='process all interfaces marked \"auto\"')
|
||||
group = argparser.add_mutually_exclusive_group(required=False)
|
||||
group.add_argument('-r', '--running-state', dest='curstate',
|
||||
action='store_true',
|
||||
@@ -126,6 +133,7 @@ def update_ifquery_argparser(argparser):
|
||||
dest='presumedstatedetailed',
|
||||
action='store_true', help=argparse.SUPPRESS)
|
||||
|
||||
|
||||
def parse_args(argsv, op):
|
||||
descr = 'interface management'
|
||||
|
||||
@@ -158,7 +166,7 @@ def main(argv):
|
||||
# Command line arg parser
|
||||
args = parse_args(argv[1:], op)
|
||||
if len(args.iflist) > 0 and args.all is True:
|
||||
print 'iflist and all are mutually exclusive'
|
||||
print 'interface list and \'-a\' are mutually exclusive'
|
||||
exit(1)
|
||||
|
||||
init(args)
|
||||
|
Reference in New Issue
Block a user