:wave: Hello all, I'm investigating Flyte for our ...
# flytekit
a
👋 Hello all, I'm investigating Flyte for our use cases, I see all examples are in Python. I also see a Java/Scala SDK. Is it fair to assume I won't have limited functionality using it from our Scala applications?
Because all docs are basically Python example, I'm having a hard time reasoning about the Java support scope.
h
Java/Scala SDK is unfortunately not at all feature on par with the Python one.
a
Do you know if there is a summary of features across the SDK's? Like what I can't do via the Java SDK?
And maybe how hard features are to add? e.g. is it as simple as adding support via an API to a REST backend
h
First of all, I'm not entirely sure whether https://github.com/flyteorg/flytekit-java/blob/master/jflyte-utils/src/main/java/org/flyte/jflyte/utils/AuthorizationHeaderInterceptor.java (sending id token via
flyte-authorization
gRPC header) would just work with flyteadmin's oauth, and you will need to create your own token source similarly as https://github.com/flyteorg/flytekit-java/blob/master/jflyte-google-cloud/src/main/java/org/flyte/jflyte/gcp/GcpTokenSource.java. flytekit-java has support of container task, workflow, subworkflow, dynamic workflow task, branch node, etc. You can find examples in https://github.com/flyteorg/flytekit-java/tree/master/flytekit-examples and https://github.com/flyteorg/flytekit-java/tree/master/flytekit-examples-scala
b
We've recently integrated Flyte with some Spring Boot services, and essentially what it boiled down to was using the protos to build out client stubs w/ an auth interceptor to add the token. We're using an external OAuth provider that our Spring Boot services were already integrated with, so we were able to re-use some of that. The only flyte dependency we pulled in was
org.flyte:flyteidl-protos:0.4.38
but as was mentioned above, there are some utils that may be helpful for you.
a
@Blake Jackson So you didn’t use the flytekit-java package at all?
b
We haven't so far. We've treated Flyte as just another gRPC API
a
Interesting. And you're being successful? Do you simply discover features via the Python API? Are you using it in production?
k
Cc @Haytham Abuelfutuh