Skip to content

[K8s] Migrate streampark-flink-kubernetes from Scala to Java - #4465

Open
shangeyao wants to merge 5 commits into
apache:devfrom
shangeyao:migrate/4451-flink-kubernetes-scala-to-java
Open

[K8s] Migrate streampark-flink-kubernetes from Scala to Java#4465
shangeyao wants to merge 5 commits into
apache:devfrom
shangeyao:migrate/4451-flink-kubernetes-scala-to-java

Conversation

@shangeyao

Copy link
Copy Markdown
Contributor

Summary

  • Migrate streampark-flink-kubernetes from Scala to Java ([K8s] Migrate streampark-flink-kubernetes from Scala to Java #4451), replacing json4s with Jackson REST DTOs while preserving watcher/cache behavior and public API contracts.
  • Update console enum bridges (FlinkAppStateEnum, FlinkK8sChangeEventListener) for Java FlinkJobState / FlinkK8sDeployMode.
  • Remove redundant JavaConverters usage in packer K8s build pipelines after PodTemplateTool returns Java Map.

Test plan

  • ./mvnw test -pl streampark-flink/streampark-flink-kubernetes (7 tests pass)
  • ./mvnw install -pl streampark-console/streampark-console-service -am -DskipTests (BUILD SUCCESS)
  • CI Backend build + Unit-Test

Closes #4451

Made with Cursor

…to Java

Convert K8s integration module to Java with Jackson REST DTOs replacing
json4s, preserve watcher/cache behavior, and update console enum bridges.

Co-authored-by: Cursor <cursoragent@cursor.com>
shangeyao and others added 4 commits July 31, 2026 13:55
Handle InterruptedException in watcher CompletableFuture joins, remove
redundant Optional null checks, and replace backtracking-prone path regex.

Co-authored-by: Cursor <cursoragent@cursor.com>
Address 32 Sonar CODE_SMELL findings: extract string constants (S1192),
refactor nested try blocks (S1141), simplify complex methods (S3776/S135),
use @Builder.Default static constants (S1170), and fix comment/path issues.

Co-authored-by: Cursor <cursoragent@cursor.com>
Update KubernetesNativeSessionClient to use Java ClusterKey builder and
Optional.orElseThrow after k8s module migration to Java.

Co-authored-by: Cursor <cursoragent@cursor.com>
Use GHCR ryuk mirror with retry pre-pull for testcontainers images to
avoid transient registry-1.docker.io timeouts in CI.

Co-authored-by: Cursor <cursoragent@cursor.com>
@github-actions github-actions Bot added the INFRA label Aug 2, 2026
@sonarqubecloud

sonarqubecloud Bot commented Aug 2, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[K8s] Migrate streampark-flink-kubernetes from Scala to Java

1 participant