Skip to content

DOCS-3080: Fix inaccuracies on the BGPFilter reference - #3136

Merged
ctauchen merged 4 commits into
tigera:mainfrom
ctauchen:DOCS-3080-fact-check-bgpfilter
Oct 21, 2026
Merged

ctauchen merged 4 commits into
tigera:mainfrom
ctauchen:DOCS-3080-fact-check-bgpfilter

Conversation

@ctauchen

@ctauchen ctauchen commented Oct 20, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes statements on the BGPFilter reference that a kind cluster running each release showed to be wrong.

  • A route that matches no rule is accepted on import only. On export, Calico's normal export rules decide.
  • The name rule allowed _ and uppercase letters.
  • The IPv4 rule table was missing asPathPrefix, and action is required (next and 3.33).
  • min defaults to the CIDR's mask size, not 0.
  • max accepts 0.
  • Community values, addCommunity.value, prependASPath.prefix and setPriority.value are required (next, 3.33 and 3.32).
  • 3.31 only: the IPv4 rule table says IPv6 for cidr, and action is required in both rule tables.

Reproduced on v3.33.0 for next and 3.33 (native v3 CRD and API server mode), v3.32.2 for 3.32, and v3.31.7 for 3.31.

Not changed, for follow-up:

  • The IPv6 rule table has the same asPathPrefix and action gaps. IPv6 matching couldn't be shown on an IPv4-only lab.
  • In 3.32 the asPathPrefix row isn't added, because 3.32 rejects AS numbers above 2147483647.
  • A max below the CIDR's mask size, or below min, gives a range that matches no route. The API accepts it.

Preview:

Correct statements on the BGPFilter page that a kind cluster running the release showed to be wrong.
Correct statements on the BGPFilter page that a kind cluster running the release showed to be wrong.
Correct statements on the BGPFilter page that a kind cluster running the release showed to be wrong.
Correct statements on the BGPFilter page that a kind cluster running the release showed to be wrong.
Copilot AI lite review requested due to automatic review settings October 20, 2026 06:57
@netlify

netlify Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview succeeded!

Built without sensitive environment variables

Name Link
🔨 Latest commit dd58253
🔍 Latest deploy log https://app.netlify.com/projects/tigera/deploys/6ad710cd9ba74cdfcbe8811c
😎 Deploy Preview https://deploy-preview-3136--tigera.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 94 (🟢 up 20 from production)
Accessibility: 98 (no change from production)
Best Practices: 92 (no change from production)
SEO: 100 (no change from production)
PWA: -
View the detailed breakdown and full score reports
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@netlify

netlify Bot commented Oct 20, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for calico-docs-preview-next ready!

Name Link
🔨 Latest commit dd58253
🔍 Latest deploy log https://app.netlify.com/projects/calico-docs-preview-next/deploys/6ad710cdb5844e0df99984a8
😎 Deploy Preview https://deploy-preview-3136--calico-docs-preview-next.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The documentation incorrectly rejects accepted uppercase/underscore names and narrows community lists to exactly one value.

7 open issues
What changed in this PR

Updates Calico BGPFilter reference documentation to reflect observed behavior across current and versioned releases.

Changes:

  • Clarifies import/export behavior and field defaults.
  • Corrects validation rules and required fields.
  • Updates IPv4 rule documentation for supported versions.
File Summary
calico/​reference/​resources/​bgpfilter.mdx Updates current BGPFilter behavior and schema details.
calico_versioned_docs/​version-3.33/​reference/​resources/​bgpfilter.mdx Applies corrections for Calico 3.33.
calico_versioned_docs/​version-3.32/​reference/​resources/​bgpfilter.mdx Applies corrections for Calico 3.32.
calico_versioned_docs/​version-3.31/​reference/​resources/​bgpfilter.mdx Corrects 3.31 IPv4 and action documentation.

Review effort: Lite

| Field | Description | Accepted Values | Schema |
| ----- | ------------------------------------------------------------------ | --------------------------------------------------- | ------ |
| `name` | Unique name to describe this resource instance. Must be specified. | Alphanumeric string with optional `.`, `_`, or `-`. | string |
| `name` | Unique name to describe this resource instance. Must be specified. | Lowercase alphanumeric string with optional `.` or `-`. | string |
| Field | Description | Accepted Values | Schema |
| ------ | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | -------------- |
| `values` | List of BGP community values to match against. The route must carry at least one of these communities. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |
| `values` | List of BGP community values to match against. Required. Must contain exactly one value, which the route must carry. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |
| Field | Description | Accepted Values | Schema |
| ----- | ------------------------------------------------------------------ | --------------------------------------------------- | ------ |
| name | Unique name to describe this resource instance. Must be specified. | Alphanumeric string with optional `.`, `_`, or `-`. | string |
| name | Unique name to describe this resource instance. Must be specified. | Lowercase alphanumeric string with optional `.` or `-`. | string |
| Field | Description | Accepted Values | Schema |
| ----- | ------------------------------------------------------------------ | --------------------------------------------------- | ------ |
| `name` | Unique name to describe this resource instance. Must be specified. | Alphanumeric string with optional `.`, `_`, or `-`. | string |
| `name` | Unique name to describe this resource instance. Must be specified. | Lowercase alphanumeric string with optional `.` or `-`. | string |
| Field | Description | Accepted Values | Schema |
| ------ | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | -------------- |
| `values` | List of BGP community values to match against. The route must carry at least one of these communities. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |
| `values` | List of BGP community values to match against. Required. Must contain exactly one value, which the route must carry. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |
| Field | Description | Accepted Values | Schema |
| ----- | ------------------------------------------------------------------ | --------------------------------------------------- | ------ |
| `name` | Unique name to describe this resource instance. Must be specified. | Alphanumeric string with optional `.`, `_`, or `-`. | string |
| `name` | Unique name to describe this resource instance. Must be specified. | Lowercase alphanumeric string with optional `.` or `-`. | string |
| Field | Description | Accepted Values | Schema |
| ------ | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------ | -------------- |
| `values` | List of BGP community values to match against. The route must carry at least one of these communities. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |
| `values` | List of BGP community values to match against. Required. Must contain exactly one value, which the route must carry. | Standard (`aa:nn`) or large (`aa:nn:mm`) community values. | list of string |

@ctauchen ctauchen left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ctauchen
ctauchen marked this pull request as ready for review October 21, 2026 16:21
@ctauchen
ctauchen requested a review from a team as a code owner October 21, 2026 16:21
@ctauchen
ctauchen merged commit ff8fd01 into tigera:main Oct 21, 2026
11 checks passed
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