stackabletech / stackabletech/listener-operator
ListenerClass CRD restructure
Open
@NickLarsenNZ is already working on this.
Since Aug 21, 2025.
- Dominant language
- Python
- Stars
- 9
- Forks
- 2
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 8
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
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.
Assessment
This issue has not been assessed yet.