ListenerClass CRD restructure
@NickLarsenNZ is already working on this.
Since Aug 21, 2025.
Assessment
This issue has not been assessed yet.
Description
We currently have all ListenerClass spec fields at the top level. Most are passed through to the Service and most are prefixed with service while others are not.
Perhaps we should consider one of these options:
- Prefix all fields that will be passed to
Servicewithservice. - Move
Servicerelated fields down toserviceOverrides- We need to consider if there are
Servicefields that should not be overridable.
- We need to consider if there are
Option 1 (dismissed)
apiVersion: listeners.stackable.tech/v1alpha1
kind: ListenerClass
metadata:
name: aws-ec2-nlb-public
spec:
# 👇 This is not passed to the Service
preferredAddressType: HostnameConservative
serviceType: LoadBalancer
# 👇 prefix with `service`
serviceLoadBalancerClass: eks.amazonaws.com/nlb
serviceLoadBalancerAllocateNodePorts: false
# 👆
serviceExternalTrafficPolicy: Local
serviceAnotations: {}
Option 2 (dismissed)
apiVersion: listeners.stackable.tech/v1alpha1
kind: ListenerClass
metadata:
name: aws-ec2-nlb-public
spec:
# 👇 This remains unchanged, not passed to the Service
preferredAddressType: HostnameConservative
# 👇 New
serviceOverrides:
type: LoadBalancer
loadBalancerClass: eks.amazonaws.com/nlb
loadBalancerAllocateNodePorts: false
externalTrafficPolicy: Local
annotations: {}
Option 3 (approved)
apiVersion: listeners.stackable.tech/v1alpha1
kind: ListenerClass
metadata:
name: aws-ec2-nlb-public
spec:
# 👇 This remains unchanged, not passed to the Service
preferredAddressType: HostnameConservative
# 👇 New
serviceOverrides:
<service object>
metadata:
annotations:
spec:
type: LoadBalancer
loadBalancerClass: eks.amazonaws.com/nlb
allocateLoadBalancerNodePorts: false
externalTrafficPolicy: Local
- Dominant language
- Python
- Stars
- 9
- Forks
- 2
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 8
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from stackabletech/listener-operator
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
customer-request
Difficulty 4/5 3-5 days Newbie friendliness 35/100
stackabletech/listener-operator#302 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 20/100
-
Rename `listeners.stackable.tech/listener-class` PVC annotation to `listeners.stackable.tech/class` Open
Difficulty 3/5 1-2 days Newbie friendliness 43/100
stackabletech/listener-operator#271 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 35/100
All issues in stackabletech/listener-operator
Similar issues
-
triage/confirmed
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
agentscope-ai/agentscope#2775 ·
-
comp/desktop P3 type/bug
Difficulty 1/5 Under an hour Newbie friendliness 92/100
NousResearch/hermes-agent#118866 ·
-
bug
Difficulty 1/5 Under an hour Newbie friendliness 90/100
apache/cloudstack#14222 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100