diff --git a/feature/gribi/mpls_in_udp/otg_tests/mpls_in_udp/mpls_in_udp_test.go b/feature/gribi/mpls_in_udp/otg_tests/mpls_in_udp/mpls_in_udp_test.go index 946e247c263..8cc10601f15 100644 --- a/feature/gribi/mpls_in_udp/otg_tests/mpls_in_udp/mpls_in_udp_test.go +++ b/feature/gribi/mpls_in_udp/otg_tests/mpls_in_udp/mpls_in_udp_test.go @@ -712,7 +712,7 @@ func configureDUT(t *testing.T, dut *ondatra.DUTDevice) { func applyForwardingPolicy(t *testing.T, dut *ondatra.DUTDevice, ingressPort string) { d := &oc.Root{} interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } diff --git a/feature/gribi/mpls_in_udp/otg_tests/mpls_over_udp_tunnel_hashing_test/mpls_over_udp_tunnel_hashing_test.go b/feature/gribi/mpls_in_udp/otg_tests/mpls_over_udp_tunnel_hashing_test/mpls_over_udp_tunnel_hashing_test.go index 2bb6ae9895b..b62271879d1 100644 --- a/feature/gribi/mpls_in_udp/otg_tests/mpls_over_udp_tunnel_hashing_test/mpls_over_udp_tunnel_hashing_test.go +++ b/feature/gribi/mpls_in_udp/otg_tests/mpls_over_udp_tunnel_hashing_test/mpls_over_udp_tunnel_hashing_test.go @@ -376,7 +376,7 @@ func configureBaseconfig(t *testing.T, dut *ondatra.DUTDevice) { func applyForwardingPolicy(t *testing.T, dut *ondatra.DUTDevice, ingressPort string) { d := &oc.Root{} interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } diff --git a/feature/gribi/otg_tests/backup_nhg_action_pbf/metadata.textproto b/feature/gribi/otg_tests/backup_nhg_action_pbf/metadata.textproto index 108e66314ed..153fa3d6e95 100644 --- a/feature/gribi/otg_tests/backup_nhg_action_pbf/metadata.textproto +++ b/feature/gribi/otg_tests/backup_nhg_action_pbf/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/backup_nhg_multiple_nh_pbf_test/metadata.textproto b/feature/gribi/otg_tests/backup_nhg_multiple_nh_pbf_test/metadata.textproto index 0b263d5e90b..073595a46b4 100644 --- a/feature/gribi/otg_tests/backup_nhg_multiple_nh_pbf_test/metadata.textproto +++ b/feature/gribi/otg_tests/backup_nhg_multiple_nh_pbf_test/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/base_hierarchical_nhg_update/metadata.textproto b/feature/gribi/otg_tests/base_hierarchical_nhg_update/metadata.textproto index 294a1c15b61..759abe05ac4 100644 --- a/feature/gribi/otg_tests/base_hierarchical_nhg_update/metadata.textproto +++ b/feature/gribi/otg_tests/base_hierarchical_nhg_update/metadata.textproto @@ -12,7 +12,7 @@ platform_exceptions: { deviations: { ipv4_missing_enabled: true gribi_mac_override_with_static_arp: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/base_hierarchical_route_installation_test/base_hierarchical_route_installation_test.go b/feature/gribi/otg_tests/base_hierarchical_route_installation_test/base_hierarchical_route_installation_test.go index 9cf9fc66115..bd841c3a9b4 100644 --- a/feature/gribi/otg_tests/base_hierarchical_route_installation_test/base_hierarchical_route_installation_test.go +++ b/feature/gribi/otg_tests/base_hierarchical_route_installation_test/base_hierarchical_route_installation_test.go @@ -262,7 +262,7 @@ func configureVrfSelectionPolicyW(t *testing.T, dut *ondatra.DUTDevice) { p1 := dut.Port(t, "port1") interfaceID := p1.Name() - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = interfaceID + ".0" } @@ -328,7 +328,7 @@ func applyForwardingPolicy(t *testing.T, ingressPort string) { d := &oc.Root{} dut := ondatra.DUT(t, "dut") interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfPath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/gribi/otg_tests/base_hierarchical_route_installation_test/metadata.textproto b/feature/gribi/otg_tests/base_hierarchical_route_installation_test/metadata.textproto index a1ccb22b5ad..e5ccd68fedd 100644 --- a/feature/gribi/otg_tests/base_hierarchical_route_installation_test/metadata.textproto +++ b/feature/gribi/otg_tests/base_hierarchical_route_installation_test/metadata.textproto @@ -12,7 +12,7 @@ platform_exceptions: { deviations: { ipv4_missing_enabled: true gribi_mac_override_with_static_arp: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/basic_encap_test/basic_encap_test.go b/feature/gribi/otg_tests/basic_encap_test/basic_encap_test.go index 0e10c8e271a..0aa794c4622 100644 --- a/feature/gribi/otg_tests/basic_encap_test/basic_encap_test.go +++ b/feature/gribi/otg_tests/basic_encap_test/basic_encap_test.go @@ -830,7 +830,7 @@ func applyForwardingPolicy(t *testing.T, dut *ondatra.DUTDevice, ingressPort str t.Logf("Applying forwarding policy on interface %v ... ", ingressPort) d := &oc.Root{} interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfPath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/gribi/otg_tests/basic_encap_test/metadata.textproto b/feature/gribi/otg_tests/basic_encap_test/metadata.textproto index 436e6514059..5b4330d5fba 100644 --- a/feature/gribi/otg_tests/basic_encap_test/metadata.textproto +++ b/feature/gribi/otg_tests/basic_encap_test/metadata.textproto @@ -12,7 +12,7 @@ platform_exceptions: { deviations: { ipv4_missing_enabled: true gribi_mac_override_with_static_arp: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/gribi_scaling/gribi_scaling_test.go b/feature/gribi/otg_tests/gribi_scaling/gribi_scaling_test.go index 7617de28009..2d74ed1a4d5 100644 --- a/feature/gribi/otg_tests/gribi_scaling/gribi_scaling_test.go +++ b/feature/gribi/otg_tests/gribi_scaling/gribi_scaling_test.go @@ -136,7 +136,7 @@ func applyForwardingPolicy(t *testing.T, ingressPort string) { d := &oc.Root{} dut := ondatra.DUT(t, "dut") interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfPath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/gribi/otg_tests/gribi_scaling/metadata.textproto b/feature/gribi/otg_tests/gribi_scaling/metadata.textproto index b14e617e9d8..ef7979f4a57 100644 --- a/feature/gribi/otg_tests/gribi_scaling/metadata.textproto +++ b/feature/gribi/otg_tests/gribi_scaling/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true } } platform_exceptions: { diff --git a/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/hierarchical_weight_resolution_pbf_test.go b/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/hierarchical_weight_resolution_pbf_test.go index bde47271652..fa0b8147620 100644 --- a/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/hierarchical_weight_resolution_pbf_test.go +++ b/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/hierarchical_weight_resolution_pbf_test.go @@ -368,7 +368,7 @@ func applyForwardingPolicy(t *testing.T, ingressPort string) { d := &oc.Root{} dut := ondatra.DUT(t, "dut") interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfPath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/metadata.textproto b/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/metadata.textproto index 3e63e5ed519..12e7c232595 100644 --- a/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/metadata.textproto +++ b/feature/gribi/otg_tests/hierarchical_weight_resolution_pbf_test/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true pf_require_match_default_rule: true pf_require_sequential_order_pbr_rules: true } diff --git a/feature/gribi/otg_tests/hierarchical_weight_resolution_test/hierarchical_weight_resolution_test.go b/feature/gribi/otg_tests/hierarchical_weight_resolution_test/hierarchical_weight_resolution_test.go index 4d0bc5d8d34..5550e9f6095 100644 --- a/feature/gribi/otg_tests/hierarchical_weight_resolution_test/hierarchical_weight_resolution_test.go +++ b/feature/gribi/otg_tests/hierarchical_weight_resolution_test/hierarchical_weight_resolution_test.go @@ -365,7 +365,7 @@ func applyForwardingPolicy(t *testing.T, ingressPort string) { d := &oc.Root{} dut := ondatra.DUT(t, "dut") interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfPath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/gribi/otg_tests/hierarchical_weight_resolution_test/metadata.textproto b/feature/gribi/otg_tests/hierarchical_weight_resolution_test/metadata.textproto index 694ee979cda..8110f1e9340 100644 --- a/feature/gribi/otg_tests/hierarchical_weight_resolution_test/metadata.textproto +++ b/feature/gribi/otg_tests/hierarchical_weight_resolution_test/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true } } platform_exceptions: { diff --git a/feature/gribi/otg_tests/vrf_policy_driven_te/vrf_policy_driven_te_test.go b/feature/gribi/otg_tests/vrf_policy_driven_te/vrf_policy_driven_te_test.go index 64a999ccf36..84f94a34e7f 100644 --- a/feature/gribi/otg_tests/vrf_policy_driven_te/vrf_policy_driven_te_test.go +++ b/feature/gribi/otg_tests/vrf_policy_driven_te/vrf_policy_driven_te_test.go @@ -465,7 +465,7 @@ func configureVrfSelectionPolicyW(t *testing.T, dut *ondatra.DUTDevice) { p1 := dut.Port(t, "port1") interfaceID := p1.Name() - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = interfaceID + ".0" } @@ -582,7 +582,7 @@ func configureVrfSelectionPolicyC(t *testing.T, dut *ondatra.DUTDevice) { p1 := dut.Port(t, "port1") interfaceID := p1.Name() - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = interfaceID + ".0" } intf := niP.GetOrCreateInterface(interfaceID) diff --git a/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/add_remove_policy_bound_interface_test.go b/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/add_remove_policy_bound_interface_test.go index dbdf85faffb..f57cf522f34 100644 --- a/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/add_remove_policy_bound_interface_test.go +++ b/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/add_remove_policy_bound_interface_test.go @@ -242,7 +242,7 @@ func applyPolicy(t *testing.T, dut *ondatra.DUTDevice, intfName string, policyNa d := &oc.Root{} ni := deviations.DefaultNetworkInstance(dut) interfaceID := intfName - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = intfName + ".0" } path := gnmi.OC().NetworkInstance(ni).PolicyForwarding().Interface(interfaceID) @@ -273,7 +273,7 @@ func applyPolicy(t *testing.T, dut *ondatra.DUTDevice, intfName string, policyNa func deletePolicy(t *testing.T, dut *ondatra.DUTDevice, intfName string) { t.Helper() interfaceID := intfName - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = intfName + ".0" } t.Logf("Deleting policy from interface %s", interfaceID) diff --git a/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/metadata.textproto b/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/metadata.textproto index 54ecbd0a799..e75ebb551aa 100644 --- a/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/metadata.textproto +++ b/feature/policy_forwarding/otg_tests/add_remove_policy_bound_interface_test/metadata.textproto @@ -34,7 +34,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true } } platform_exceptions: { diff --git a/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/base_vrf_selection_test.go b/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/base_vrf_selection_test.go index 3aaed7aec67..663d280f5f7 100644 --- a/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/base_vrf_selection_test.go +++ b/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/base_vrf_selection_test.go @@ -263,7 +263,7 @@ func applyForwardingPolicy(t *testing.T, ate *ondatra.ATEDevice, ingressPort, ma d := &oc.Root{} dut := ondatra.DUT(t, "dut") interfaceID := ingressPort - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPort + ".0" } pfpath := gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Interface(interfaceID) diff --git a/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/metadata.textproto b/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/metadata.textproto index c3cef58e8d0..d95d168842f 100644 --- a/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/metadata.textproto +++ b/feature/policy_forwarding/vrf_selection/otg_tests/base_vrf_selection/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true } } platform_exceptions: { diff --git a/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/metadata.textproto b/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/metadata.textproto index fa3a1630fbd..f7c6a255e97 100644 --- a/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/metadata.textproto +++ b/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/metadata.textproto @@ -11,7 +11,7 @@ platform_exceptions: { } deviations: { ipv4_missing_enabled: true - interface_ref_interface_id_format: true + interface_id_format_required_for_policy_forwarding: true } } diff --git a/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/protocol_dscp_rules_for_vrf_selection_test.go b/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/protocol_dscp_rules_for_vrf_selection_test.go index 998cf517ffc..b75ac9bd97d 100644 --- a/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/protocol_dscp_rules_for_vrf_selection_test.go +++ b/feature/policy_forwarding/vrf_selection/otg_tests/protocol_dscp_rules_for_vrf_selection_test/protocol_dscp_rules_for_vrf_selection_test.go @@ -754,7 +754,7 @@ func TestPBR(t *testing.T) { ingressPortName := tc.ingressPort.Name() d := &oc.Root{} interfaceID := ingressPortName - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interfaceID = ingressPortName + ".0" } pfIntf := d.GetOrCreateNetworkInstance(deviations.DefaultNetworkInstance(dut)).GetOrCreatePolicyForwarding().GetOrCreateInterface(interfaceID) @@ -785,7 +785,7 @@ func TestPBR(t *testing.T) { gnmi.Update(t, dut, gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Config(), multiPolicy) defer gnmi.Delete(t, dut, gnmi.OC().NetworkInstance(deviations.DefaultNetworkInstance(dut)).PolicyForwarding().Policy("L3_Port3").Config()) interface3ID := port3.Name() - if deviations.InterfaceRefInterfaceIDFormat(dut) { + if deviations.InterfaceRefInterfaceIDFormat(dut) || deviations.InterfaceIDFormatRequiredForPolicyForwarding(dut) { interface3ID = port3.Name() + ".0" } pfIntfPort3 := d.GetOrCreateNetworkInstance(deviations.DefaultNetworkInstance(dut)).GetOrCreatePolicyForwarding().GetOrCreateInterface(interface3ID) diff --git a/internal/deviations/deviations.go b/internal/deviations/deviations.go index da2467cbae1..10e4d5ededc 100644 --- a/internal/deviations/deviations.go +++ b/internal/deviations/deviations.go @@ -2063,14 +2063,12 @@ func FpgaFt(dut *ondatra.DUTDevice) string { // AcctzRecordFailCommandUnsupported returns true if the device does not support Acctz record for fail user // Juniper: https://partnerissuetracker.corp.google.com/issues/500649430 - func AcctzRecordFailCommandUnsupported(dut *ondatra.DUTDevice) bool { return lookupDUTDeviations(dut).GetAcctzRecordFailCommandUnsupported() } -// AcctzRecordFailCommandUnsupported returns true if the device does not support Acctz record for fail user +// AcctzRecordFailGrpcUnsupported returns true if the device does not support Acctz record for fail user // Juniper: https://partnerissuetracker.corp.google.com/issues/500627000 - func AcctzRecordFailGrpcUnsupported(dut *ondatra.DUTDevice) bool { return lookupDUTDeviations(dut).GetAcctzRecordFailGrpcUnsupported() } diff --git a/proto/metadata.proto b/proto/metadata.proto index cb687cfa6ac..9e36ee3dfc6 100644 --- a/proto/metadata.proto +++ b/proto/metadata.proto @@ -1345,7 +1345,7 @@ message Metadata { // Device requires transport-security to be enabled on gRPC server. // Juniper: https://partnerissuetracker.corp.google.com/issues/515276334 bool require_transport_security = 427; - + // https://partnerissuetracker.corp.google.com/issues/443044887 // Use the deviation if BGP Extension Route Retention configuration is not available via OC bool extended_route_retention_oc_unsupported = 428; @@ -1403,4 +1403,3 @@ message Metadata { // checks. bool path_presence_test = 7; } -