serving: SinkBinding doesn't work with KServices that uses BYO revision names
Describe the bug
When using a SinkBinding with a Knative Service as subject that uses BYO revision names (i.e. setting the revision name from the client), then no K_SINK environment variable is injected to the KService.
Expected behavior
K_SINK should be injected to the Pod Template as a container env var regardless whether a Knative Service is configured for BYO revision names or not.
To Reproduce
kn service create random --image rhuss/random:1.0
kn broker create default
kn source binding create my-sb --subject Service:serving.knative.dev/v1:random --sink broker:default
kn service describe random --verbose | grep K_SINK
This will get no result as kn used BYO revision names by default. If switching over to server side generated names, then a K_SINK env var is injected.
# Switch over to server side generated names
kn service update random --revision-name ""
kn service describe random --verbose | grep K_SINK
Env: K_SINK=http://broker-ingress.knative-eventing.svc.cluster.local/default/default
Knative release version
Eventing 0.17.3 (running on minikube)
About this issue
- Original URL
- State: open
- Created 4 years ago
- Comments: 31 (17 by maintainers)
/remove-lifecycle stale
While I think it might not be necessary to fix SinkBindings to run with BYO revision names, I also think we should document the restriction somewhere, ideally at the place where the SinkBinding itself is documented.
I hit that one with kn 0.19 and serving 0.21. Maybe do reopen as you said @rhuss ?
/reopen /remove-lifecycle stale