0.16.0-a1 β 2024-03-06ο
π Featuresο
Important
β¨β¨Preliminary support for Orchestrator 9.3+β¨β¨:
There were hundreds of changes to Orchestrator API endpoints in 9.3
forward. Logic has been added to the pyedgeconnect Orchestrator class
init and login functions to capture Orchestrator version
information to then determine corrent endpoint syntax
in further functions.
As part of this update, 280+ pyedgeconnect functions have been updated for 9.3 support, detailed in the updated and added functions section.
All the logic has been written with cross-compatability in mind so a majority of existing code using pyedgeconnect should not need to be rewritten for functions that have been written for 9.3 support.
As an example, letβs disect get_api_key()
In use, it takes the single paramter name for retrieving a
particular API key from Orchestrator
orch.get_api_key(name="myKey")
The original source code for this function just had a simple path with the paramter inline.
return self._get(f"/apiKey/{name}")
The updated source code for this and other functions, leverages the Orchestrator version to determine the apporpriate syntax.
if self.orch_version >= 9.3:
path = f"/apiKey?name={name}"
else:
path = f"/apiKey/{name}"
return self._get(path)
β¨ A new code example!: βοΈ Automate configuring Service Orchestration for HPE Aruba Networking SSE including automating the location and tunnels on the SSE platform side. Read through the full writeup in the examples to kickstart your integration asap!
β¨ A new code example!: π Pull WAN interface minute data from Orchestrator to CSV files and generate a report calculating 95th percentile utilization per-appliance as well as per-interface. Written walkthrough under the examples section.
β¨ A new code example!: π Pull Boost minute data from Orchestrator to CSV files per appliance with a simple calculation to estimate Kbps from the Bytes Boosted value in the original data to more easily compare to the configured Boost value already in Kbps. Written walkthrough under the examples section.
Updated code example!: EdgeConnect Telemetry demo now includes parsing Shaper & Traffic class data.
Updated the following Orchestrator functions from Swagger:ο
Added updated API endpoint for Orchestrator 9.3+ support of the following functions, sorted below by their respective Swagger tags.
ACLS
ADMIN_DISTANCE
AGGREGATE_STATS
ALARM
API_KEYS
APPLIANCE
get_appliances()This function now has an additional filter parameter of
ne_pkso a single appliance can be retrieved instead of all appliances
get_appliance_info()Raise warning on deprecation for 9.3+, handles same endpoint logic as
get_appliances()
APPLIANCE_BACKUP
APPLIANCE_EXTRA_INFO
APPLIANCE_PRECONFIG
APPLIANCE_RESYNC
APPLIANCES_SOFTWARE_VERSIONS
APPLIANCE_UPGRADE
APPLICATION_DEFINITION
post_user_defined_app_meter_flow()delete_user_defined_app_meter_flow()
APP_SYSTEM_DEPLOY_INFO
APP_SYSTEM_STATE_INFO
AUTHENTICATION
BANNERS
BGP
BONDED_TUNNELS_CONFIGURATION
BRIDGE_INTERFACE_STATE
BROADCAST_CLI
BUILT_IN_POLICIES
CUSTOM_APPLIANCE_TAGS
DEBUG_FILES
DEPLOYMENT
DISKS
DNS
DNS_PROXY
EXCEPTION
FLOW
GRNODE
GROUP
INBOUND_SHAPER
INTERFACE_LABELS
INTERFACE_STATE
IP_OBJECTS
LICENSE
LINK_AGGREGATION
LINK_INTEGRITY
LOGGING
LOOPBACK
MGMT_SERVICES
MULTICAST
NAT
NAT_MAPS
NET_FLOW
NETWORK_MEMORY
NETWORK_ROLE_AND_SITE
OPTIMIZATION_POLICY
OSPF
OVERLAY_ASSOCIATION
OVERLAYS
PEER_PRIORITY
PORT_FORWARDING
QOS_POLICY
REACHABILITY
REALTIME_STATS
REGIONS
RELEASES
ROUTE_POLICY
SAVE_CHANGES
SECURITY_MAPS
SHAPER
SNMP
SUBNETS
TCA
TCPDUMP
TEMPLATE
pyedgeconnect.Orchestrator.get_selected_templates_in_template_group()pyedgeconnect.Orchestrator.select_templates_for_template_group()pyedgeconnect.Orchestrator.get_appliance_applied_template_goups()pyedgeconnect.Orchestrator.get_appliance_template_groups_association()pyedgeconnect.Orchestrator.associate_template_group_to_appliance()
THIRD_PARTY_SERVICES
TIMESERIES_STATS
UI_USAGE_STATS
UPGRADE_APPLIANCES
USER_ACCOUNT
USERS
VRF
VRF_DNAT_MAPS
VRF_SNAT_MAPS
VRRP
VTI
VXOA_HOSTNAME
WAN_NEXT_HOP_HEALTH
Updated functions with new parameters:
APPLICATION_DEFINITION
post_user_defined_app_address_map()- Addedsubattributesparameter for supporting additional app definition details in 9.2+
Added the following Orchestrator functions from Swagger Incl. Support for 9.3+:ο
Health
Third Party Services / Service Orchestration
Added the following EdgeConnect functions from Swagger:ο
update_appliance_deployment()validate_appliance_deployment()get_vrrp_interfaces()configure_vrrp_interfaces()
π Bug Fixesο
#6 -
get_appliance_bgp_state_all_vrfs()Updated endpoint path as it was in an incorrect order resulting in bad response.#8 - Added 9.3 support for appliance preconfig endpoints
#2 - Added 9.3 support for vrf/segmentation endpoints
get_appliance_routing_peers_info()Updated docstring formatting due to indentation typoupdate_region_name()Updated body to include previously unused paramterregion_nameto update the name of a region.
π₯ Breaking Changes:ο
Renamed parameters source_zone and destination_zone to
source_segment and destination_segment as the inputs are
segment ID values and not FW zone values. If this function is being
used without explicit arguments no breaking change is encountered
but if users are calling the function with explicit keyword
arguments of the old parameter names then the code will need to be
updated to reflect the updated parameter names.
π§° Maintenance / Otherο
π Known Issuesο
Warning
The following two functions for the _ip_objects submodule experience
errors at this time. These function do work in the Orchestrator UI:
bulk_upload_address_group() and
bulk_upload_service_group()