As StephanEwen mentioned in ML
, the client needs big refactoring / cleanup. It should use a proper HTTP client library to help with future authentication mechanisms.
After an investigation I notice that the valid cluster clients are only MiniClusterClient and RestClusterClient. Legacy clients, StandaloneClusterClient and YarnClusterClient, as well as pre-FLIP-6 codes inside ClusterClient, should be removed as part of
FLINK-10392. With this removal we arrive a clean stage where we can think how to implement a proper HTTP client more comfortably.
1. StandaloneClusterClient is now depended on by LegacyStandaloneClusterDescriptor (the removal is tracked by
FLINK-10700) and FlinkClient(part of flink-storm which is decided to be removed FLINK-10571). Also relevant tests need to be ported(or directly removed).
2. The removal of YarnClusterClient should go along with
FLINK-11106 Remove legacy flink-yarn component.
3. Testing classes inheriting from ClusterClient need to be ported(or directly removed).
4. Get rid of legacy codes inside ClusterClient it self, such as #run(JobGraph, ClassLoader)
Besides, what is JobClient used for? I cannot find valid usages of it. (Till mentioned it at ML https://lists.apache.org/thread.html/ce99cba4a10b9dc40eb729d39910f315ae41d80ec74f09a356c73938@%3Cdev.flink.apache.org%3E)
cc mxm till.rohrmann