Add router traffic-engineering block, per-interface admin-group overwrite, flex-algo definitions with color field, and next-hop resolution ribs config to device templates. All gated on flex_algo.enabled.
UNICAST-DRAINED group 1 MUST always be defined as an alias in the router traffic-engineering block when enabled: true. exclude 1 MUST always be injected into every include-any flex-algo definition — unconditional, not dependent on any link being drained.
Interface admin-group template overwrites the full set on change; uses no traffic-engineering administrative-group only when no topologies remain.
Milestone: RFC-18: Controller — Topology Config
RFC: #3288
Files affected:
controlplane/controller/internal/controller/ (device templates)
Size: Medium
Tests:
- Interface with topology produces correct
traffic-engineering administrative-group line
- Exclude list overrides onchain assignment
- Remove/add diff correct on topology change
UNICAST-DRAINED group 1 always present when enabled: true, regardless of drain state
exclude 1 always present in all include-any flex-algo definitions
no router traffic-engineering generated on enabled: false
Blockers: #3350 (features.yaml config loading), #3344 (TopologyInfo account)
Add router traffic-engineering block, per-interface admin-group overwrite, flex-algo definitions with
colorfield, andnext-hop resolution ribsconfig to device templates. All gated onflex_algo.enabled.UNICAST-DRAINED group 1MUST always be defined as an alias in therouter traffic-engineeringblock whenenabled: true.exclude 1MUST always be injected into everyinclude-anyflex-algo definition — unconditional, not dependent on any link being drained.Interface admin-group template overwrites the full set on change; uses
no traffic-engineering administrative-grouponly when no topologies remain.Milestone: RFC-18: Controller — Topology Config
RFC: #3288
Files affected:
controlplane/controller/internal/controller/(device templates)Size: Medium
Tests:
traffic-engineering administrative-grouplineUNICAST-DRAINED group 1always present whenenabled: true, regardless of drain stateexclude 1always present in allinclude-anyflex-algo definitionsno router traffic-engineeringgenerated onenabled: falseBlockers: #3350 (features.yaml config loading), #3344 (TopologyInfo account)