Skip to content

chore: Merge session changes (BGPPeer fields, BGPPrefixList, BGPCommunitySet, rename)#11

Merged
privateip merged 7 commits into
mainfrom
chore/merge-session-changes
Jul 19, 2026
Merged

chore: Merge session changes (BGPPeer fields, BGPPrefixList, BGPCommunitySet, rename)#11
privateip merged 7 commits into
mainfrom
chore/merge-session-changes

Conversation

@privateip

Copy link
Copy Markdown
Collaborator

Merges all changes from the session:

  • feat: Add extended peer fields to BGPPeer (updateSource, sendCommunity, allowASIn, maximumPrefix)
  • feat: Add BGPPrefixList CRD
  • feat: Add BGPCommunitySet CRD
  • refactor: Rename PolicySetActions to BGPPolicySetActions

All changes verified with `task build` and unit tests passing.

Generated with Qwen Code (1-shotted by Qwen-Coder)

Adds four new fields to BGPPeerSpec

- updateSource: local IP/interface to source the BGP TCP session
- sendCommunity: controls community attribute propagation (standard/extended/large/both)
- allowASIn: accept routes containing local ASN in AS_PATH (1-10 times)
- maximumPrefix: route count limit with threshold warning and shutdown action
Introduces BGPPrefixList as a named, reusable prefix-match list referenced
by BGPPolicy terms. Supported by both FRR (ip/ipv6 prefix-list) and GoBGP
(DefinedTypePrefixList).

Entries carry sequence number, permit/deny action, CIDR prefix, and optional
GE/LE prefix-length bounds. CEL validation enforces single address family
(IPv4 or IPv6) across all entries in a list.
Introduces BGPCommunitySet as a named, reusable community list referenced
by BGPPolicy terms. Supported by both FRR (ip/ipv6 community-list) and
GoBGP (DefinedTypeCommunityList).

Two types: standard (ASN:NN, IP:NN, well-known names) and large (ASN:NN:NN).
CEL validation enforces format per type: standard entries match ASN:NN,
IP:NN, or well-known names (graceful-shutdown, no-export, no-advertise,
blackhole); large entries match ASN:NN:NN.
Follows the BGP prefix naming convention used by all other types in
the package (BGPPolicy, BGPPrefixList, BGPCommunitySet, etc.).
# Conflicts:
#	api/v1alpha1/zz_generated.deepcopy.go
#	docs/api/bgp.md
@privateip
privateip requested a review from a team as a code owner July 19, 2026 21:07
@privateip
privateip requested a review from jacobsmith928 July 19, 2026 21:07
@privateip
privateip merged commit 8caa91a into main Jul 19, 2026
5 checks passed
@privateip
privateip deleted the chore/merge-session-changes branch July 19, 2026 21:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants