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

API to write platform specific behaviour #283

Open
2 tasks
lahabana opened this issue May 22, 2024 · 1 comment
Open
2 tasks

API to write platform specific behaviour #283

lahabana opened this issue May 22, 2024 · 1 comment
Milestone

Comments

@lahabana
Copy link

Problem Statement

We have a few issues that require platform specific behaviour.
While ideally there shouldn't be any, sometimes it is still required.

We should have a component to detect Kubernetes platform information so we can easily write code that's conditional to the platform detected.

Issues that would leverage this component:

Proposed Solution

A lot of the detection code already exists in telemetry: https://github.com/Kong/kubernetes-telemetry/blob/a8f70df68515496b91e46e04fead4116e1df25b9/pkg/telemetry/workflowsk8s.go#L32-L63

Some open questions:

  • Should we include the version there?
  • Should we include os/arch?
  • What kind of refresh policy should we adopt here (my guess is that we don't need to as to the controller pod needs to be restarted to get on the latest k8s node version)?

As this detection is based on heuristics it should be possible for users to set it in configuration in case the heuristics are wrong.

Acceptance Criteria

  • There's an API in controllers that enables us to write platform specific code without writing the discovery ourselves
  • Users can explicitly set their platform parameters and not rely on heuristics
@lahabana lahabana added this to the KGO v1.4.x milestone May 22, 2024
@pmalek
Copy link
Member

pmalek commented May 22, 2024

X-referencing archived issue: https://github.com/Kong/gateway-operator-archive/issues/867.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants