Skip to content

Conversation

@ferenc-csaky
Copy link
Collaborator

After integrating this into the sqrl infra, I ended up fine-tuning some things and adding a bit more logic here to make things more flexible.

Main changes

  • Reworked the main class to 2 different implementations, CliRunner that is intended for standalone use, and JavaRunner that is intended for the SQRL test env. (Now that I wrote this, maybe SqrlRunner is a better name.)
  • The common logic is put into a BaseRunner abstract class.
  • Updated EnvVarResolver to a non-static utility, cause we need to inject environment variables on the SQRL side, and to keep that with the JSON deserializer, this seemed more appropriate.
  • Introduced default value handling into EnvVarResolver, that can be given via ${KEY:defaultValue}.
  • Added a static factory method to SqlExecutor that puts UDFs into a user class loader, and adapt the Flink conf accordingly as well, cause the ADD JAR method does not work on the SQRL test env.
  • Covered newly added logic with unit tests.

@ferenc-csaky ferenc-csaky requested review from mbroecheler and velo June 24, 2025 17:15
@ferenc-csaky ferenc-csaky force-pushed the make-runner-more-flexible branch 2 times, most recently from c8c9065 to 64536d5 Compare June 24, 2025 17:28
@ferenc-csaky ferenc-csaky force-pushed the make-runner-more-flexible branch 2 times, most recently from adf6791 to c8aa4f0 Compare June 24, 2025 18:35
@ferenc-csaky ferenc-csaky force-pushed the make-runner-more-flexible branch from c8aa4f0 to 234ead7 Compare June 24, 2025 18:44
@ferenc-csaky ferenc-csaky merged commit e9f7d02 into main Jun 24, 2025
2 checks passed
@ferenc-csaky ferenc-csaky deleted the make-runner-more-flexible branch June 24, 2025 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants