May 2021
May 25th - Genie v21.5
Module |
Version |
---|---|
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
|
21.5 |
Upgrade Instructions
pip install --upgrade ats[full] # For internal user
pip install --upgrade pyats[full] # For DevNet user
If you have pyATS installed, you can use:
pyats version update
Changelogs
genie
Fix
- json
Fix ‘make json’ implementation to the GitHub URL is using the correct path
- harness
Datafile content order is preserved during loading.
Default execution order of triggers and verifications is no longer alphabetical. It is now as provided in the yaml file.
genie.libs.health
New
- health
- Modified internal functions
To support ‘run_condition’ in yaml and ‘testscript’ variables for device check
- Modified internal functions
To support Markup ‘%VARIABLES{}’ for ‘health_sections’/’health_uids’/’health_groups’
genie.libs.clean
Fix
- com
- Modified copy_to_device
So the stage continues even if a file cannot be deleted when freeing up disk space.
- Modified Device Recovery
To respect current result in case device recovery did nothing
- iosxe
Modified install_image stage dialogs so clean can enter ‘y’ at the reload prompt
- ioxe
- Modified clean stage ‘install_image’
Updated execute error pattern
- Modified clean stage ‘install_package’
Updated execute error pattern
- apic clean
Modified fabric_upgrade stage to upgrade only if needed
Added copy_to_device stage for APIC and included disk space check and cleanup if needed
- filetransferutils
Modified APIC plugin, added deletefile implementation
- sdk
Added new APIs for APIC
genie.libs.conf
Fix
- nxos conf
- Modified Vlan class
Fix vn_segment_id config
genie.libs.filetransferutils
No changes.
genie.libs.ops
No changes.
genie.libs.parser
New
- iosxr
- Added ShowOspfDatabase
show ospf database
show ospf {process_id} database
Added ShowOspfv3InterfaceSchema
- Added ShowOspfv3Interface
show ospfv3 interface
- Added ShowOspfv3Database
show ospfv3 database
show ospfv3 {process_id} database
- Added ShowOspfv3VrfAllInclusiveNeighborDetail
show ospfv3 vrf all-inclusive neighbor detail
- Added ShowOspfv3Neighbor
show ospfv3 neighbor
show ospfv3 {process} neighbor
show ospfv3 vrf {vrf} neighbor
folder based unittests
- iosxe
- Added ShowIpEigrpTopology
Added parser for “show ip eigrp topology” & “show ip eigrp vrf {vrf} topology”
Added 4 regexp, r1, r2, r3, r4 to ShowEigrpTopologySuperparser
Added folder based unittests
- Added ShowIpv6EigrpTopology
Added parser for “show ipv6 eigrp topology” & “show ipv6 eigrp vrf {vrf} topology”
Added 4 regexp, r1, r2, r3, r4 to ShowEigrpTopologySuperparser
Added folder based unittests
Added ShowIpNbarVersion
- apic
Added parsers for ‘fnvread’, ‘df’ and ‘ls’ commands
- linux
Added parsers for ‘ls’ commands
add show command ‘show ip nbar version’
add folder based unittests
Fix
- iosxe
- Modified ShowIpRouteSummary
Update p1 regex to capture output related to spacing for ‘show ip route summary’
Add folder based unittests
- Modified ShowInterfaces
Updated regex pattern p1 and p1_1 to accommodate various outputs.
Add folderbased unittest.
- Modified ShowIpInterface
Updated regex pattern p1 and to accommodate various outputs.
Add folderbased unittest.
- Modified ShowIpv6Interface
Updated regex pattern p1 and to accommodate various outputs.
Add folderbased unittest.
- Modified ShowPlatformSoftwareStatusControl
Fixed regex
- Modified ShowBgpNeighborSuperParser
Update regex <p22> to properly match Current Prefixes
- Modified ShowApDot115GhzSummary
Update schema to accept optional mode field
- Modified ShowInventory
Add regex p1_8 to accept additional NAMES for ‘show inventory’ command
Update logic to include missing NAMES if they exists
Add folder based unittests
- ShowRouteMapAll
Updated show route-map regex’s to allow special characters in places where they should be allowed
Update test to cover more of the regex’s and to include match_community_list key
- Modified ShowInterfacesAccounting
to support various output
- Modified ShowVersionSchema
Add
air_license_level
andnext_reload_air_license_level
keys
- Modified ShowVersion
Add regex for AIR license level and type
Refactor license package parser implementation
- Modified ShowInterface class
Normalize interface name
- Modified ShowStandbyAll
Refactor parser so that it commits data to standby_all_dict after parsing all lines
Fix group name regex so that it works with subinterfaces
- viptela
- Modified ShowOmpPeers
updated regex pattern p1 to accommodate full-length site id strings
updated folderbased unittest
this updates IOSXE ShowSdwanOmpPeers
- iosxr
- Modified ShowL2vpnBridgeDomainBrief
Class now parses its own output instead of calling and returning another class’ output verbatim.
This is helpful because the Brief version of the command outputs in a different format.
- Added ShowL2vpnBridgeDomainSchema
Schema needed to support modifications to ShowL2vpnBridgeDomainBrief
- Modified Ping
Changed pattern p4 to work with IP addresses that cannot be pinged
Added unittest
- nxos
- Modified ShowInterfaceStatus
to support various output
- Modified ShowCdpNeighborsDetail
Fixed issue with parser that affected Jupyter notebooks
update logic to include mode field when it exist in the cli output
- update regex p1 to include tx_pwr field with or without star
Add folder based unittests
- ios
- ShowRouteMapAll
Update test to include match_community_list key
Show Boot command now uses the IOSXE ‘show boot’ parser instead of IOSXE ‘show bootvar’
- nxos
- Modified ShowInterfaceBrief
Updated regex p4 to remove false positives
Updated schema to not require an ethernet interface
genie.libs.robot
Fix
- robot
Fixed testbed loading
Deprecated ‘use genie testbed’ keyword
genie.libs.sdk
Fix
- nxos
- Modified delete_unprotected_files API
Added allow_failure argument to silently allow file deletion to fail
- Modified restore_running_config
Update Unicon reply dialog pattern for restore_running_config
- iosxe
- Modified delete_unprotected_files API
Added allow_failure argument to silently allow file deletion to fail
- Modified restore_running_config
Update Unicon reply dialog pattern for restore_running_config
- com
- Modified free_up_disk_space API
Added allow_deletion_failure argument to silently allow file deletion to fail
- blitz
- Modified ‘add_result_as_extra’ decolator for pyATS Health Check
Fixed multi process issue with loop and parallel
Check if NETCONF subsccribe operation RPC message contains lxml objects.
- ios
- Modified restore_running_config
Update Unicon reply dialog pattern for restore_running_config
New
- ios
Added ‘get_boot_variables’ API for IOS
- iosxe
- Fixed unconfigconfigOspf
Fixed Verify_unconfig in unconfigconfigOspf to handle empty parser exception which happens when there is only one OSPF instance configured
Method handles empty parser exception and now looks for OSPF ID in list of OSPF IDs in parsed output
Added VRF argument to ‘configure_ntp_server’ API
- common api
Added ‘arithmetic_operations’ API to calculate operands.
- utils
- added new API ‘get_bool’
simple API to return boolean result against value such as string, integer, dict, list and so on
- added new API ‘get_testcase_name’
to get testcase name from ‘runtime’ object
- blitz
- added support to evaluate just value without operator
‘if $VARIABLES{test}’ will return boolean result based on content of test. no operator required. if variable is not ready/initialized, it will be treated as ‘None’
genie.telemetry
No changes.
genie.trafficgen
Fix
- ixianative.py
- Modified check_traffic_loss
enhanced code so it handles tx_frame_rate being 0.0 (Handled DivisionByZero error)