Skip to content

Pluggable OpenIDConnect Driver

Rustam Lotsmanenko (EPAM) requested to merge plugin-driver into main


Link to ADR:
More details about the solution:


Blockers for plugin approach:

  • Redundant dependencies are present in root pom.
  • OpenIDConnect Driver compiled without its dependencies in JAR making it not possible to use it as a plugin.

Not blockers, but part of code cleanup:

  • @ConditionalOnProperties is present, but it is redundant, since Drivers won't be bundled all together, and there is no need to configure them that way.


  • Added Maven shade plugin, which allows to build uber JAR with required dependencies, and shade them to avoid classpath conflicts.
  • Removed Spring @ConditionalOnProperties annotation. We do not need it anymore, Driver implementations won't be loaded to the application all at once.
  • Removed redundant dependencies. Driver shouldn't have redundant dependencies, it complicates uber JAR usage.
  • Move dependencies to module pom files, to not force consumers to download redundant ones.
  • Module and artifact ID renamed according to convention.
Edited by Rustam Lotsmanenko (EPAM)

Merge request reports