-
Notifications
You must be signed in to change notification settings - Fork 230
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
GRPC Service Proxy and Encoding Interceptor #738
Conversation
Add LastCompletionResult.
I've got an auto-generated version of the interceptor nearly working which would use an opt-out approach to exclude Payload(s) we don't want to be touched. Chad has suggested a test which will re-walk the API definitions and check if the list on which the interceptor is built has drifted from the current API version so that we can ensure decisions are made about new Payload(s) as they are introduced (or removed for that matter). |
Which payloads do we not want to touch? |
SearchAttributes is the only one I'm aware of. |
When temporalio/api#153 lands, it'll be a good example of whether the test will fail when we upgrade the API dependency but don't re-gen code. |
Nice! That's what I was going for |
|
LGTM! Ignore the coveralls complaint (can squash/merge anyways once you get @bergundy's approval) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just approved.
I didn't go over the code again but I understand the new approach which is the right way to go IMO.
What was changed
Added a proxy which wires together a GRPC server and client for WorkflowService.
Why?
This allows users to build proxies for Temporal Frontend traffic and use GRPC interceptors to manipulate requests or responses. One use case for this is to centralise data encoding.
Checklist
How was this tested:
Any docs updates needed?