Skip to content

TPT-4654: Support NodeBalancer types and backend connectivity - #890

Merged
zliang-akamai merged 4 commits into
devfrom
zhiwei/TPT-4654/nodebalancer-backend-connectivity
Oct 26, 2026
Merged

zliang-akamai merged 4 commits into
devfrom
zhiwei/TPT-4654/nodebalancer-backend-connectivity

Conversation

@zliang-akamai

@zliang-akamai zliang-akamai commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

📝 Description

Add Ansible support for the NodeBalancer API changes covered by linode/linode_api4-python#735 and linode/linode_api4-python#745.

  • Accept creation-only type, backend_connectivity, and vpcs options without sending them in update requests.
  • Document IPv6 backend addressing and the returned type, backend_connectivity, and read-only backend_ipv6_prefix metadata.
  • Add a standalone Premium NodeBalancer creation test in us-mia that validates returned metadata.

Per-node subnet support is intentionally left for a follow-up. The unavailable /backend_acl endpoint is not added.

✔️ How to Test

Run make test-int TEST_SUITE=nodebalancer_premium.

@zliang-akamai
zliang-akamai requested review from a team as code owners October 14, 2026 20:18
@zliang-akamai zliang-akamai added the new-feature for new features in the changelog. label Oct 14, 2026
@zliang-akamai
zliang-akamai requested review from jcamelon and mawilk90 and a balanced review from Copilot and removed request for a team October 14, 2026 20:18
Comment thread plugins/modules/nodebalancer.py Fixed

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

Returned connectivity metadata can be stale, and unconditional gated-feature tests break integration runs on accounts without access.

3 open findings
What changed in this PR

Adds NodeBalancer type and backend connectivity support to the linode.cloud collection.

Changes:

  • Accepts creation-only type, connectivity, and VPC options without including them in updates.
  • Documents backend addressing and returned metadata.
  • Adds unit coverage and extends populated integration tests for Premium/IPv6 behavior.
File Description
tests/​unit/​modules/​test_nodebalancer.py Tests creation forwarding and update exclusions.
tests/​integration/​targets/​nodebalancer_populated/​tasks/​main.yaml Exercises Premium/IPv6 behavior and metadata consistency.
plugins/​modules/​nodebalancer.py Adds creation-only options and addressing documentation.
plugins/​modules/​nodebalancer_node.py Documents connectivity-specific backend addresses.
plugins/​module_utils/​doc_fragments/​nodebalancer.py Adds connectivity examples and return metadata.
plugins/​module_utils/​doc_fragments/​nodebalancer_node.py Clarifies the example’s address comment.
plugins/​module_utils/​doc_fragments/​nodebalancer_list.py Adds returned metadata examples.
docs/​modules/​nodebalancer.md Updates generated options, examples, and returns.
docs/​modules/​nodebalancer_node.md Updates generated addressing guidance.
docs/​modules/​nodebalancer_list.md Documents additional list metadata.
docs/​modules/​nodebalancer_info.md Documents additional info metadata.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread plugins/modules/nodebalancer.py Resolved
@zliang-akamai
zliang-akamai requested review from a team and lgarber-akamai and removed request for a team and jcamelon October 14, 2026 20:26
@zliang-akamai
zliang-akamai force-pushed the zhiwei/TPT-4654/nodebalancer-backend-connectivity branch 2 times, most recently from 1ad03e7 to 64880f6 Compare October 15, 2026 02:13
@zliang-akamai
zliang-akamai requested a balanced review from Copilot October 15, 2026 02:13
@zliang-akamai
zliang-akamai force-pushed the zhiwei/TPT-4654/nodebalancer-backend-connectivity branch from 64880f6 to 8ab6350 Compare October 15, 2026 02:17

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

Populated IPv6 behavior and post-backend metadata refresh lack the promised integration coverage.

1 open finding
3 resolved since last review

🧠 Review effort: Balanced

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

Full integration runs still execute the Premium target without an opt-in guard, causing failures on accounts without access.

1 open finding
1 resolved since last review

🧠 Review effort: Balanced

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.

🟢 Approval recommended

Only a non-blocking API-version documentation inconsistency remains; no blocking implementation issues were identified.

1 open finding
1 resolved since last review

🧠 Review effort: Balanced

Comment thread plugins/modules/nodebalancer.py Resolved
Comment thread plugins/modules/nodebalancer_node.py Resolved

@lgarber-akamai lgarber-akamai 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.

LGTM and tests are passing!

@mawilk90
mawilk90 requested review from psnoch-akamai and removed request for mawilk90 October 20, 2026 10:07
@zliang-akamai
zliang-akamai requested a balanced review from Copilot October 26, 2026 13:45

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.

🟢 Approval recommended

Static review identified no unresolved blocking issues within the stated scope; automated tests were not run in this review environment.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

@yec-akamai yec-akamai 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.

LGTM!

@zliang-akamai
zliang-akamai merged commit 1cfafca into dev Oct 26, 2026
17 checks passed
@zliang-akamai
zliang-akamai deleted the zhiwei/TPT-4654/nodebalancer-backend-connectivity branch October 26, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-feature for new features in the changelog.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants