Restore behavior passing FlyteClient kwargs to gRPC channel creation #3303
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.
Why are the changes needed?
The
FlyteRemoteclass is documented as allowing gRPC options in thehttps://github.com/flyteorg/flytekit/blob/v1.16.3/flytekit/remote/remote.py#L284-L285.
These are still passed through to client construction, though we stopped passing these to the underlying gRPC channel creation in #1458. (It's not clear to me if this was an oversight or intentional decision?)
This does mean that from v1.10.0 onward, there's no longer any way to provide additional options for the gRPC channel.
We have a custom proxy that requires additional gRPC options to be set at channel creation time (specifically,
grpc.default_authority, though I can imagine others may be useful too). Unfortunately, it's not possible to configure this at any other point (e.g. with an interceptor).What changes were proposed in this pull request?
This PR restores the previous (and still-documented) behavior.
How was this patch tested?
I added a unit test to ensure we're keeping the default options as well as adding any user-provided options.
I've also tested with this change internally and it works with pre-1.10.0 code that has the desired behavior.
Setup process
Screenshots
Check all the applicable boxes
Related PRs
Docs link
Summary by Bito
This pull request restores the ability to pass additional gRPC options when creating the gRPC channel in the FlyteClient, addressing a regression from a previous update. It ensures compatibility with both default and user-provided options, and includes a unit test to verify the functionality.