Search all workloads if Pod selector doesn't match any workloads #541
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.
What are you trying to accomplish with this PR?
Currently a service assumes that the pod selector will also match the workload. This isn't always true. Because it's possible for there to be no pods that match the service's pod-selector (when the workload is scaled to 0). We need to check every workload instead of assuming no such workload exists.
Closes: #483
How is this accomplished?
Search all workloads to find the correct set.
What could go wrong?
If the namespace has many StatefulSets and/or Deployments this could be a lot of data to fetch and check.
Should we always search everything? We could only search everything when there are no pods. And if there are pods walk the owner references back. However, walking the owner refs would be an extra API call though with less data...