Skip to content

[Nexthop][fboss2-dev] add config interface <intf> name <value> attribute - #1472

Open
benoit-nexthop wants to merge 2 commits into
facebook:mainfrom
nexthop-ai:fboss2-intf-name
Open

[Nexthop][fboss2-dev] add config interface <intf> name <value> attribute#1472
benoit-nexthop wants to merge 2 commits into
facebook:mainfrom
nexthop-ai:fboss2-intf-name

Conversation

@benoit-nexthop

@benoit-nexthop benoit-nexthop commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Note

Stacked on #1471 — this PR's diff includes that PR's commit until it merges; only the last commit (fboss2: add \config interface name ` attribute`) is new here.

Summary

Add a name attribute to fboss2-dev config interface to set the name of an L3 interface. This allows naming an interface that has no name yet, e.g. fboss2-dev config interface 3001 name svi_mgmt.

Validation:

  • the name must be non-empty
  • purely-numeric names are rejected (they could shadow lookups by port/interface ID)
  • the name must not collide with an existing port or interface name
  • only a single target interface is allowed per invocation

The session's port map is rebuilt after a rename so subsequent lookups in the same session see the new name.

Test Plan

Unit tests cover renaming by port name, naming a nameless interface addressed by its interface ID, idempotent rename, and the rejection cases.

benoit-nexthop and others added 2 commits August 5, 2026 23:11
InterfaceList now accepts a purely-numeric argument and resolves it as a
port logical ID or an interface ID, so e.g. `fboss2-dev config interface
2001 mtu 9000` works on the interface with ID 2001. Name lookups always
take precedence over ID lookups, consistently for both ports and
interfaces: port name -> port logical ID -> interface name -> interface ID.

Adds PortMap::getPortNameForLogicalId(), the reverse of the existing
getPortLogicalId().
Sets the name of an L3 interface. Combined with ID-based interface
lookup, this allows naming an interface that has no name yet, e.g.
`fboss2-dev config interface 3001 name svi_mgmt`.

Validation: the name must be non-empty, must not be purely numeric
(it would shadow lookups by port/interface ID), must not collide with
an existing port or interface name, and can only target a single
interface at a time. The session's port map is rebuilt after a rename
so subsequent lookups in the same session see the new name.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@benoit-nexthop
benoit-nexthop requested a review from a team as a code owner August 5, 2026 23:14
@meta-cla meta-cla Bot added the CLA Signed label Aug 5, 2026
@meta-codesync

meta-codesync Bot commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

This pull request has been imported. If you are a Meta employee, you can view this in D114968340. (Because this pull request was imported automatically, there will not be any future comments.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant