Guest User

Untitled

a guest
Feb 14th, 2018
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.62 KB | None | 0 0
  1. #!/usr/bin/env python
  2. #
  3. # Copyright 2018 Cisco Systems, Inc.
  4. # import providers, services and models
  5. from argparse import ArgumentParser
  6. from ydk.services import CRUDService
  7. from ydk.providers import NetconfServiceProvider
  8. from ydk.models.cisco_ios_xr import Cisco_IOS_XR_shellutil_cfg \
  9. as xr_shellutil_cfg
  10. from datetime import timedelta
  11. import logging
  12.  
  13. if __name__ == "__main__":
  14. """Main execution path"""
  15.  
  16. parser = ArgumentParser()
  17. parser.add_argument("-v", "--verbose", help="print debugging messages",
  18. action="store_true")
  19. parser.add_argument("username",
  20. help="username")
  21. parser.add_argument("password",
  22. help="password")
  23. parser.add_argument("device",
  24. help="NETCONF device")
  25. args = parser.parse_args()
  26.  
  27. # log debug messages if verbose argument specified
  28. if args.verbose:
  29. logger = logging.getLogger("ydk")
  30. logger.setLevel(logging.DEBUG)
  31. handler = logging.StreamHandler()
  32. formatter = logging.Formatter(("%(asctime)s - %(name)s - "
  33. "%(levelname)s - %(message)s"))
  34. handler.setFormatter(formatter)
  35. logger.addHandler(handler)
  36.  
  37. # create NETCONF session
  38. provider = NetconfServiceProvider(address=args.device,
  39. port=830,
  40. username=args.username,
  41. password=args.password,
  42. protocol="ssh")
  43.  
  44. # create CRUD service
  45. crud = CRUDService()
  46.  
  47. # create hostname object
  48. hostname = xr_shellutil_cfg.HostNames()
  49.  
  50. # read hostmame from device
  51. host_name = crud.read(provider, hostname)
  52.  
  53. # Print hostname
  54. print("Hostname is " + host_name.host_name.get())
  55.  
  56. exit()
Add Comment
Please, Sign In to add comment