deviations

package
v0.0.0-...-b343c7a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 23, 2026 License: Apache-2.0 Imports: 7 Imported by: 0

README

Guidelines to add deviations to FNT tests

When to use deviations

  1. Deviations may be created to use alternate OC or use CLI instead of OC to achieve the operational intent described in the README.
  2. Deviations should not be created which change the operational intent. See below for guidance on changing operational intent.
  3. Deviations may be created to change which OC path is used for telemetry or use an implementation's native yang path.  Deviations for telemetry should not introduce a depedency on CLI output.
  4. As with any pull request (PR), the CODEOWNERs must review and approve (or delegate if appropriate).
  5. The CODEOWNERs must ensure the README and code reflects the agreed to operational support goal.  This may be done via offline discussions or directly via approvals in the github PR.

See Deviation Examples for more information.

When not to use a deviation

Deviations should not be used to skip configuration or skip validations. If the feature is not supported and there is no workaround to achieve the functionality, then the test should fail for that platform.

If the README is in error, the README can be updated and code can be changed (without introducing deviation) with approval from the CODEOWNERs.

If the intent of the README needs to be changed (not due to an error, but a change in the feature request), the CODEOWNER must ensure all parties are notified. The CODEOWNER must determine if the change is late or early in the development cycle. If late (development is underway and/or nearly complete), it is recommended to create a new test which represents the change. If early in the feature request (development has not started or is very early stage), then the existing README and code may be updated.

Adding Deviations

  message Deviations {
    ...
    // Device does not support fragmentation bit for traceroute.
    bool traceroute_fragmentation = 2;
    ...
  }
  • Run make proto/metadata_go_proto/metadata.pb.go from your featureprofiles root directory to generate the Go code for the added proto fields.
  $ make proto/metadata_go_proto/metadata.pb.go
  mkdir -p proto/metadata_go_proto
  # Set directory to hold symlink
  mkdir -p protobuf-import
  # Remove any existing symlinks & empty directories
  find protobuf-import -type l -delete
  find protobuf-import -type d -empty -delete
  # Download the required dependencies
  go mod download
  # Get ondatra modules we use and create required directory structure
  go list -f 'protobuf-import/{{ .Path }}' -m github.com/openconfig/ondatra | xargs -L1 dirname | sort | uniq | xargs mkdir -p
  go list -f '{{ .Dir }} protobuf-import/{{ .Path }}' -m github.com/openconfig/ondatra | xargs -L1 -- ln -s
  protoc -I='protobuf-import' --proto_path=proto --go_out=./ --go_opt=Mmetadata.proto=proto/metadata_go_proto metadata.proto
  goimports -w proto/metadata_go_proto/metadata.pb.go
  • Add the accessor function for this deviation to the internal/deviations/deviations.go file. This function will need to accept a parameter dut of type *ondatra.DUTDevice to lookup the deviation value for a specific dut. This accessor function must call lookupDUTDeviations and return the deviation value. Test code will use this function to access deviations.

    • If the default value of the deviation is the same as the default value for the proto field, the accessor method can directly call the Get*() function for the deviation field. For example, the boolean traceroute_fragmentation deviation, which has a default value of false, will have an accessor method with the single line return lookupDUTDeviations(dut).GetTracerouteFragmentation().
     // TraceRouteFragmentation returns if the device does not support fragmentation bit for traceroute.
     // Default value is false.
     func TraceRouteFragmentation(dut *ondatra.DUTDevice) bool {
       return lookupDUTDeviations(dut).GetTracerouteFragmentation()
     }
    
    • If the default value of deviation is not the same as the default value of the proto field, the accessor method can add a check and return the required default value. For example, the accessor method for the float hierarchical_weight_resolution_tolerance deviation, which has a default value of 0, will call the GetHierarchicalWeightResolutionTolerance() to check the value set in metadata.textproto and return the default value 0.2 if applicable.
    // HierarchicalWeightResolutionTolerance returns the allowed tolerance for BGP traffic flow while comparing for pass or fail conditions.
    // Default minimum value is 0.2. Anything less than 0.2 will be set to 0.2.
    func HierarchicalWeightResolutionTolerance(dut *ondatra.DUTDevice) float64 {
      hwrt := lookupDUTDeviations(dut).GetHierarchicalWeightResolutionTolerance()
      if minHWRT := 0.2; hwrt < minHWRT {
           return minHWRT
      }
      return hwrt
    }
    
  • Set the deviation value in the metadata.textproto file in the same folder as the test. For example, the deviations used in the test feature/gnoi/system/tests/traceroute_test/traceroute_test.go will be set in the file feature/gnoi/system/tests/traceroute_test/metadata.textproto. List all the vendor and optionally also hardware model regex that this deviation is applicable for.

    ...
    platform_exceptions: {
      platform: {
        vendor: CISCO
      }
      deviations: {
        traceroute_fragmentation: true
        traceroute_l4_protocol_udp: true
      }
    }
    ...
    
  • To access the deviation from the test call the accessor function for the deviation. Pass the dut to this accessor.

    if deviations.TraceRouteFragmentation(dut) {
      ...
    }
    
  • Example PRs - https://github.com/openconfig/featureprofiles/pull/1649 and https://github.com/openconfig/featureprofiles/pull/1668

Removing Deviations

  • Once a deviation is no longer required and removed from all tests, delete the deviation by removing them from the following files:

  • Run make proto/metadata_go_proto/metadata.pb.go from your featureprofiles root directory to update the Go code for the removed proto fields.

Deviation examples

conf := configureDUT(dut) // returns *oc.Root

if deviations.AlternateOCEnabled(t, dut) {
    switch dut.Vendor() {
    case ondatra.VENDOR_X:
      conf.SetAlternateOC(val)
    }
} else {
    conf.SetRequiredOC(val)
}
conf := configureDUT(dut) // returns *oc.Root

if deviations.RequiredOCNotSupported(t, dut) {
    switch dut.Vendor() {
    case ondatra.VENDOR_X:
        configureDeviceUsingCli(t, dut, vendorXConfig)
    }
}

Notes

  • If you run into issues with the make proto/metadata_go_proto/metadata.pb.go you may need to check if the protoc module is installed in your environment. Also depending on your Go version you may need to update your PATH and GOPATH.
  • After running the make proto/metadata_go_proto/metadata.pb.go script, a protobuf-import/ folder will be added in your current directory. Keep an eye out for this in case you use git add . to add modified files since this folder should not be part of your PR.

Documentation

Overview

Package deviations defines the arguments to enable temporary workarounds for the featureprofiles test suite using command line flags.

If we consider device compliance level in tiers:

  • Tier 0: Full OpenConfig compliance. The device can do everything specified by OpenConfig.
  • Tier 1: Test plan compliance. The device can pass a test without deviation, which means it satisfies the test requirements. This is the target compliance tier for featureprofiles tests.
  • Tier 2: Deviated test plan compliance. The device can pass a test with deviation.

Deviations typically work by reducing testing requirements or by changing the way the configuration is done. However, the targeted compliance tier is always without deviation.

Requirements for deviations:

  • Deviations may only use OpenConfig compliant behavior.
  • Deviations should be small in scope, typically affecting one subtest, one OpenConfig path or small OpenConfig subtree.

If a device could not pass without deviation, that is considered non-compliant behavior. Ideally, a device should pass both with and without a deviation which means the deviation could be safely removed. However, when the OpenConfig model allows the device to reject the deviated case even if it is compliant, then this should be explained on a case-by-case basis.

To add, remove and enable deviations follow the guidelines at deviations/README.md

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ACLCountersEnableOCUnsupported

func ACLCountersEnableOCUnsupported(dut *ondatra.DUTDevice) bool

ACLCountersEnableOCUnsupported returns true if enabling ACL counters via OpenConfig is unsupported. Arista: https://partnerissuetracker.corp.google.com/issues/485515097

func ACLIcmpTypeCodeConfigurationUnsupported

func ACLIcmpTypeCodeConfigurationUnsupported(dut *ondatra.DUTDevice) bool

ACLIcmpTypeCodeConfigurationUnsupported returns true if device does not support configuring ICMP type and code fields for ACL. Arista: https://partnerissuetracker.corp.google.com/issues/487324495

func AFTSummaryOCUnsupported

func AFTSummaryOCUnsupported(dut *ondatra.DUTDevice) bool

AFTSummaryOCUnsupported returns true "/network-instances/network-instance/afts/aft-summaries" OC path is not supported.

func ATEIPv6FlowLabelUnsupported

func ATEIPv6FlowLabelUnsupported(ate *ondatra.ATEDevice) bool

ATEIPv6FlowLabelUnsupported returns true for traffic generators that do not support IPv6 flow labels

func ATEPortLinkStateOperationsUnsupported

func ATEPortLinkStateOperationsUnsupported(ate *ondatra.ATEDevice) bool

ATEPortLinkStateOperationsUnsupported returns true for traffic generators that do not support port link state control operations (such as port shutdown.)

func AddMissingBaseConfigViaCli

func AddMissingBaseConfigViaCli(dut *ondatra.DUTDevice) bool

AddMissingBaseConfigViaCli returns true if missing base config needs to be added using CLI. Cisco: https://partnerissuetracker.corp.google.com/issues/322291556

func AdvertisedCumulativeLBwOCUnsupported

func AdvertisedCumulativeLBwOCUnsupported(dut *ondatra.DUTDevice) bool

AdvertisedCumulativeLBwOCUnsupported returns true if device does not support oc state path for advertised cumulative link bandwidth.

func AggregateAtomicUpdate

func AggregateAtomicUpdate(dut *ondatra.DUTDevice) bool

AggregateAtomicUpdate returns if device requires that aggregate Port-Channel and its members be defined in a single gNMI Update transaction at /interfaces, Otherwise lag-type will be dropped, and no member can be added to the aggregate. Full OpenConfig compliant devices should pass both with and without this deviation.

func AggregateBandwidthPolicyActionUnsupported

func AggregateBandwidthPolicyActionUnsupported(dut *ondatra.DUTDevice) bool

AggregateBandwidthPolicyActionUnsupported returns true if device does not support aggregate bandwidth policy action.

func AggregateSIDCounterOutPktsUnsupported

func AggregateSIDCounterOutPktsUnsupported(dut *ondatra.DUTDevice) bool

AggregateSIDCounterOutPktsUnsupported returns true if device does not support /network-instances/network-instance/mpls/signaling-protocols/segment-routing/aggregate-sid-counters/aggregate-sid-counter/state/out-pkts

func ArpFT

func ArpFT(dut *ondatra.DUTDevice) string

ArpFT returns the functional translator name for devices with neighbor link-layer-address paths unsupported. Cisco: https://partnerissuetracker.corp.google.com/issues/429137958

func AutoLinkBandwidthUnsupported

func AutoLinkBandwidthUnsupported(dut *ondatra.DUTDevice) bool

AutoLinkBandwidthUnsupported returns true if device does not support auto link bandwidth.

func AutoNegotiateUnsupported

func AutoNegotiateUnsupported(dut *ondatra.DUTDevice) bool

AutoNegotiateUnsupported returns true if there's no OC support for auto-negotiate

func BGPConditionsMatchCommunitySetUnsupported

func BGPConditionsMatchCommunitySetUnsupported(dut *ondatra.DUTDevice) bool

BGPConditionsMatchCommunitySetUnsupported returns true if device doesn't support bgp-conditions/match-community-set leaf

func BGPExplicitPrefixLimitReceived

func BGPExplicitPrefixLimitReceived(dut *ondatra.DUTDevice) bool

BGPExplicitPrefixLimitReceived returns if device must specify the received prefix limits explicitly under the "prefix-limit-received" field rather than simply "prefix-limit".

func BGPGlobalExtendedNextHopEncodingUnsupported

func BGPGlobalExtendedNextHopEncodingUnsupported(dut *ondatra.DUTDevice) bool

BGPGlobalExtendedNextHopEncodingUnsupported returns true for devices that do not support configuring BGP ExtendedNextHopEncoding at the global level.

func BGPMD5RequiresReset

func BGPMD5RequiresReset(dut *ondatra.DUTDevice) bool

BGPMD5RequiresReset returns if device requires a BGP session reset to utilize a new MD5 key.

func BGPMissingOCMaxPrefixesConfiguration

func BGPMissingOCMaxPrefixesConfiguration(dut *ondatra.DUTDevice) bool

BGPMissingOCMaxPrefixesConfiguration returns true for devices that does not configure BGP maximum routes correctly when max-prefixes OC leaf is configured.

func BGPRibOcPathUnsupported

func BGPRibOcPathUnsupported(dut *ondatra.DUTDevice) bool

BGPRibOcPathUnsupported returns true if BGP RIB OC telemetry path is not supported.

func BGPSetMedActionUnsupported

func BGPSetMedActionUnsupported(dut *ondatra.DUTDevice) bool

BGPSetMedActionUnsupported returns true if there's no OC support for BGP set med action

func BGPSetMedRequiresEqualOspfSetMetric

func BGPSetMedRequiresEqualOspfSetMetric(dut *ondatra.DUTDevice) bool

BGPSetMedRequiresEqualOspfSetMetric returns true for devices that require configuring the same OSPF setMetric when BGP SetMED is configured.

func BGPTrafficTolerance

func BGPTrafficTolerance(dut *ondatra.DUTDevice) int32

BGPTrafficTolerance returns the allowed tolerance for BGP traffic flow while comparing for pass or fail conditions.

func BMPOCUnsupported

func BMPOCUnsupported(dut *ondatra.DUTDevice) bool

BMPOCUnsupported returns true if BMP configuration is not supported

func BackplaneFacingCapacityUnsupported

func BackplaneFacingCapacityUnsupported(dut *ondatra.DUTDevice) bool

BackplaneFacingCapacityUnsupported returns whether the device supports backplane-facing-capacity leaves for some components.

func BackupNHGRequiresVrfWithDecap

func BackupNHGRequiresVrfWithDecap(dut *ondatra.DUTDevice) bool

BackupNHGRequiresVrfWithDecap returns true for devices that require IPOverIP Decapsulation for Backup NHG without interfaces.

func BannerDelimiter

func BannerDelimiter(dut *ondatra.DUTDevice) string

BannerDelimiter returns if device requires the banner to have a delimiter character. Full OpenConfig compliant devices should work without delimiter.

func BgpActionsSetCommunityMethodUnsupported

func BgpActionsSetCommunityMethodUnsupported(dut *ondatra.DUTDevice) bool

BgpActionsSetCommunityMethodUnsupported return true if BGP actions set-community method is unsupported

func BgpAfiSafiInDefaultNiBeforeOtherNi

func BgpAfiSafiInDefaultNiBeforeOtherNi(dut *ondatra.DUTDevice) bool

BgpAfiSafiInDefaultNiBeforeOtherNi returns true if certain AFI SAFIs are configured in default network instance before other network instances

func BgpAfiSafiWildcardNotSupported

func BgpAfiSafiWildcardNotSupported(dut *ondatra.DUTDevice) bool

BgpAfiSafiWildcardNotSupported return true if bgp afi/safi wildcard query is not supported. For example, this yang path query includes the wildcard key `afi-safi-name=`: `/network-instances/network-instance[name=DEFAULT]/protocols/protocol[identifier=BGP][name=BGP]/bgp/neighbors/neighbor[neighbor-address=192.0.2.2]/afi-safis/afi-safi[afi-safi-name=]`. Use of this deviation is permitted if a query using an explicit key is supported (such as `oc.BgpTypes_AFI_SAFI_TYPE_IPV4_UNICAST`).

func BgpAspathsetUnsupported

func BgpAspathsetUnsupported(dut *ondatra.DUTDevice) bool

BgpAspathsetUnsupported returns true if as-path-set for bgp-defined-sets is unsupported

func BgpCommunityMemberIsAString

func BgpCommunityMemberIsAString(dut *ondatra.DUTDevice) bool

BgpCommunityMemberIsAString returns true if device community member is not a list

func BgpCommunitySetRefsUnsupported

func BgpCommunitySetRefsUnsupported(dut *ondatra.DUTDevice) bool

BgpCommunitySetRefsUnsupported return true if BGP community set refs is not supported.

func BgpCommunityTypeSliceInputUnsupported

func BgpCommunityTypeSliceInputUnsupported(dut *ondatra.DUTDevice) bool

BgpCommunityTypeSliceInputUnsupported returns true if device does not support slice input of BGP community type Cisco: https://partnerissuetracker.corp.google.com/u/0/issues/468284934

func BgpConfigDuringGracefulRestartUnsupported

func BgpConfigDuringGracefulRestartUnsupported(dut *ondatra.DUTDevice) bool

BgpConfigDuringGracefulRestartUnsupported returns true if the device does not support BGP configuration during graceful restart. Nokia: https://partnerissuetracker.corp.google.com/issues/489255397

func BgpDefaultPolicyBehaviorAcceptRoute

func BgpDefaultPolicyBehaviorAcceptRoute(dut *ondatra.DUTDevice) bool

BgpDefaultPolicyBehaviorAcceptRoute returns true if the BGP accepts routes by default when there is no routing policy or default policy configured.

func BgpDefaultPolicyUnsupported

func BgpDefaultPolicyUnsupported(dut *ondatra.DUTDevice) bool

BgpDefaultPolicyUnsupported return true if BGP default-import/export-policy is not supported.

func BgpDeleteLinkBandwidthUnsupported

func BgpDeleteLinkBandwidthUnsupported(dut *ondatra.DUTDevice) bool

BgpDeleteLinkBandwidthUnsupported returns true if bgp delete link bandwidth is unsupported

func BgpDistanceOcPathUnsupported

func BgpDistanceOcPathUnsupported(dut *ondatra.DUTDevice) bool

BgpDistanceOcPathUnsupported returns true if BGP Distance OC telemetry path is not supported.

func BgpExplicitExtendedCommunityEnable

func BgpExplicitExtendedCommunityEnable(dut *ondatra.DUTDevice) bool

BgpExplicitExtendedCommunityEnable returns true if explicit extended community enable is needed

func BgpExtendedCommunityIndexUnsupported

func BgpExtendedCommunityIndexUnsupported(dut *ondatra.DUTDevice) bool

BgpExtendedCommunityIndexUnsupported return true if BGP extended community index is not supported.

func BgpExtendedCommunitySetUnsupported

func BgpExtendedCommunitySetUnsupported(dut *ondatra.DUTDevice) bool

BgpExtendedCommunitySetUnsupported returns true if set bgp extended community is unsupported

func BgpGrHelperDisableUnsupported

func BgpGrHelperDisableUnsupported(dut *ondatra.DUTDevice) bool

BgpGrHelperDisableUnsupported returns whether the device does not support to disable BGP GR Helper.

func BgpGracefulRestartUnderAfiSafiUnsupported

func BgpGracefulRestartUnderAfiSafiUnsupported(dut *ondatra.DUTDevice) bool

BgpGracefulRestartUnderAfiSafiUnsupported returns whether the device does not support bgp GR-RESTART under AFI/SAFI.

func BgpLlgrOcUndefined

func BgpLlgrOcUndefined(dut *ondatra.DUTDevice) bool

BgpLlgrOcUndefined returns true if device does not support OC path to disable BGP LLGR.

func BgpLocalAggregateUnsupported

func BgpLocalAggregateUnsupported(dut *ondatra.DUTDevice) bool

BgpLocalAggregateUnsupported returns true for devices that don't support OC configuration of BGP local aggregates

func BgpMaxMultipathPathsUnsupported

func BgpMaxMultipathPathsUnsupported(dut *ondatra.DUTDevice) bool

BgpMaxMultipathPathsUnsupported returns true if the device does not support bgp max multipaths.

func BgpPrefixsetReqRoutepolRef

func BgpPrefixsetReqRoutepolRef(dut *ondatra.DUTDevice) bool

BgpPrefixsetReqRoutepolRef returns true if devices needs route policy reference to stream prefix set info.

func BgpRibStreamingConfigRequired

func BgpRibStreamingConfigRequired(dut *ondatra.DUTDevice) bool

BgpRibStreamingConfigRequired returns true for devices that require an an explicit config to support BGP RIB streaming through YANG path:

/network-instances/network-instance/protocols/protocol/bgp/rib

Arista: https://partnerissuetracker.corp.google.com/issues/471971235

func BgpRplDirectlyUnderPeerGroupUnsupported

func BgpRplDirectlyUnderPeerGroupUnsupported(dut *ondatra.DUTDevice) bool

BgpRplDirectlyUnderPeerGroupUnsupported returns true if the device does not support BGP RPL under peer-group directly Cisco: https://partnerissuetracker.corp.google.com/issues/490033220

func BgpSessionStateIdleInPassiveMode

func BgpSessionStateIdleInPassiveMode(dut *ondatra.DUTDevice) bool

BgpSessionStateIdleInPassiveMode returns true if BGP session state idle is not supported instead of active in passive mode.

func BgpSetExtCommunitySetRefsUnsupported

func BgpSetExtCommunitySetRefsUnsupported(dut *ondatra.DUTDevice) bool

BgpSetExtCommunitySetRefsUnsupported returns true if bgp set ext community refs is unsupported

func BreakoutModeUnsupportedForEightHundredGb

func BreakoutModeUnsupportedForEightHundredGb(dut *ondatra.DUTDevice) bool

BreakoutModeUnsupportedForEightHundredGb returns true if the device does not support breakout mode for 800G ports.

func CLITakesPrecedenceOverOC

func CLITakesPrecedenceOverOC(dut *ondatra.DUTDevice) bool

CLITakesPrecedenceOverOC returns whether config pushed through origin CLI takes precedence over config pushed through origin OC.

func CPUMissingAncestor

func CPUMissingAncestor(dut *ondatra.DUTDevice) bool

CPUMissingAncestor deviation set to true for devices where the CPU components do not map to a FRU parent component in the OC tree.

func CPUUtilizationQueryAgainstBaseControllerCardComponent

func CPUUtilizationQueryAgainstBaseControllerCardComponent(dut *ondatra.DUTDevice) bool

CPUUtilizationQueryAgainstBaseControllerCardComponent returns true if the device reports Controller CPU utilization against the base controller card component example: against "0/RP0/CPU0" and not "0/RP00/CPU0-Broadwell-DE (D-1573N)"

func CPUUtilizationQueryAgainstBaseLinecardComponent

func CPUUtilizationQueryAgainstBaseLinecardComponent(dut *ondatra.DUTDevice) bool

CPUUtilizationQueryAgainstBaseLinecardComponent returns true if the device reports linecard CPU utilization against the base linecard component example: against "0/0/CPU0" and not "0/0/CPU0-Broadwell-DE (D-1573N)"

func CfmOCUnsupported

func CfmOCUnsupported(dut *ondatra.DUTDevice) bool

CfmOCUnsupported returns true if CFM is unsupported

func ChannelRateClassParametersUnsupported

func ChannelRateClassParametersUnsupported(dut *ondatra.DUTDevice) bool

ChannelRateClassParametersUnsupported returns true if channel rate class parameters are unsupported

func ChassisGetRPCUnsupported

func ChassisGetRPCUnsupported(dut *ondatra.DUTDevice) bool

ChassisGetRPCUnsupported returns true if a Healthz Get RPC against the Chassis component is unsupported

func CiscoPreFECBERInactiveValue

func CiscoPreFECBERInactiveValue(dut *ondatra.DUTDevice) bool

CiscoPreFECBERInactiveValue returns true if a non-zero pre-fec-ber value is to be used for Cisco

func Ciscoxr8000IntegratedCircuitResourceFt

func Ciscoxr8000IntegratedCircuitResourceFt(dut *ondatra.DUTDevice) string

Ciscoxr8000IntegratedCircuitResourceFt returns the functional translator to be used for translating integrated circuit resource leaves.

func CiscoxrLaserFt

func CiscoxrLaserFt(dut *ondatra.DUTDevice) string

CiscoxrLaserFt returns the functional translator to be used for translating transceiver threshold leaves.

func CiscoxrTransceiverFt

func CiscoxrTransceiverFt(dut *ondatra.DUTDevice) string

CiscoxrTransceiverFt returns the functional translator to be used for translating transceiver threshold leaves.

func CommunityInvertAnyUnsupported

func CommunityInvertAnyUnsupported(dut *ondatra.DUTDevice) bool

CommunityInvertAnyUnsupported returns true when device does not support community invert any.

func CommunityMatchWithRedistributionUnsupported

func CommunityMatchWithRedistributionUnsupported(dut *ondatra.DUTDevice) bool

CommunityMatchWithRedistributionUnsupported is set to true for devices that do not support matching community at the redistribution attach point.

func CommunityMemberRegexUnsupported

func CommunityMemberRegexUnsupported(dut *ondatra.DUTDevice) bool

CommunityMemberRegexUnsupported return true if device do not support community member regex

func ComponentMfgDateUnsupported

func ComponentMfgDateUnsupported(dut *ondatra.DUTDevice) bool

ComponentMfgDateUnsupported returns true if component's mfg-date leaf is unsupported

func ConfigACLOcUnsupported

func ConfigACLOcUnsupported(dut *ondatra.DUTDevice) bool

ConfigACLOcUnsupported returns true if OC for configuring parameter in ACL with OC is not supported

func ConfigACLValueAnyOcUnsupported

func ConfigACLValueAnyOcUnsupported(dut *ondatra.DUTDevice) bool

ConfigACLValueAnyOcUnsupported returns true if OC for configuring parameter in ACL with value ANY not supported

func ConfigACLWithPrefixListNotSupported

func ConfigACLWithPrefixListNotSupported(dut *ondatra.DUTDevice) bool

ConfigACLWithPrefixListNotSupported returns true if configuring prefixlist in ACL not supported

func ConfigLeafCreateRequired

func ConfigLeafCreateRequired(dut *ondatra.DUTDevice) bool

ConfigLeafCreateRequired returns true if leaf creation is required

func ConnectRetry

func ConnectRetry(dut *ondatra.DUTDevice) bool

ConnectRetry returns if /bgp/neighbors/neighbor/timers/config/connect-retry is not supported.

func ConsistentComponentNamesUnsupported

func ConsistentComponentNamesUnsupported(dut *ondatra.DUTDevice) bool

ConsistentComponentNamesUnsupported returns if the device does not support consistent component names for GNOI and GNMI. Default value is false.

func ContainerzOCUnsupported

func ContainerzOCUnsupported(dut *ondatra.DUTDevice) bool

ContainerzOCUnsupported returns true if devices cannot configure containerz via OpenConfig

func ContainerzPluginRPCUnsupported

func ContainerzPluginRPCUnsupported(dut *ondatra.DUTDevice) bool

ContainerzPluginRPCUnsupported returns true if ContainerZ plugin RPCs are unsupported.

func ControllerCardCPUUtilizationUnsupported

func ControllerCardCPUUtilizationUnsupported(dut *ondatra.DUTDevice) bool

ControllerCardCPUUtilizationUnsupported returns if the device does not support telemetry path /components/component/cpu/utilization/state/avg for controller cards' CPU card. Default value is false.

func DecapNHWithNextHopNIUnsupported

func DecapNHWithNextHopNIUnsupported(dut *ondatra.DUTDevice) bool

DecapNHWithNextHopNIUnsupported returns true if Decap NH with NextHopNetworkInstance is unsupported

func DecapsulateGueOCUnsupported

func DecapsulateGueOCUnsupported(dut *ondatra.DUTDevice) bool

DecapsulateGueOCUnsupported returns true if decapsulation group is not supported

func DefaultBgpInstanceName

func DefaultBgpInstanceName(dut *ondatra.DUTDevice) string

DefaultBgpInstanceName returns bgp instance name as set in deviation to override default value "DEFAULT"

func DefaultImportExportPolicyUnsupported

func DefaultImportExportPolicyUnsupported(dut *ondatra.DUTDevice) bool

DefaultImportExportPolicyUnsupported returns true when device does not support default import export policy.

func DefaultNetworkInstance

func DefaultNetworkInstance(dut *ondatra.DUTDevice) string

DefaultNetworkInstance returns the name used for the default network instance for VRF.

func DefaultNiGnmiServerName

func DefaultNiGnmiServerName(dut *ondatra.DUTDevice) string

DefaultNiGnmiServerName returns the user provided default server name for gRPC server in the default network-instance.

func DefaultNoIgpMetricPropagation

func DefaultNoIgpMetricPropagation(dut *ondatra.DUTDevice) bool

DefaultNoIgpMetricPropagation returns true for devices that do not propagate IGP metric through redistribution

func DefaultRoutePolicyUnsupported

func DefaultRoutePolicyUnsupported(dut *ondatra.DUTDevice) bool

DefaultRoutePolicyUnsupported returns true if default route policy is not supported

func DeprecatedVlanID

func DeprecatedVlanID(dut *ondatra.DUTDevice) bool

DeprecatedVlanID returns if device requires using the deprecated openconfig-vlan:vlan/config/vlan-id or openconfig-vlan:vlan/state/vlan-id leaves.

func DequeueDeleteNotCountedAsDrops

func DequeueDeleteNotCountedAsDrops(dut *ondatra.DUTDevice) bool

DequeueDeleteNotCountedAsDrops returns if device dequeues and deletes the pkts after a while and those are not counted as drops

func DisableHardwareNexthopProxy

func DisableHardwareNexthopProxy(dut *ondatra.DUTDevice) bool

DisableHardwareNexthopProxy returns true if the device requires disabling hardware nexthop proxying

func DropWeightLeavesUnsupported

func DropWeightLeavesUnsupported(dut *ondatra.DUTDevice) bool

DropWeightLeavesUnsupported returns whether the device supports drop and weight leaves under queue management profile.

func DuplexModeUnsupported

func DuplexModeUnsupported(dut *ondatra.DUTDevice) bool

DuplexModeUnsupported returns true if there's no OC support for duplex-mode

func ECNProfileRequiredDefinition

func ECNProfileRequiredDefinition(dut *ondatra.DUTDevice) bool

ECNProfileRequiredDefinition returns whether the device requires additional config for ECN.

func EcnSameMinMaxThresholdUnsupported

func EcnSameMinMaxThresholdUnsupported(dut *ondatra.DUTDevice) bool

EcnSameMinMaxThresholdUnsupported returns true for devices that don't support the same minimum and maximum threshold values CISCO: minimum and maximum threshold values are not the same, the difference between minimum and maximum threshold value should be 6144.

func EnableMultipathUnderAfiSafi

func EnableMultipathUnderAfiSafi(dut *ondatra.DUTDevice) bool

EnableMultipathUnderAfiSafi returns true for devices that do not support multipath under /global path and instead support under global/afi/safi path.

func EnableTableConnections

func EnableTableConnections(dut *ondatra.DUTDevice) bool

EnableTableConnections returns true if admin state of tableconnections needs to be enabled in SRL native model

func EncapTunnelShutBackupNhgZeroTraffic

func EncapTunnelShutBackupNhgZeroTraffic(dut *ondatra.DUTDevice) bool

EncapTunnelShutBackupNhgZeroTraffic returns true when encap tunnel is shut then zero traffic flows to back-up NHG

func EthChannelAssignmentCiscoNumbering

func EthChannelAssignmentCiscoNumbering(dut *ondatra.DUTDevice) bool

EthChannelAssignmentCiscoNumbering returns true if eth channel assignment index starts from 1 instead of 0

func EthChannelIngressParametersUnsupported

func EthChannelIngressParametersUnsupported(dut *ondatra.DUTDevice) bool

EthChannelIngressParametersUnsupported returns true if ingress parameters are unsupported under ETH channel configuration

func EthernetOverMPLSogreOCUnsupported

func EthernetOverMPLSogreOCUnsupported(dut *ondatra.DUTDevice) bool

EthernetOverMPLSogreOCUnsupported returns true if ethernet over mplsogre is unsupported

func ExplicitBreakoutInterfaceConfig

func ExplicitBreakoutInterfaceConfig(dut *ondatra.DUTDevice) bool

ExplicitBreakoutInterfaceConfig returns true if the device needs explicit breakout interface config.

func ExplicitDcoConfig

func ExplicitDcoConfig(dut *ondatra.DUTDevice) bool

ExplicitDcoConfig returns true if a user-configured value is required in module-functional-type for the transceiver

func ExplicitEnableBGPOnDefaultVRF

func ExplicitEnableBGPOnDefaultVRF(dut *ondatra.DUTDevice) bool

ExplicitEnableBGPOnDefaultVRF return true if BGP needs to be explicitly enabled on default VRF

func ExplicitIPv6EnableForGRIBI

func ExplicitIPv6EnableForGRIBI(dut *ondatra.DUTDevice) bool

ExplicitIPv6EnableForGRIBI returns if device requires Ipv6 to be enabled on interface for gRIBI NH programmed with destination mac address.

func ExplicitInterfaceInDefaultVRF

func ExplicitInterfaceInDefaultVRF(dut *ondatra.DUTDevice) bool

ExplicitInterfaceInDefaultVRF returns if device requires explicit attachment of an interface or subinterface to the default network instance. OpenConfig expects an unattached interface or subinterface to be implicitly part of the default network instance. Fully-compliant devices should pass with and without this deviation.

func ExplicitPortSpeed

func ExplicitPortSpeed(dut *ondatra.DUTDevice) bool

ExplicitPortSpeed returns if device requires port-speed to be set because its default value may not be usable. Fully compliant devices selects the highest speed available based on negotiation.

func ExplicitSwapSrcDstMacNeededForLoopbackMode

func ExplicitSwapSrcDstMacNeededForLoopbackMode(dut *ondatra.DUTDevice) bool

ExplicitSwapSrcDstMacNeededForLoopbackMode returns true if device needs to explicitly set swap-src-dst-mac for loopback mode

func ExplicitlyApplyAllowAllImportPolicy

func ExplicitlyApplyAllowAllImportPolicy(dut *ondatra.DUTDevice) bool

ExplicitlyApplyAllowAllImportPolicy returns true if we need to explicitly apply "allow-all" import policy on the device Cisco: https://partnerissuetracker.corp.google.com/issues/479056256

func FabricDropCounterUnsupported

func FabricDropCounterUnsupported(dut *ondatra.DUTDevice) bool

FabricDropCounterUnsupported returns if the device does not support counter for fabric block lost packets. Default value is false.

func FlattenPolicyWithMultipleStatements

func FlattenPolicyWithMultipleStatements(dut *ondatra.DUTDevice) bool

FlattenPolicyWithMultipleStatements return true if devices does not support policy-chaining

func FrBreakoutFix

func FrBreakoutFix(dut *ondatra.DUTDevice) bool

FrBreakoutFix returns true if the fix is needed Arista: https://issuetracker.google.com/426375784

func FragmentTotalDropsUnsupported

func FragmentTotalDropsUnsupported(dut *ondatra.DUTDevice) bool

FragmentTotalDropsUnsupported returns true if the device does not support fragment total drops.

func GNMIGetOnRootUnsupported

func GNMIGetOnRootUnsupported(dut *ondatra.DUTDevice) bool

GNMIGetOnRootUnsupported returns true if the device does not support gNMI get on root.

func GNOIFabricComponentRebootUnsupported

func GNOIFabricComponentRebootUnsupported(dut *ondatra.DUTDevice) bool

GNOIFabricComponentRebootUnsupported returns if device does not support use using gNOI to reboot the Fabric Component.

func GNOIStatusWithEmptySubcomponent

func GNOIStatusWithEmptySubcomponent(dut *ondatra.DUTDevice) bool

GNOIStatusWithEmptySubcomponent returns if the response of gNOI reboot status is a single value (not a list), the device requires explicit component path to account for a situation when there is more than one active reboot requests.

func GNOISubcomponentPath

func GNOISubcomponentPath(dut *ondatra.DUTDevice) bool

GNOISubcomponentPath returns if device currently uses component name instead of a full openconfig path.

func GNOISubcomponentRebootStatusUnsupported

func GNOISubcomponentRebootStatusUnsupported(dut *ondatra.DUTDevice) bool

GNOISubcomponentRebootStatusUnsupported returns true for devices that do not support subcomponent reboot status check.

func GNOISwitchoverReasonMissingUserInitiated

func GNOISwitchoverReasonMissingUserInitiated(dut *ondatra.DUTDevice) bool

GNOISwitchoverReasonMissingUserInitiated returns true for devices that don't report last-switchover-reason as USER_INITIATED for gNOI.SwitchControlProcessor.

func GRIBIMACOverrideStaticARPStaticRoute

func GRIBIMACOverrideStaticARPStaticRoute(dut *ondatra.DUTDevice) bool

GRIBIMACOverrideStaticARPStaticRoute returns whether the device needs to configure Static ARP + Static Route to override setting MAC address in Next Hop.

func GRIBIMACOverrideWithStaticARP

func GRIBIMACOverrideWithStaticARP(dut *ondatra.DUTDevice) bool

GRIBIMACOverrideWithStaticARP returns whether for a gRIBI IPv4 route the device does not support a mac-address only next-hop-entry.

func GRIBIRIBAckOnly

func GRIBIRIBAckOnly(dut *ondatra.DUTDevice) bool

GRIBIRIBAckOnly returns if device only supports RIB ack, so tests that normally expect FIB_ACK will allow just RIB_ACK. Full gRIBI compliant devices should pass both with and without this deviation.

func GetRetainGnmiCfgAfterReboot

func GetRetainGnmiCfgAfterReboot(dut *ondatra.DUTDevice) bool

GetRetainGnmiCfgAfterReboot returns true if the device requires additional configuration to retain gNMI config across reboots. Arista: https://partnerissuetracker.corp.google.com/476271160

func GlobalMaxEcmpPathsUnsupported

func GlobalMaxEcmpPathsUnsupported(dut *ondatra.DUTDevice) bool

GlobalMaxEcmpPathsUnsupported returns true if Max ECMP path on global level is unsupported

func GnpsiOcUnsupported

func GnpsiOcUnsupported(dut *ondatra.DUTDevice) bool

GnpsiOcUnsupported returns true if there's no OC support for configuring gNPSI

func GreDecapsulationOCUnsupported

func GreDecapsulationOCUnsupported(dut *ondatra.DUTDevice) bool

GreDecapsulationOCUnsupported returns true if decapsulation is not supported

func GreGueTunnelInterfaceOcUnsupported

func GreGueTunnelInterfaceOcUnsupported(dut *ondatra.DUTDevice) bool

GreGueTunnelInterfaceOcUnsupported returns true if GRE/GUE tunnel interface oc is unsupported

func GribiDecapMixedPlenUnsupported

func GribiDecapMixedPlenUnsupported(dut *ondatra.DUTDevice) bool

GribiDecapMixedPlenUnsupported returns true if devices does not support programming with mixed prefix length.

func GribiEncapHeaderUnsupported

func GribiEncapHeaderUnsupported(dut *ondatra.DUTDevice) bool

GribiEncapHeaderUnsupported returns true if gribi encap header is unsupported

func GribiRecordsUnsupported

func GribiRecordsUnsupported(dut *ondatra.DUTDevice) bool

GribiRecordsUnsupported returns true if Gribi records creation is not supported through OpenConfig.

func GueGreDecapOCUnsupported

func GueGreDecapOCUnsupported(dut *ondatra.DUTDevice) bool

GueGreDecapOCUnsupported returns true if gue gre decap is unsupported

func GueGreDecapUnsupported

func GueGreDecapUnsupported(dut *ondatra.DUTDevice) bool

GueGreDecapUnsupported returns true if gue or gre decap is unsupported

func HierarchicalWeightResolutionTolerance

func HierarchicalWeightResolutionTolerance(dut *ondatra.DUTDevice) float64

HierarchicalWeightResolutionTolerance returns the allowed tolerance for BGP traffic flow while comparing for pass or fail conditions. Default minimum value is 0.2. Anything less than 0.2 will be set to 0.2.

func IPNeighborMissing

func IPNeighborMissing(dut *ondatra.DUTDevice) bool

IPNeighborMissing returns true if the device does not support interface/ipv4(6)/neighbor, so test can suppress the related check for interface/ipv4(6)/neighbor.

func IPv4MissingEnabled

func IPv4MissingEnabled(dut *ondatra.DUTDevice) bool

IPv4MissingEnabled returns if device does not support interface/ipv4/enabled.

func IPv4StaticRouteWithIPv6NextHopUnsupported

func IPv4StaticRouteWithIPv6NextHopUnsupported(dut *ondatra.DUTDevice) bool

IPv4StaticRouteWithIPv6NextHopUnsupported unsupported ipv4 with ipv6 nexthop

func IPv6StaticRouteWithIPv4NextHopRequiresStaticARP

func IPv6StaticRouteWithIPv4NextHopRequiresStaticARP(dut *ondatra.DUTDevice) bool

IPv6StaticRouteWithIPv4NextHopRequiresStaticARP returns true if devices don't support having an IPv6 static Route with an IPv4 address as next hop and requires configuring a static ARP entry. Arista: https://partnerissuetracker.corp.google.com/issues/316593298

func IPv6StaticRouteWithIPv4NextHopUnsupported

func IPv6StaticRouteWithIPv4NextHopUnsupported(dut *ondatra.DUTDevice) bool

IPv6StaticRouteWithIPv4NextHopUnsupported unsupported ipv6 with ipv4 nexthop

func ISISAdjacencyStreamUnsupported

func ISISAdjacencyStreamUnsupported(dut *ondatra.DUTDevice) bool

ISISAdjacencyStreamUnsupported returns if "/network-instances/network-instance/protocols/protocol/isis/interfaces/interface/levels/level/adjacencies" OC path is not supported or malfunctioning when STREAM subscription is used .

func ISISCounterManualAddressDropFromAreasUnsupported

func ISISCounterManualAddressDropFromAreasUnsupported(dut *ondatra.DUTDevice) bool

ISISCounterManualAddressDropFromAreasUnsupported returns true for devices that do not support telemetry for isis system-level-counter manual-address-drop-from-areas.

func ISISCounterPartChangesUnsupported

func ISISCounterPartChangesUnsupported(dut *ondatra.DUTDevice) bool

ISISCounterPartChangesUnsupported returns true for devices that do not support telemetry for isis system-level-counter part-changes.

func ISISExplicitLevelAuthenticationConfig

func ISISExplicitLevelAuthenticationConfig(dut *ondatra.DUTDevice) bool

ISISExplicitLevelAuthenticationConfig returns true if ISIS Explicit Level Authentication configuration is required

func ISISGlobalAuthenticationNotRequired

func ISISGlobalAuthenticationNotRequired(dut *ondatra.DUTDevice) bool

ISISGlobalAuthenticationNotRequired returns true if ISIS Global authentication not required.

func ISISInstanceEnabledRequired

func ISISInstanceEnabledRequired(dut *ondatra.DUTDevice) bool

ISISInstanceEnabledRequired returns if isis instance name string should be set on the device.

func ISISInterfaceAfiUnsupported

func ISISInterfaceAfiUnsupported(dut *ondatra.DUTDevice) bool

ISISInterfaceAfiUnsupported returns true for devices that don't support configuring ISIS /afi-safi/af/config container.

func ISISInterfaceLevel1DisableRequired

func ISISInterfaceLevel1DisableRequired(dut *ondatra.DUTDevice) bool

ISISInterfaceLevel1DisableRequired returns if device should disable isis level1 under interface mode.

func ISISLSPTlvsOCUnsupported

func ISISLSPTlvsOCUnsupported(dut *ondatra.DUTDevice) bool

ISISLSPTlvsOCUnsupported returns true if "/network-instances/network-instance/protocols/protocol/isis/levels/level/link-state-database/lsp/tlvs" OC path is not supported.

func ISISLevelEnabled

func ISISLevelEnabled(dut *ondatra.DUTDevice) bool

ISISLevelEnabled returns if device should enable isis under level.

func ISISLoopbackRequired

func ISISLoopbackRequired(dut *ondatra.DUTDevice) bool

ISISLoopbackRequired returns true if isis loopback is required.

func ISISLspMetadataLeafsUnsupported

func ISISLspMetadataLeafsUnsupported(dut *ondatra.DUTDevice) bool

ISISLspMetadataLeafsUnsupported returns true for devices that don't support ISIS-Lsp metadata paths: checksum, sequence-number, remaining-lifetime.

func ISISMetricStyleTelemetryUnsupported

func ISISMetricStyleTelemetryUnsupported(dut *ondatra.DUTDevice) bool

ISISMetricStyleTelemetryUnsupported returns true for devices that do not support state path /network-instances/network-instance/protocols/protocol/isis/levels/level/state/metric-style

func ISISMultiTopologyUnsupported

func ISISMultiTopologyUnsupported(dut *ondatra.DUTDevice) bool

ISISMultiTopologyUnsupported returns if device skips isis multi-topology check.

func ISISRequireSameL1MetricWithL2Metric

func ISISRequireSameL1MetricWithL2Metric(dut *ondatra.DUTDevice) bool

ISISRequireSameL1MetricWithL2Metric returns true for devices that require configuring the same ISIS Metrics for Level 1 when configuring Level 2 Metrics.

func ISISRestartSuppressUnsupported

func ISISRestartSuppressUnsupported(dut *ondatra.DUTDevice) bool

ISISRestartSuppressUnsupported returns whether the device should skip isis restart-suppress check.

func ISISSingleTopologyRequired

func ISISSingleTopologyRequired(dut *ondatra.DUTDevice) bool

ISISSingleTopologyRequired sets isis af ipv6 single topology on the device if value is true.

func ISISTimersCsnpIntervalUnsupported

func ISISTimersCsnpIntervalUnsupported(dut *ondatra.DUTDevice) bool

ISISTimersCsnpIntervalUnsupported returns true for devices that do not support configuring csnp-interval timer for ISIS.

func IbgpMultipathPathUnsupported

func IbgpMultipathPathUnsupported(dut *ondatra.DUTDevice) bool

IbgpMultipathPathUnsupported returns true if device does not support configuring multipath path under ibgp

func InstallOSForStandbyRP

func InstallOSForStandbyRP(dut *ondatra.DUTDevice) bool

InstallOSForStandbyRP returns if device requires OS installation on standby RP as well as active RP.

func InstallPositionAndInstallComponentUnsupported

func InstallPositionAndInstallComponentUnsupported(dut *ondatra.DUTDevice) bool

InstallPositionAndInstallComponentUnsupported returns true if install position and install component are not supported.

func InterfaceConfigVRFBeforeAddress

func InterfaceConfigVRFBeforeAddress(dut *ondatra.DUTDevice) bool

InterfaceConfigVRFBeforeAddress returns if vrf should be configured before IP address when configuring interface.

func InterfaceCountersFromContainer

func InterfaceCountersFromContainer(dut *ondatra.DUTDevice) bool

InterfaceCountersFromContainer returns if the device only supports querying counters from the state container, not from individual counter leaves.

func InterfaceCountersInUnknownProtosUnsupported

func InterfaceCountersInUnknownProtosUnsupported(dut *ondatra.DUTDevice) bool

InterfaceCountersInUnknownProtosUnsupported returns if the device does not support interface counters in unknown protos. https://issuetracker.google.com/issues/461368936 Arista: https://issuetracker.google.com/456175795

func InterfaceCountersUpdateDelayed

func InterfaceCountersUpdateDelayed(dut *ondatra.DUTDevice) bool

InterfaceCountersUpdateDelayed returns true if telemetry for interface counters does not return the latest counter values.

func InterfaceEnabled

func InterfaceEnabled(dut *ondatra.DUTDevice) bool

InterfaceEnabled returns if device requires interface enabled leaf booleans to be explicitly set to true.

func InterfaceEthernetInblockErrorsUnsupported

func InterfaceEthernetInblockErrorsUnsupported(dut *ondatra.DUTDevice) bool

InterfaceEthernetInblockErrorsUnsupported returns true if device does not support interface ethernet in-block errors Arista: https://issuetracker.google.com/456175793

func InterfaceLoopbackModeRawGnmi

func InterfaceLoopbackModeRawGnmi(dut *ondatra.DUTDevice) bool

InterfaceLoopbackModeRawGnmi returns true if interface loopback mode needs to be updated using raw gnmi API due to server version. Default value is false.

func InterfaceOutputQueueNonStandardName

func InterfaceOutputQueueNonStandardName(dut *ondatra.DUTDevice) bool

InterfaceOutputQueueNonStandardName returns true if devices have non-standard output queue names

func InterfacePolicyForwardingOCUnsupported

func InterfacePolicyForwardingOCUnsupported(dut *ondatra.DUTDevice) bool

InterfacePolicyForwardingOCUnsupported returns true if interface policy forwarding is unsupported

func InterfaceRefConfigUnsupported

func InterfaceRefConfigUnsupported(dut *ondatra.DUTDevice) bool

InterfaceRefConfigUnsupported deviation set to true for devices that do not support interface-ref configuration when applying features to interface.

func InterfaceRefInterfaceIDFormat

func InterfaceRefInterfaceIDFormat(dut *ondatra.DUTDevice) bool

InterfaceRefInterfaceIDFormat returns if device is required to use interface-id format of interface name + .subinterface index with Interface-ref container

func Ipv6DiscardedPktsUnsupported

func Ipv6DiscardedPktsUnsupported(dut *ondatra.DUTDevice) bool

Ipv6DiscardedPktsUnsupported returns whether the device supports interface ipv6 discarded packet stats.

func Ipv6RouterAdvertisementConfigUnsupported

func Ipv6RouterAdvertisementConfigUnsupported(dut *ondatra.DUTDevice) bool

Ipv6RouterAdvertisementConfigUnsupported returns true for devices which don't support Ipv6 RouterAdvertisement configuration

func Ipv6RouterAdvertisementIntervalUnsupported

func Ipv6RouterAdvertisementIntervalUnsupported(dut *ondatra.DUTDevice) bool

Ipv6RouterAdvertisementIntervalUnsupported returns true for devices which don't support Ipv6 RouterAdvertisement interval configuration

func Ipv6RouterAdvertisementSuppressUnsupported

func Ipv6RouterAdvertisementSuppressUnsupported(dut *ondatra.DUTDevice) bool

Ipv6RouterAdvertisementSuppressUnsupported returns true if devices do not support suppress router advertisement.

func IsisDatabaseOverloadsUnsupported

func IsisDatabaseOverloadsUnsupported(dut *ondatra.DUTDevice) bool

IsisDatabaseOverloadsUnsupported returns true for devices that do not support database-overloads leaf

func IsisDisSysidUnsupported

func IsisDisSysidUnsupported(dut *ondatra.DUTDevice) bool

IsisDisSysidUnsupported returns true for devices that do not support dis-system-id leaf

func IsisInterfaceLevelPassiveUnsupported

func IsisInterfaceLevelPassiveUnsupported(dut *ondatra.DUTDevice) bool

IsisInterfaceLevelPassiveUnsupported returns true for devices that do not support passive leaf

func IsisMplsUnsupported

func IsisMplsUnsupported(dut *ondatra.DUTDevice) bool

IsisMplsUnsupported returns true if there's no OC support for MPLS under ISIS

func IsisSrNoPhpRequired

func IsisSrNoPhpRequired(dut *ondatra.DUTDevice) bool

IsisSrNoPhpRequired returns true if the device requires the no-php flag for ISIS SR prefix and node segments

func IsisSrNodeSegmentConfigUnsupported

func IsisSrNodeSegmentConfigUnsupported(dut *ondatra.DUTDevice) bool

IsisSrNodeSegmentConfigUnsupported returns true if ISIS SR node segment config is unsupported

func IsisSrPrefixSegmentConfigUnsupported

func IsisSrPrefixSegmentConfigUnsupported(dut *ondatra.DUTDevice) bool

IsisSrPrefixSegmentConfigUnsupported returns true if Isis Prefix Segment is not supported

func IsisSrgbSrlbUnsupported

func IsisSrgbSrlbUnsupported(dut *ondatra.DUTDevice) bool

IsisSrgbSrlbUnsupported returns true if SRLB and SRGB configuration is not effective with OC config

func LLDPInterfaceConfigOverrideGlobal

func LLDPInterfaceConfigOverrideGlobal(dut *ondatra.DUTDevice) bool

LLDPInterfaceConfigOverrideGlobal returns if LLDP interface config should override the global config, expect neighbours are seen when lldp is disabled globally but enabled on interface

func LabelRangeOCUnsupported

func LabelRangeOCUnsupported(dut *ondatra.DUTDevice) bool

LabelRangeOCUnsupported returns true if label range is unsupported

func LinePortUnsupported

func LinePortUnsupported(dut *ondatra.DUTDevice) bool

LinePortUnsupported returns whether the DUT does not support line-port configuration on optical channel components.

func LinecardCPUUtilizationUnsupported

func LinecardCPUUtilizationUnsupported(dut *ondatra.DUTDevice) bool

LinecardCPUUtilizationUnsupported returns if the device does not support telemetry path /components/component/cpu/utilization/state/avg for linecards' CPU card. Default value is false.

func LinecardMemoryUtilizationUnsupported

func LinecardMemoryUtilizationUnsupported(dut *ondatra.DUTDevice) bool

LinecardMemoryUtilizationUnsupported returns if the device does not support memory utilization related leaves for linecard components. Default value is false.

func LinkLocalInsteadOfNh

func LinkLocalInsteadOfNh(dut *ondatra.DUTDevice) bool

LinkLocalInsteadOfNh returns true if device requires link-local instead of NH.

func LinkLocalMaskLen

func LinkLocalMaskLen(dut *ondatra.DUTDevice) bool

LinkLocalMaskLen returns true if linklocal mask length is not 64

func LinkQualWaitAfterDeleteRequired

func LinkQualWaitAfterDeleteRequired(dut *ondatra.DUTDevice) bool

LinkQualWaitAfterDeleteRequired returns whether the device requires additional time to complete post delete link qualification cleanup.

func LoadBalancePolicyOCUnsupported

func LoadBalancePolicyOCUnsupported(dut *ondatra.DUTDevice) bool

LoadBalancePolicyOCUnsupported returns true if load-balancing policy configuration is not supported through OpenConfig.

func LoadIntervalNotSupported

func LoadIntervalNotSupported(dut *ondatra.DUTDevice) bool

LoadIntervalNotSupported returns true if load interval is not supported on vendors

func LocalProxyOCUnsupported

func LocalProxyOCUnsupported(dut *ondatra.DUTDevice) bool

LocalProxyOCUnsupported returns true if local proxy is unsupported

func LocalhostForContainerz

func LocalhostForContainerz(dut *ondatra.DUTDevice) bool

LocalhostForContainerz returns true if the device uses an IPv6 address instead of localhost.

func LowScaleAft

func LowScaleAft(dut *ondatra.DUTDevice) bool

LowScaleAft returns if device requires link-local instead of NH.

func MacsecOCUnsupported

func MacsecOCUnsupported(dut *ondatra.DUTDevice) bool

MacsecOCUnsupported returns true if macsec is unsupported

func MatchAsPathSetUnsupported

func MatchAsPathSetUnsupported(dut *ondatra.DUTDevice) bool

MatchAsPathSetUnsupported returns true if match-as-path-set policy configuration is not supported

func MatchCommunitySetMatchSetOptionsAllUnsupported

func MatchCommunitySetMatchSetOptionsAllUnsupported(dut *ondatra.DUTDevice) bool

MatchCommunitySetMatchSetOptionsAllUnsupported returns true if device does not support match-set-options=ALL for bgp-conditions community-sets Arista: b/335739231

func MatchTagSetConditionUnsupported

func MatchTagSetConditionUnsupported(dut *ondatra.DUTDevice) bool

MatchTagSetConditionUnsupported returns true if match tag set condition is not supported

func MaxEcmpPaths

func MaxEcmpPaths(dut *ondatra.DUTDevice) bool

MaxEcmpPaths supported for isis max ecmp path

func MemberLinkLoopbackUnsupported

func MemberLinkLoopbackUnsupported(dut *ondatra.DUTDevice) bool

MemberLinkLoopbackUnsupported returns true for devices that require configuring loopback on aggregated links instead of member links.

func MismatchedHardwareResourceNameInComponent

func MismatchedHardwareResourceNameInComponent(dut *ondatra.DUTDevice) bool

MismatchedHardwareResourceNameInComponent returns true for devices that have separate naming conventions for hardware resource name in /system/ tree and /components/ tree.

func MissingBgpLastNotificationErrorCode

func MissingBgpLastNotificationErrorCode(dut *ondatra.DUTDevice) bool

MissingBgpLastNotificationErrorCode returns whether the last-notification-error-code leaf is missing in bgp.

func MissingIsisInterfaceAfiSafiEnable

func MissingIsisInterfaceAfiSafiEnable(dut *ondatra.DUTDevice) bool

MissingIsisInterfaceAfiSafiEnable returns if device should set and validate isis interface address family enable. Default is validate isis address family enable at global mode.

func MissingPortToOpticalChannelMapping

func MissingPortToOpticalChannelMapping(dut *ondatra.DUTDevice) bool

MissingPortToOpticalChannelMapping returns true for devices missing component tree mapping from hardware port to optical channel.

func MissingPrePolicyReceivedRoutes

func MissingPrePolicyReceivedRoutes(dut *ondatra.DUTDevice) bool

MissingPrePolicyReceivedRoutes returns if device does not support bgp/neighbors/neighbor/afi-safis/afi-safi/state/prefixes/received-pre-policy. Fully-compliant devices should pass with and without this deviation.

func MissingStaticRouteDropNextHopTelemetry

func MissingStaticRouteDropNextHopTelemetry(dut *ondatra.DUTDevice) bool

MissingStaticRouteDropNextHopTelemetry returns true for devices missing static route telemetry with DROP next hop. Arista: https://partnerissuetracker.corp.google.com/issues/330619816

func MissingStaticRouteNextHopMetricTelemetry

func MissingStaticRouteNextHopMetricTelemetry(dut *ondatra.DUTDevice) bool

MissingStaticRouteNextHopMetricTelemetry returns true for devices missing static route next-hop metric telemetry. Arista: https://partnerissuetracker.corp.google.com/issues/321010782

func MissingSystemDescriptionConfigPath

func MissingSystemDescriptionConfigPath(dut *ondatra.DUTDevice) bool

MissingSystemDescriptionConfigPath returns true if device does not support config lldp system-description leaf

func MissingValueForDefaults

func MissingValueForDefaults(dut *ondatra.DUTDevice) bool

MissingValueForDefaults returns if device returns no value for some OpenConfig paths if the operational value equals the default.

func MissingZROpticalChannelTunableParametersTelemetry

func MissingZROpticalChannelTunableParametersTelemetry(dut *ondatra.DUTDevice) bool

MissingZROpticalChannelTunableParametersTelemetry returns true for devices missing 400ZR optical-channel tunable parameters telemetry: min/max/avg. Arista: https://partnerissuetracker.corp.google.com/issues/319314781

func ModelNameUnsupported

func ModelNameUnsupported(dut *ondatra.DUTDevice) bool

ModelNameUnsupported returns true if /components/components/state/model-name is not supported for any component type.

func MplsExpIngressClassifierOcUnsupported

func MplsExpIngressClassifierOcUnsupported(dut *ondatra.DUTDevice) bool

MplsExpIngressClassifierOcUnsupported returns true if devices do not support classifying ingress packets based on the MPLS exp field

func MplsLabelClassificationOCUnsupported

func MplsLabelClassificationOCUnsupported(dut *ondatra.DUTDevice) bool

MplsLabelClassificationOCUnsupported returns true if mpls label classification is unsupported

func MplsOCUnsupported

func MplsOCUnsupported(dut *ondatra.DUTDevice) bool

MplsOCUnsupported returns true if mpls is unsupported

func MultipathUnsupportedNeighborOrAfisafi

func MultipathUnsupportedNeighborOrAfisafi(dut *ondatra.DUTDevice) bool

MultipathUnsupportedNeighborOrAfisafi returns true if the device does not support multipath under neighbor or afisafi.

func NetworkInstanceImportExportPolicyOCUnsupported

func NetworkInstanceImportExportPolicyOCUnsupported(dut *ondatra.DUTDevice) bool

NetworkInstanceImportExportPolicyOCUnsupported returns true if network instance import/export policy is not supported.

func NetworkInstanceTableDeletionRequired

func NetworkInstanceTableDeletionRequired(dut *ondatra.DUTDevice) bool

NetworkInstanceTableDeletionRequired returns if device requires explicit deletion of network-instance table.

func NextHopGroupOCUnsupported

func NextHopGroupOCUnsupported(dut *ondatra.DUTDevice) bool

NextHopGroupOCUnsupported returns true if devices do not support next-hop-group config

func NoMixOfTaggedAndUntaggedSubinterfaces

func NoMixOfTaggedAndUntaggedSubinterfaces(dut *ondatra.DUTDevice) bool

NoMixOfTaggedAndUntaggedSubinterfaces returns if device does not support a mix of tagged and untagged subinterfaces

func NoQueueDropUnsupported

func NoQueueDropUnsupported(dut *ondatra.DUTDevice) bool

NoQueueDropUnsupported returns true if device does not support no-queue drops Arista: https://issuetracker.google.com/456220916

func NoZeroSuppression

func NoZeroSuppression(dut *ondatra.DUTDevice) bool

NoZeroSuppression returns true if device wants to remove zero suppression

func NonIntervalFecErrorCounter

func NonIntervalFecErrorCounter(dut *ondatra.DUTDevice) bool

NonIntervalFecErrorCounter returns true if FEC uncorrectable errors accumulate over time and are not cleared unless the component is reset on target

func NonStandardGRPCPort

func NonStandardGRPCPort(dut *ondatra.DUTDevice) bool

NonStandardGRPCPort returns true if the device does not use standard grpc port. Arista b/384040563

func NtpNonDefaultVrfUnsupported

func NtpNonDefaultVrfUnsupported(dut *ondatra.DUTDevice) bool

NtpNonDefaultVrfUnsupported returns true if the device does not support ntp non-default vrf. Default value is false.

func NtpSourceAddressUnsupported

func NtpSourceAddressUnsupported(dut *ondatra.DUTDevice) bool

NtpSourceAddressUnsupported returns true if NTP source address is not supported

func NumPhysyicalChannelsUnsupported

func NumPhysyicalChannelsUnsupported(dut *ondatra.DUTDevice) bool

NumPhysyicalChannelsUnsupported returns true if there's no OC support for num-physical-channels

func OSActivateNoReboot

func OSActivateNoReboot(dut *ondatra.DUTDevice) bool

OSActivateNoReboot returns if device requires separate reboot to activate OS.

func OSComponentParentIsChassis

func OSComponentParentIsChassis(dut *ondatra.DUTDevice) bool

OSComponentParentIsChassis returns true if parent of OS component is of type CHASSIS.

func OSComponentParentIsSupervisorOrLinecard

func OSComponentParentIsSupervisorOrLinecard(dut *ondatra.DUTDevice) bool

OSComponentParentIsSupervisorOrLinecard returns true if parent of OS component is of type SUPERVISOR or LINECARD.

func OTNChannelAssignmentCiscoNumbering

func OTNChannelAssignmentCiscoNumbering(dut *ondatra.DUTDevice) bool

OTNChannelAssignmentCiscoNumbering returns true if OTN channel assignment index starts from 1 instead of 0

func OTNChannelTribUnsupported

func OTNChannelTribUnsupported(dut *ondatra.DUTDevice) bool

OTNChannelTribUnsupported returns true if TRIB parameter is unsupported under OTN channel configuration

func OTNToETHAssignment

func OTNToETHAssignment(dut *ondatra.DUTDevice) bool

OTNToETHAssignment returns true if the device must have the OTN to ETH assignment.

func OmitL2MTU

func OmitL2MTU(dut *ondatra.DUTDevice) bool

OmitL2MTU returns if device does not support setting the L2 MTU.

func OperStatusForIcUnsupported

func OperStatusForIcUnsupported(dut *ondatra.DUTDevice) bool

OperStatusForIcUnsupported return true if oper-status leaf is unsupported for Integration Circuit

func OperationalModeUnsupported

func OperationalModeUnsupported(dut *ondatra.DUTDevice) bool

OperationalModeUnsupported returns true if operational-mode leaf is unsupported

func OverrideDefaultNhScale

func OverrideDefaultNhScale(dut *ondatra.DUTDevice) bool

OverrideDefaultNhScale returns true if default NextHop scale needs to be modified else returns false

func P4RTCapabilitiesUnsupported

func P4RTCapabilitiesUnsupported(dut *ondatra.DUTDevice) bool

P4RTCapabilitiesUnsupported returns true for devices that don't support P4RT Capabilities rpc.

func P4RTGdpRequiresDot1QSubinterface

func P4RTGdpRequiresDot1QSubinterface(dut *ondatra.DUTDevice) bool

P4RTGdpRequiresDot1QSubinterface returns true for devices that require configuring subinterface with tagged vlan for P4RT packet in.

func P4RTModifyTableEntryUnsupported

func P4RTModifyTableEntryUnsupported(dut *ondatra.DUTDevice) bool

P4RTModifyTableEntryUnsupported returns true for devices that don't support modify table entry operation in P4 Runtime.

func P4rtBackupArbitrationResponseCode

func P4rtBackupArbitrationResponseCode(dut *ondatra.DUTDevice) bool

P4rtBackupArbitrationResponseCode returns whether the device does not support unset election ID.

func P4rtUnsetElectionIDPrimaryAllowed

func P4rtUnsetElectionIDPrimaryAllowed(dut *ondatra.DUTDevice) bool

P4rtUnsetElectionIDPrimaryAllowed returns whether the device does not support unset election ID.

func PLQGeneratorCapabilitiesMaxMTU

func PLQGeneratorCapabilitiesMaxMTU(dut *ondatra.DUTDevice) uint32

PLQGeneratorCapabilitiesMaxMTU returns supported max_mtu for devices that does not support packet link qualification(PLQ) Generator max_mtu to be at least >= 8184.

func PLQGeneratorCapabilitiesMaxPPS

func PLQGeneratorCapabilitiesMaxPPS(dut *ondatra.DUTDevice) uint64

PLQGeneratorCapabilitiesMaxPPS returns supported max_pps for devices that does not support packet link qualification(PLQ) Generator max_pps to be at least >= 100000000.

func PLQReflectorStatsUnsupported

func PLQReflectorStatsUnsupported(dut *ondatra.DUTDevice) bool

PLQReflectorStatsUnsupported returns true for devices that does not support packet link qualification(PLQ) reflector packet sent/received stats.

func PacketProcessingAggregateDropsUnsupported

func PacketProcessingAggregateDropsUnsupported(dut *ondatra.DUTDevice) bool

PacketProcessingAggregateDropsUnsupported returns true if the device does not support packet processing aggregate drops.

func PeerGroupDefEbgpVrfUnsupported

func PeerGroupDefEbgpVrfUnsupported(dut *ondatra.DUTDevice) bool

PeerGroupDefEbgpVrfUnsupported returns true if peer group definition under ebgp vrf is unsupported

func PfRequireMatchDefaultRule

func PfRequireMatchDefaultRule(dut *ondatra.DUTDevice) bool

PfRequireMatchDefaultRule returns true for device which requires match condition for ether type v4 and v6 for default rule with network-instance default-vrf in policy-forwarding.

func PfRequireSequentialOrderPbrRules

func PfRequireSequentialOrderPbrRules(dut *ondatra.DUTDevice) bool

PfRequireSequentialOrderPbrRules returns true for device requires policy-forwarding rules to be in sequential order in the gNMI set-request.

func PolicyForwardingGreEncapsulationOcUnsupported

func PolicyForwardingGreEncapsulationOcUnsupported(dut *ondatra.DUTDevice) bool

PolicyForwardingGreEncapsulationOcUnsupported returns true if policy forwarding GRE encapsulation is not supported on vendors

func PolicyForwardingOCUnsupported

func PolicyForwardingOCUnsupported(dut *ondatra.DUTDevice) bool

PolicyForwardingOCUnsupported returns true if policy forwarding is unsupported

func PolicyForwardingToNextHopOcUnsupported

func PolicyForwardingToNextHopOcUnsupported(dut *ondatra.DUTDevice) bool

PolicyForwardingToNextHopOcUnsupported returns true if policy forwarding to next hop is not supported on vendors

func PolicyRuleCountersOCUnsupported

func PolicyRuleCountersOCUnsupported(dut *ondatra.DUTDevice) bool

PolicyRuleCountersOCUnsupported returns true if policy forwarding Rule Counters is not supported on vendors

func PortSpeedDuplexModeUnsupportedForInterfaceConfig

func PortSpeedDuplexModeUnsupportedForInterfaceConfig(dut *ondatra.DUTDevice) bool

PortSpeedDuplexModeUnsupportedForInterfaceConfig returns true if the device does not support port speed and duplex mode for interface config.

func PortSpeedUnsupported

func PortSpeedUnsupported(dut *ondatra.DUTDevice) bool

PortSpeedUnsupported returns true if there's no OC support for port-speed

func PowerDisableEnableLeafRefValidation

func PowerDisableEnableLeafRefValidation(dut *ondatra.DUTDevice) bool

PowerDisableEnableLeafRefValidation returns true if definition of leaf-ref is not supported.

func PredefinedMaxEcmpPaths

func PredefinedMaxEcmpPaths(dut *ondatra.DUTDevice) bool

PredefinedMaxEcmpPaths returns true if max ecmp paths are predefined.

func PrefixLimitConfigUnsupported

func PrefixLimitConfigUnsupported(dut *ondatra.DUTDevice) bool

PrefixLimitConfigUnsupported returns true if max prefix limit configuration is unsupported by the device Cisco: https://partnerissuetracker.corp.google.com/issues/447509237

func PrefixLimitExceededTelemetryUnsupported

func PrefixLimitExceededTelemetryUnsupported(dut *ondatra.DUTDevice) bool

PrefixLimitExceededTelemetryUnsupported is to skip checking prefix limit telemetry flag.

func QOSBufferAllocationConfigRequired

func QOSBufferAllocationConfigRequired(dut *ondatra.DUTDevice) bool

QOSBufferAllocationConfigRequired returns if device should configure QOS buffer-allocation-profile

func QOSInQueueDropCounterUnsupported

func QOSInQueueDropCounterUnsupported(dut *ondatra.DUTDevice) bool

QOSInQueueDropCounterUnsupported returns true if /qos/interfaces/interface/input/queues/queue/state/dropped-pkts is not supported for any component type.

func QOSOctets

func QOSOctets(dut *ondatra.DUTDevice) bool

QOSOctets returns if device should skip checking QOS octet stats for interface.

func QOSQueueRequiresID

func QOSQueueRequiresID(dut *ondatra.DUTDevice) bool

QOSQueueRequiresID returns if device should configure QOS queue along with queue-id

func QOSVoqDropCounterUnsupported

func QOSVoqDropCounterUnsupported(dut *ondatra.DUTDevice) bool

QOSVoqDropCounterUnsupported returns if the device does not support telemetry path /qos/interfaces/interface/input/virtual-output-queues/voq-interface/queues/queue/state/dropped-pkts. Default value is false.

func QosClassificationOCUnsupported

func QosClassificationOCUnsupported(dut *ondatra.DUTDevice) bool

QosClassificationOCUnsupported returns true if qos classification is unsupported

func QosFt

func QosFt(dut *ondatra.DUTDevice) string

QosFt returns the functional translator to be used for translating QoS leaves.

func QosGetStatePathUnsupported

func QosGetStatePathUnsupported(dut *ondatra.DUTDevice) bool

QosGetStatePathUnsupported returns whether the device does not support get state leaves under qos.

func QosRemarkOCUnsupported

func QosRemarkOCUnsupported(dut *ondatra.DUTDevice) bool

QosRemarkOCUnsupported returns true if Qos remark parameters are unsupported

func QosSchedulerConfigRequired

func QosSchedulerConfigRequired(dut *ondatra.DUTDevice) bool

QosSchedulerConfigRequired returns if device should configure QOS buffer-allocation-profile

func QosSchedulerIngressPolicer

func QosSchedulerIngressPolicer(dut *ondatra.DUTDevice) bool

QosSchedulerIngressPolicer returns true if qos ingress policing is unsupported

func QosSetWeightConfigUnsupported

func QosSetWeightConfigUnsupported(dut *ondatra.DUTDevice) bool

QosSetWeightConfigUnsupported returns whether the device does not support set weight leaves under qos ecn.

func QosShaperOCUnsupported

func QosShaperOCUnsupported(dut *ondatra.DUTDevice) bool

QosShaperOCUnsupported returns true if qos shaper config is unsupported

func QosShaperStateOCUnsupported

func QosShaperStateOCUnsupported(dut *ondatra.DUTDevice) bool

QosShaperStateOCUnsupported returns true if qos shaper state is unsupported

func QosTwoRateThreeColorPolicerOCUnsupported

func QosTwoRateThreeColorPolicerOCUnsupported(dut *ondatra.DUTDevice) bool

QosTwoRateThreeColorPolicerOCUnsupported returns true if the device does not support QoS two-rate-three-color policer. Arista: https://partnerissuetracker.corp.google.com/issues/442749011

func RedisConnectedUnderEbgpVrfUnsupported

func RedisConnectedUnderEbgpVrfUnsupported(dut *ondatra.DUTDevice) bool

RedisConnectedUnderEbgpVrfUnsupported returns true if redistribution of routes under ebgp vrf is unsupported

func ReducedEcmpSetOnMixedEncapDecapNh

func ReducedEcmpSetOnMixedEncapDecapNh(dut *ondatra.DUTDevice) bool

reducedEcmpSetOnMixedEncapDecapNh returns true if mixed encap and decap next hops are not supported over ecmp. Nokia: b/459893133

func ReorderCallsForVendorCompatibilty

func ReorderCallsForVendorCompatibilty(dut *ondatra.DUTDevice) bool

ReorderCallsForVendorCompatibilty returns true if call needs to be updated/added/deleted. Cisco: https://partnerissuetracker.corp.google.com/issues/322291556

func RequireRoutedSubinterface0

func RequireRoutedSubinterface0(dut *ondatra.DUTDevice) bool

RequireRoutedSubinterface0 returns true if device needs to configure subinterface 0 for non-zero sub-interfaces.

func RibWecmp

func RibWecmp(dut *ondatra.DUTDevice) bool

RibWecmp returns if device requires CLI knob to enable wecmp feature.

func RoutePolicyUnderAFIUnsupported

func RoutePolicyUnderAFIUnsupported(dut *ondatra.DUTDevice) bool

RoutePolicyUnderAFIUnsupported returns if Route-Policy under the AFI/SAFI is not supported

func RoutingPolicyChainingUnsupported

func RoutingPolicyChainingUnsupported(dut *ondatra.DUTDevice) bool

RoutingPolicyChainingUnsupported returns true if policy chaining is unsupported

func RoutingPolicyTagSetEmbedded

func RoutingPolicyTagSetEmbedded(dut *ondatra.DUTDevice) bool

RoutingPolicyTagSetEmbedded returns true if the implementation does not support tag-set(s) as a separate entity, but embeds it in the policy statement

func RoutingRestartViaGnoiUnsupported

func RoutingRestartViaGnoiUnsupported(dut *ondatra.DUTDevice) bool

RoutingRestartViaGnoiUnsupported returns true if the device does not support restarting the routing process via gNOI. Arista: https://partnerissuetracker.corp.google.com/issues/489304077

func SIDPerInterfaceCounterUnsupported

func SIDPerInterfaceCounterUnsupported(dut *ondatra.DUTDevice) bool

SIDPerInterfaceCounterUnsupported return true if device does not supprt mpls/signaling-protocols/segment-routing/interfaces/interface/sid-counters/sid-counter/

func SSHServerCountersUnsupported

func SSHServerCountersUnsupported(dut *ondatra.DUTDevice) bool

SSHServerCountersUnsupported is to skip checking ssh server counters.

func SameAfiSafiAndPeergroupPoliciesUnsupported

func SameAfiSafiAndPeergroupPoliciesUnsupported(dut *ondatra.DUTDevice) bool

SameAfiSafiAndPeergroupPoliciesUnsupported returns true if configuring same apply-policy under peer-group and peer-group/afi-safi is unsupported

func SamePolicyAttachedToAllAfis

func SamePolicyAttachedToAllAfis(dut *ondatra.DUTDevice) bool

SamePolicyAttachedToAllAfis returns true if same import policy has to be applied for all AFIs

func SchedulerInputWeightLimit

func SchedulerInputWeightLimit(dut *ondatra.DUTDevice) bool

SchedulerInputWeightLimit returns whether the device does not support weight above 100.

func SetISISAuthWithInterfaceAuthenticationContainer

func SetISISAuthWithInterfaceAuthenticationContainer(dut *ondatra.DUTDevice) bool

SetISISAuthWithInterfaceAuthenticationContainer returns true if Isis Authentication is blocked for one level specific config for P2P links, and the corresponding hello-authentication leafs can be set with ISIS Interface/Authentication container.

func SetMetricAsPreference

func SetMetricAsPreference(dut *ondatra.DUTDevice) bool

SetMetricAsPreference returns true for devices which set metric as preference for static next-hop

func SetNativeUser

func SetNativeUser(dut *ondatra.DUTDevice) bool

SetNativeUser creates a user and assigns role/rbac to that user via native model.

func SetNoPeerGroup

func SetNoPeerGroup(dut *ondatra.DUTDevice) bool

SetNoPeerGroup Ensure that no BGP configurations exists under PeerGroups.

func SflowIngressMinSamplingRate

func SflowIngressMinSamplingRate(dut *ondatra.DUTDevice) uint32

SflowIngressMinSamplingRate returns the minimum sampling rate supported for sflow ingress on the device.

func SflowOCUnsupported

func SflowOCUnsupported(dut *ondatra.DUTDevice) bool

SflowOCUnsupported returns true if sflow is unsupported

func SflowSourceAddressUpdateUnsupported

func SflowSourceAddressUpdateUnsupported(dut *ondatra.DUTDevice) bool

SflowSourceAddressUpdateUnsupported returns true if sflow source address update is unsupported

func SkipACLCountersVerificationDuringUpdate

func SkipACLCountersVerificationDuringUpdate(dut *ondatra.DUTDevice) bool

SkipACLCountersVerificationDuringUpdate returns true if ACL counter verification should be skipped during ACL updates. Arista: https://partnerissuetracker.corp.google.com/issues/465920254

func SkipAfiSafiPathForBgpMultipleAs

func SkipAfiSafiPathForBgpMultipleAs(dut *ondatra.DUTDevice) bool

SkipAfiSafiPathForBgpMultipleAs return true if device do not support afi/safi path to enable allow multiple-as for eBGP

func SkipBgpPeerGroupSendCommunityType

func SkipBgpPeerGroupSendCommunityType(dut *ondatra.DUTDevice) bool

SkipBgpPeerGroupSendCommunityType return true if device needs to skip setting BGP send-community-type for peer group

func SkipBgpSendCommunityType

func SkipBgpSendCommunityType(dut *ondatra.DUTDevice) bool

SkipBgpSendCommunityType return true if device needs to skip setting BGP send-community-type

func SkipBgpSessionCheckWithoutAfisafi

func SkipBgpSessionCheckWithoutAfisafi(dut *ondatra.DUTDevice) bool

SkipBgpSessionCheckWithoutAfisafi returns if device needs to skip checking AFI-SAFI disable.

func SkipCheckingAttributeIndex

func SkipCheckingAttributeIndex(dut *ondatra.DUTDevice) bool

SkipCheckingAttributeIndex return true if device do not return bgp attribute for the bgp session specifying the index

func SkipContainerOp

func SkipContainerOp(dut *ondatra.DUTDevice) bool

SkipContainerOp returns true if gNMI container OP needs to be skipped. Cisco: https://partnerissuetracker.corp.google.com/issues/322291556

func SkipControllerCardPowerAdmin

func SkipControllerCardPowerAdmin(dut *ondatra.DUTDevice) bool

SkipControllerCardPowerAdmin returns if power-admin-state config on controller card should be skipped. Default value is false.

func SkipInterfaceNameCheck

func SkipInterfaceNameCheck(dut *ondatra.DUTDevice) bool

SkipInterfaceNameCheck returns if device requires skipping the interface name check.

func SkipIsisSetLevel

func SkipIsisSetLevel(dut *ondatra.DUTDevice) bool

SkipIsisSetLevel return true if device needs to skip setting isis-actions set-level while configuring routing-policy statement action

func SkipIsisSetMetricStyleType

func SkipIsisSetMetricStyleType(dut *ondatra.DUTDevice) bool

SkipIsisSetMetricStyleType return true if device needs to skip setting isis-actions set-metric-style-type while configuring routing-policy statement action

func SkipMacaddressCheck

func SkipMacaddressCheck(dut *ondatra.DUTDevice) bool

SkipMacaddressCheck returns true if mac address for an interface via gNMI needs to be skipped. Cisco: https://partnerissuetracker.corp.google.com/issues/322291556

func SkipNonBgpRouteExportCheck

func SkipNonBgpRouteExportCheck(dut *ondatra.DUTDevice) bool

SkipNonBgpRouteExportCheck returns true for devices that exports routes from all protocols to BGP if the export-policy is ACCEPT.

func SkipOpticalChannelOutputPowerInterval

func SkipOpticalChannelOutputPowerInterval(dut *ondatra.DUTDevice) bool

SkipOpticalChannelOutputPowerInterval returns true if devices do not support opticalchannel output-power interval leaf

func SkipOrigin

func SkipOrigin(dut *ondatra.DUTDevice) bool

SkipOrigin returns true if the device does not support the 'origin' field in gNMI/gNOI RPC paths.

func SkipPlqInterfaceOperStatusCheck

func SkipPlqInterfaceOperStatusCheck(dut *ondatra.DUTDevice) bool

SkipPlqInterfaceOperStatusCheck returns true for devices that do not support PLQ operational status check for interfaces

func SkipPrefixSetMode

func SkipPrefixSetMode(dut *ondatra.DUTDevice) bool

SkipPrefixSetMode return true if device needs to skip setting prefix-set mode while configuring prefix-set routing-policy

func SkipSamplingQosCounters

func SkipSamplingQosCounters(dut *ondatra.DUTDevice) bool

SkipSamplingQosCounters returns true if device does not support sampling QoS counters Cisco: https://partnerissuetracker.corp.google.com/u/0/issues/463279843

func SkipSettingAllowMultipleAS

func SkipSettingAllowMultipleAS(dut *ondatra.DUTDevice) bool

SkipSettingAllowMultipleAS return true if device needs to skip setting allow-multiple-as while configuring eBGP

func SkipSettingDisableMetricPropagation

func SkipSettingDisableMetricPropagation(dut *ondatra.DUTDevice) bool

SkipSettingDisableMetricPropagation return true if device needs to skip setting disable-metric-propagation while configuring table-connection

func SkipSettingStatementForPolicy

func SkipSettingStatementForPolicy(dut *ondatra.DUTDevice) bool

SkipSettingStatementForPolicy return true if device do not support afi/safi path to enable allow multiple-as for eBGP

func SkipStaticNexthopCheck

func SkipStaticNexthopCheck(dut *ondatra.DUTDevice) bool

SkipStaticNexthopCheck returns if device needs index starting from non-zero

func SkipTCPNegotiatedMSSCheck

func SkipTCPNegotiatedMSSCheck(dut *ondatra.DUTDevice) bool

SkipTCPNegotiatedMSSCheck returns true for devices that do not support telemetry to check negotiated tcp mss value.

func SkipTransceiverDescription

func SkipTransceiverDescription(dut *ondatra.DUTDevice) bool

SkipTransceiverDescription returns true if devices do not support transceiver description leaf

func SlaacPrefixLength128

func SlaacPrefixLength128(dut *ondatra.DUTDevice) bool

SlaacPrefixLength128 for Slaac generated IPv6 link local address

func SrIgpConfigUnsupported

func SrIgpConfigUnsupported(dut *ondatra.DUTDevice) bool

SrIgpConfigUnsupported return true if SR IGP config is not supported

func StatePathsUnsupported

func StatePathsUnsupported(dut *ondatra.DUTDevice) bool

StatePathsUnsupported returns whether the device supports following state paths

func StaticArpOCUnsupported

func StaticArpOCUnsupported(dut *ondatra.DUTDevice) bool

StaticArpOCUnsupported returns true if static arp is unsupported

func StaticMplsLspOCUnsupported

func StaticMplsLspOCUnsupported(dut *ondatra.DUTDevice) bool

StaticMplsLspOCUnsupported returns true if static mpls lsp parameters are unsupported

func StaticMplsOCUnsupported

func StaticMplsOCUnsupported(dut *ondatra.DUTDevice) bool

StaticMplsOCUnsupported returns true if static mpls is unsupported

func StaticMplsUnsupported

func StaticMplsUnsupported(dut *ondatra.DUTDevice) bool

StaticMplsUnsupported returns true if static mpls is unsupported

func StaticProtocolName

func StaticProtocolName(dut *ondatra.DUTDevice) string

StaticProtocolName returns the name used for the static routing protocol.

func StaticRouteNextHopInterfaceRefUnsupported

func StaticRouteNextHopInterfaceRefUnsupported(dut *ondatra.DUTDevice) bool

StaticRouteNextHopInterfaceRefUnsupported returns if device does not support Interface-ref under static-route next-hop

func StaticRouteNextNetworkInstanceOCUnsupported

func StaticRouteNextNetworkInstanceOCUnsupported(dut *ondatra.DUTDevice) bool

StaticRouteNextNetworkInstanceOCUnsupported returns true for devices that don't support NextNetworkInstance of static route next hop.

func StaticRouteWithDropNhUnsupported

func StaticRouteWithDropNhUnsupported(dut *ondatra.DUTDevice) bool

StaticRouteWithDropNhUnsupported unsupported drop nexthop

func StaticRouteWithExplicitMetric

func StaticRouteWithExplicitMetric(dut *ondatra.DUTDevice) bool

StaticRouteWithExplicitMetric set explicit metric

func StorageComponentUnsupported

func StorageComponentUnsupported(dut *ondatra.DUTDevice) bool

StorageComponentUnsupported returns if telemetry path /components/component/storage is not supported.

func SubinterfacePacketCountersMissing

func SubinterfacePacketCountersMissing(dut *ondatra.DUTDevice) bool

SubinterfacePacketCountersMissing returns if device is missing subinterface packet counters for IPv4/IPv6, so the test will skip checking them. Full OpenConfig compliant devices should pass both with and without this deviation. Nokia https://b.corp.google.com/issues/4778051566

func SubnetMaskChangeRequired

func SubnetMaskChangeRequired(dut *ondatra.DUTDevice) bool

SubnetMaskChangeRequired returns true if the device requires changing the subnet mask length. Cisco: https://partnerissuetracker.corp.google.com/issues/478070225

func SwVersionUnsupported

func SwVersionUnsupported(dut *ondatra.DUTDevice) bool

SwVersionUnsupported returns true if the device does not support reporting software version according to the requirements in gNMI-1.10.

func SwitchChipIDUnsupported

func SwitchChipIDUnsupported(dut *ondatra.DUTDevice) bool

SwitchChipIDUnsupported returns whether the device supports id leaf for SwitchChip components.

func SyslogNonDefaultVrfUnsupported

func SyslogNonDefaultVrfUnsupported(dut *ondatra.DUTDevice) bool

SyslogNonDefaultVrfUnsupported returns true if device does not support adding remote-syslog config under non-default VRF

func SyslogOCUnsupported

func SyslogOCUnsupported(dut *ondatra.DUTDevice) bool

SyslogOCUnsupported returns true if the device does not support syslog OC configuration for below OC paths. '/system/logging/remote-servers/remote-server/config/network-instance'

func SystemMountPointStateFt

func SystemMountPointStateFt(dut *ondatra.DUTDevice) string

SystemMountPointStateFt returns the functional translator name for devices with mount point state paths unsupported.

func TableConnectionsUnsupported

func TableConnectionsUnsupported(dut *ondatra.DUTDevice) bool

TableConnectionsUnsupported returns true if Table Connections are unsupported.

func TcAttributePropagationUnsupported

func TcAttributePropagationUnsupported(dut *ondatra.DUTDevice) bool

TcAttributePropagationUnsupported returns true if attribute propagation for table connection is unsupported

func TcDefaultImportPolicyUnsupported

func TcDefaultImportPolicyUnsupported(dut *ondatra.DUTDevice) bool

TcDefaultImportPolicyUnsupported returns true if default import policy for table connection is unsupported

func TcMetricPropagationUnsupported

func TcMetricPropagationUnsupported(dut *ondatra.DUTDevice) bool

TcMetricPropagationUnsupported returns true if metric propagation for table connection is unsupported

func TcSubscriptionUnsupported

func TcSubscriptionUnsupported(dut *ondatra.DUTDevice) bool

TcSubscriptionUnsupported returns true if subscription for table connection is unsupported

func TelemetryNotSupportedForLowPriorityNh

func TelemetryNotSupportedForLowPriorityNh(dut *ondatra.DUTDevice) bool

TelemetryNotSupportedForLowPriorityNh returns true if OC state path for the lower priority next hop not supported

func TemperatureSensorCheck

func TemperatureSensorCheck(dut *ondatra.DUTDevice) bool

TemperatureSensorCheck returns true if the transceiver subcomponent should look for the temperature sensor

func TerminalDeviceChannelAdminStateUnsupported

func TerminalDeviceChannelAdminStateUnsupported(dut *ondatra.DUTDevice) bool

TerminalDeviceChannelAdminStateUnsupported returns true if setting admin-state on TerminalDevice Channel is unsupported. Arista: https://issuetracker.google.com/482191638

func TraceRouteL4ProtocolUDP

func TraceRouteL4ProtocolUDP(dut *ondatra.DUTDevice) bool

TraceRouteL4ProtocolUDP returns if device only support UDP as l4 protocol for traceroute. Default value is false.

func TransceiverConfigEnableUnsupported

func TransceiverConfigEnableUnsupported(dut *ondatra.DUTDevice) bool

TransceiverConfigEnableUnsupported returns true if devices cannot set transceiver config enable

func TransceiverStateUnsupported

func TransceiverStateUnsupported(dut *ondatra.DUTDevice) bool

TransceiverStateUnsupported returns true if device does not support transceiver state leaf.

func TransceiverThresholdsUnsupported

func TransceiverThresholdsUnsupported(dut *ondatra.DUTDevice) bool

TransceiverThresholdsUnsupported returns true if the device does not support threshold container under /components/component/transceiver. Default value is false.

func TunnelConfigPathUnsupported

func TunnelConfigPathUnsupported(dut *ondatra.DUTDevice) bool

TunnelConfigPathUnsupported returns true for devices that require configuring Tunnel source-address destination-address, encapsulation type are not supported in OC

func TunnelStatePathUnsupported

func TunnelStatePathUnsupported(dut *ondatra.DUTDevice) bool

TunnelStatePathUnsupported returns true for devices that require configuring /interfaces/interface/state/counters/in-pkts, in-octets,out-pkts, out-octetsis not supported.

func URPFConfigOCUnsupported

func URPFConfigOCUnsupported(dut *ondatra.DUTDevice) bool

URPFConfigOCUnsupported returns true if OC does not support configuring uRPF.

func UnsupportedQoSOutputServicePolicy

func UnsupportedQoSOutputServicePolicy(dut *ondatra.DUTDevice) bool

UnsupportedQoSOutputServicePolicy returns true if devices do not support qos output service-policy

func UnsupportedStaticRouteNextHopRecurse

func UnsupportedStaticRouteNextHopRecurse(dut *ondatra.DUTDevice) bool

UnsupportedStaticRouteNextHopRecurse returns true for devices that don't support recursive resolution of static route next hop. Arista: https://partnerissuetracker.corp.google.com/issues/314449182

func UseBgpSetCommunityOptionTypeReplace

func UseBgpSetCommunityOptionTypeReplace(dut *ondatra.DUTDevice) bool

UseBgpSetCommunityOptionTypeReplace returns true if BGP community set REPLACE option is required

func UseOldOCPathStaticLspNh

func UseOldOCPathStaticLspNh(dut *ondatra.DUTDevice) bool

UseOldOCPathStaticLspNh returns true if the old OC path for static lsp next-hop is used

func UseParentComponentForTemperatureTelemetry

func UseParentComponentForTemperatureTelemetry(dut *ondatra.DUTDevice) bool

UseParentComponentForTemperatureTelemetry returns true if parent component supports temperature telemetry

func UseVendorNativeTagSetConfig

func UseVendorNativeTagSetConfig(dut *ondatra.DUTDevice) bool

UseVendorNativeTagSetConfig returns whether a device requires native model to configure tag-set

func VerifyExpectedBreakoutSupportedConfig

func VerifyExpectedBreakoutSupportedConfig(dut *ondatra.DUTDevice) bool

VerifyExpectedBreakoutSupportedConfig is to skip checking for breakout config mode.

func WecmpAutoUnsupported

func WecmpAutoUnsupported(dut *ondatra.DUTDevice) bool

WecmpAutoUnsupported returns true if wecmp auto is not supported

func WecmpSetWeightUnsupported

func WecmpSetWeightUnsupported(dut *ondatra.DUTDevice) bool

WecmpSetWeightUnsupported returns if device doesnt support setting weight for wecmp.

func WeightedEcmpFixedPacketVerification

func WeightedEcmpFixedPacketVerification(dut *ondatra.DUTDevice) bool

WeightedEcmpFixedPacketVerification returns true if fixed packet is used in traffic flow

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL