I'm trying to get a simple piece of code working using:
- GKE (https://cloud.google.com/kubernetes-engine),
- google pubsub,
- workload identity (
https://cloud.google.com/kubernetes-engine/docs/how-to/workload-identity),
- camel-google-pubsub and camel-google-pubsub-starter v 3.11.0

My app comes up OK, but when it tries to connect to my subscription it
fails with: "io.grpc.StatusRuntimeException: PERMISSION_DENIED: The request
is missing a valid API key."

This is reasonable as I'm not providing the "serviceAccountKey" query
parameter as I want to use workload identity (which I configured all the
way through) cause, as of today, that is the recommended way to access
Google Cloud services from GKE instead of a mounted service account keys.

However. inspecting the code
https://github.com/apache/camel/blob/camel-3.11.1/components/camel-google/camel-google-pubsub/src/main/java/org/apache/camel/component/google/pubsub/GooglePubsubComponent.java
tells me that this is impossible at the moment.

I'm happy to create a JIRA and attempt to open a PR to add support for
workload identity if someone can confirm that this is desired.

Best Regards,
Tamas

Reply via email to