Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support specifying externalTrafficPolicy in Services created by listener-operator #773

Merged
merged 14 commits into from May 21, 2024

Conversation

sbernauer
Copy link
Member

@sbernauer sbernauer commented May 6, 2024

Description

Replaces #562
Needed by stackabletech/listener-operator#57
First raised a year ago here

If i use the ListenerClass external-stable on IONOS k8s the LoadBalancer svc is not reachable. I did find out it's because we set externalTrafficPolicy: Local on the svc here.
This PR simply allows users to configure that field, which is than passed to the created Service. We leave the default as-is at Local, so we don't have any breaking change.

This change is needed for external-stable to work on IONOS!

Some background info on that feature

CRD change

---
apiVersion: listeners.stackable.tech/v1alpha1
kind: ListenerClass
metadata:
  name: public
spec:
  serviceType: LoadBalancer
  # NEW:
  serviceExternalTrafficPolicy: Local # or Cluster, defaults to Local

Tasks

Edit tasklist title
Beta Give feedback Tasklist Tasks, more options

Delete tasklist

Delete tasklist block?
Are you sure? All relationships in this tasklist will be removed.
  1. operator-rs change
    Options
  2. Read and use new field in listener-op
    Options

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

Edit tasklist title
Beta Give feedback Tasklist Author, more options

Delete tasklist

Delete tasklist block?
Are you sure? All relationships in this tasklist will be removed.
  1. Changes are OpenShift compatible
    Options
  2. CRD changes approved
    Options
  3. Integration tests passed (for non trivial changes)
    Options

Reviewer

Edit tasklist title
Beta Give feedback Tasklist Reviewer, more options

Delete tasklist

Delete tasklist block?
Are you sure? All relationships in this tasklist will be removed.
  1. Code contains useful comments
    Options
  2. (Integration-)Test cases added
    Options
  3. Documentation added or updated
    Options
  4. Changelog updated
    Options
  5. Cargo.toml only contains references to git tags (not specific commits or branches)
    Options

Acceptance

Edit tasklist title
Beta Give feedback Tasklist Acceptance, more options

Delete tasklist

Delete tasklist block?
Are you sure? All relationships in this tasklist will be removed.
  1. Feature Tracker has been updated
    Options
  2. Proper release label has been added
    Options

NickLarsenNZ
NickLarsenNZ previously approved these changes May 6, 2024
Copy link
Member

@NickLarsenNZ NickLarsenNZ left a comment

Choose a reason for hiding this comment

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

LGTM, left some comments

crates/stackable-operator/src/commons/listener.rs Outdated Show resolved Hide resolved
crates/stackable-operator/src/commons/listener.rs Outdated Show resolved Hide resolved
crates/stackable-operator/src/commons/listener.rs Outdated Show resolved Hide resolved
sbernauer and others added 3 commits May 7, 2024 07:44
@sbernauer sbernauer added changelog/crd-change Any issue that changes a CRD (breaking and non-breaking changes) should get this label type/internal-debt labels May 7, 2024
NickLarsenNZ
NickLarsenNZ previously approved these changes May 7, 2024
Copy link
Member

@NickLarsenNZ NickLarsenNZ left a comment

Choose a reason for hiding this comment

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

LGTM

NickLarsenNZ
NickLarsenNZ previously approved these changes May 7, 2024
Copy link
Member

@NickLarsenNZ NickLarsenNZ left a comment

Choose a reason for hiding this comment

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

LGTM

@sbernauer sbernauer requested a review from nightkr May 13, 2024 08:28
@sbernauer sbernauer requested a review from nightkr May 16, 2024 09:26
@sbernauer sbernauer self-assigned this May 16, 2024
@sbernauer
Copy link
Member Author

There were no further comments during the voting phase, merging this

@sbernauer sbernauer added this pull request to the merge queue May 21, 2024
Merged via the queue into main with commit c20bdce May 21, 2024
17 checks passed
@sbernauer sbernauer deleted the feat/listener-service-external-traffic-policy-2 branch May 21, 2024 10:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
changelog/crd-change Any issue that changes a CRD (breaking and non-breaking changes) should get this label type/internal-debt
Projects
Status: Development: Done
Development

Successfully merging this pull request may close these issues.

None yet

3 participants