Comments (2)
example:
replace
def verify_eos_version(device, enable_password, versions = None):
"""
Verifies the device is running one of the allowed EOS version.
Args:
device (jsonrpclib.jsonrpc.ServerProxy): Instance of the class jsonrpclib.jsonrpc.ServerProxy\
with the uri 'https://%s:%s@%s/command-api' %(username, password, ip).
enable_password (str): Enable password.
versions (list): List of allowed EOS versions.
Returns:
bool: `True` if the device is running an allowed EOS version.
`False` otherwise.
"""
if not versions:
return None
try:
response = device.runCmds(1, ['show version'], 'json')
except jsonrpc.AppError:
return None
try:
if response[0]['version'] in versions:
return True
return False
except KeyError:
return None
with
def verify_eos_version(device, enable_password, versions = None):
"""
Verifies the device is running one of the allowed EOS version.
Args:
device (jsonrpclib.jsonrpc.ServerProxy): Instance of the class jsonrpclib.jsonrpc.ServerProxy\
with the uri 'https://%s:%s@%s/command-api' %(username, password, ip).
enable_password (str): Enable password.
versions (list): List of allowed EOS versions.
Returns:
bool: `True` if the device is running an allowed EOS version.
`False` otherwise.
"""
if not versions:
return {'result':None,'details':'mandatory argument missing'}
try:
response = device.runCmds(1, ['show version'], 'json')
except jsonrpc.AppError:
return {'result':None,'details':'command not implemented'}
try:
if response[0]['version'] in versions:
return {'result':True}
return {'result':False,'details':'version is ' + response[0]['version']}
except KeyError:
return {'result':None,'details': 'can not parse the command output'}
then update accordingly the file check_devices.py
to write the failure reason in the output file.
from anta.
done
from anta.
Related Issues (20)
- Feature Request: sort table output
- Investigate custom error messages when `ValidationError` occurs HOT 4
- refactor(anta.tests): Add quotes around version name in VerifyEOSVersion
- If a Python module has invalid imports, the `ValidationError` is not intelligible HOT 1
- Add the test case to verify the expiry of ssl cerificate
- CI: enable Ruff
- Relax Interface custom type to be case insensitive
- anta get from-ansible request for --username attribut HOT 1
- Add the test case to verify the BGP redistribution
- Add the test case to verify the BGP peering capabilities
- Catch `privileged mode required` and display a warning suggesting to use `--enable`
- Add the test case to verify the BGP neighbor authentication
- Add the test case to verify the BGP neighbor community
- Add the test case to verify the BFD session, timers and peers
- Update the pass/fail criteria for testcase VerifyBFD
- Add the test case to verify the BGP ECMP path install
- Add the test case to verify the BGP EVPN type-3 routes
- Add the test case to verify the BGP hold and keep alive timers
- Ship a Click activation script file with the build to activate autocompletion
- `clear hardware counter drop` is not supported on some platforms HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from anta.