docs: Propose datumctl alb plugin - #436
Open
mattdjenkinson wants to merge 5 commits into
Open
Conversation
Give operators a product-level design for a first-party CLI before we reshape the plugin build. The document explores command shape, defaults, and what stays out of v1, matching the depth of the dns plugin design. Key changes: - add an enhancement that treats ALBs as the product, not HTTPProxies - record proposed verbs, wait policy, and payload contract - list open questions for hostname wait, advanced mutations, and WAF
Keep the product decisions and drop the duplicated why-tables, sample transcripts, and plumbing that already live in the dns plugin design.
mattdjenkinson
requested review from
0xmc,
bmertens-datum,
kevwilliams,
savme and
scotwells
September 9, 2026 15:02
Contributor
|
@mattdjenkinson can we expand this to include multi-route support? Should be easy to add / remove routes from an ALB that have different backends. Also need to account for network services as a backend ref. |
Contributor
Author
|
Yeah good shout! |
The plugin should add and remove path routes with different backends, matching the upcoming portal UI, and point a route at an existing NetworkService by name and port. It must not create that object.
The CLI owns NetworkService create, list, describe, and delete as a nested noun. alb create still only references a service that exists; the UI can write the same object later.
Contributor
|
I think the WAF pieces of this could come after (or in a separate plugin). I can't remember if we decided how we wanted to place the TrafficProtection either in/out/around the L7 load balancer. |
The single-backend cap is being lifted. Write create, route add, and backend add as if a path can already list several URL and NetworkService origins.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Operators currently manage Application Load Balancers through the cloud portal or by applying raw YAML that exposes internal resource shapes. This proposes a first-party command-line plugin that presents load balancers the way the product does, with the same create defaults and hostname workflow as the portal. The document explores command shape, wait behaviour, protection and access-control verbs, mutation safety, and what stays out of the first release. After it merges we will reshape the plugin implementation against this contract.