summaryrefslogtreecommitdiff
path: root/vyroute/basic_function/StaticRoute.py
diff options
context:
space:
mode:
authorHochikong <michellehzg@gmail.com>2016-05-24 01:05:26 +0800
committerHochikong <michellehzg@gmail.com>2016-05-24 01:05:26 +0800
commit9eca534f9735c8c5e984ce5a3add7cbb9daa4345 (patch)
tree7f2555294adf102455f5a3f6d78c44aba3c72f8b /vyroute/basic_function/StaticRoute.py
parent8e2f9aa509a5d90897844c196675836a10068237 (diff)
downloadpython-vyos-mgmt-9eca534f9735c8c5e984ce5a3add7cbb9daa4345.tar.gz
python-vyos-mgmt-9eca534f9735c8c5e984ce5a3add7cbb9daa4345.zip
too more changes,i donno what to say
Diffstat (limited to 'vyroute/basic_function/StaticRoute.py')
-rw-r--r--vyroute/basic_function/StaticRoute.py47
1 files changed, 7 insertions, 40 deletions
diff --git a/vyroute/basic_function/StaticRoute.py b/vyroute/basic_function/StaticRoute.py
index f9fa233..f0d6afc 100644
--- a/vyroute/basic_function/StaticRoute.py
+++ b/vyroute/basic_function/StaticRoute.py
@@ -1,57 +1,24 @@
# author=hochikong
-from Exscript.protocols import SSH2
-from Exscript import Account
-
-
-def staticroute(data):
+def staticroute(obj, data):
"""This method provide a basic static router configuration function
Parameter data example:
- {'router':'vyos@172.16.77.188','passwd':'vyos',
- 'config':[{'target':'10.20.10.0/24','next-hop':'10.20.10.1','distance':'1'},
- {'target':"192.168.20.0/24','next-hop':'192.168.20.1','distance':'1'}
- ]
+ {'config':[{'target':'10.20.10.0/24','next-hop':'10.20.10.1','distance':'1'},
+ {'target':"192.168.20.0/24','next-hop':'192.168.20.1','distance':'1'},
+ ],
}
+ :param obj: a connection object
:param data: a python dictionary
:return:a python dictionary
"""
static_basic_configuration = "set protocols static route %s next-hop %s distance %s"
try:
- stringlist = list(data['router'])
- divi = stringlist.index('@')
- user = ''.join(stringlist[:divi])
- passwd = data['passwd']
- address = ''.join(stringlist[divi+1:])
- account = Account(user, passwd)
- conn = SSH2()
- conn.connect(address)
- conn.login(account)
-
- # configure mode
- conn.execute("configure")
-
- # configure static router
+ # Configure static router
for i in data['config']:
- conn.execute(static_basic_configuration % (i['target'],
- i['next-hop'],
- i['distance']))
-
- # commit configuration
- conn.execute("commit")
-
- # save configuration
- conn.execute("save")
-
- # exit configure mode
- conn.execute("exit")
-
- # close connection
- conn.close(force=True)
-
+ obj.execute(static_basic_configuration % (i['target'], i['next-hop'], i['distance']))
return {"Result": "Configured successfully"}
-
except Exception, e:
return {'Error': e}