pyATS Release Highlights 21.1

pyATS Core Infrastructure

  • Enhanced testbed and clean YAML validation for XPRESSO
  • Reporter Unix socket path enhancements for corner case path lengths
  • Various other fixes and enhancements

Genie

  • Configuration datafile enhanced to allow for jinja2 template files
  • Discovery enhanced to avoid %VARIABLE to pick up device for Blitz testcase
  • 84 new IOSXE, IOS, NXOS, IOSXR and Junos parsers with a grand total of 2788 parsers
  • 72 new apis to use on your devices. Grand total of 1173 APIs

pyATS Clean

[Generic]

  • New documentation
  • Validate clean now works with a string representation or a dictionary
  • Moved APIC stages from NXOS/ACI to APIC (use 'os: apic' now)

[NXOS/ACI]

  • Removed argument 'aci_device_type' from tre 'fabric_clean' stage

[APIC]

  • Removed argument 'aci_device_type' from the 'fabric_clean' stage

Unicon

  • Enhanced StateTransition class to handle callable state transitions
  • Added 'switch to state "${state}" on device "${device}"' Robot keyword
  • Updated 'connection_refused' pattern to include 'Broken pipe'
  • Bugfix for connection settings with CLI proxy
  • Fixed topology logic to pick up the correct chassis_type when argument 'via' is provided
  • Added log_buffer option to capture the log in a buffer instead of a file
  • Updated service log to print the connection via information
  • Added retry loop to tunnel port allocation in SSH utils
  • Updated any state transition dialog generation in Statemachine class
  • Updated state transition execution in BaseService pre_service method

Unicon Plugins

[Generic]

  • All plugins 'series' attributes have been renamed to 'platform'
  • Removed aci/apic plugin (use os: apic instead)
  • Removed aci/n9k plugin (use os: nxos, platform=aci instead)
  • Removed nxos/aci/n9k plugin (use: os: nxos, platform=aci instead)
  • Added 'switchto' service
  • Added configure error pattern to IOS, IOSXE and IOSXR
  • Added configure statement list dialog to configure service
  • Added support for hostname change with non-bulk config commands
  • Updated traceroute service to check for valid keyword arguments
  • Added 'attach' service. This requires plugins to support the 'module' state
  • Added 'target_standby_state' keyword argument for rp_state check in reload service
  • Added new HP comware plugins
  • Added new Dell OS6 plugins

[IOSXE]

  • Added support for grub menu in the reload service
  • Updated configure statement list to handle yes/no prompt

[NXOS]

  • Added 'attach' service
  • Added configure_dual service
  • Fixed configure pattern to enable learning hostname if the device is in config state

[Linux]

  • Added handler for 'sudo' password

[APIC]

  • Added 'shell' state

[ASA]

  • Added Firepower 2K (fp2k) platform support

[FXOS]

  • Refactored implementation and added support for FP2K

Dependency/Impact

  • End of Support for genie.telemetry starting January - migrate to pyATS Health Check

  • End of life for Uniclean starting January - migrate to pyATS Clean

  • Deprecation Notice: Rest.connector 'os: nxos, platform: aci' has been deprecated. Use 'os: apic' instead.

  • Deprecation Notice:

    In unicon, the device 'series' attribute has been renamed to 'platform'.
    Please update your topology files to use platform instead.

Package Changelogs

Unicon Changelog | pyATS Changelog | Genie Changelog