[keycloak-dev] Keycloak distribution changes

Marko Strukelj mstrukel at redhat.com
Tue Apr 14 06:29:30 EDT 2015

Yesterday a had a little conversation with Stan, and he thought the code split may result in a lot of subsystem plumbing code duplication and make things more difficult for Elytron integration, and make OOTB config for examples slightly more complicated ...

As far as I understood it the idea is a code split, and module dependencies split, and it's there to be able to make a standalone distribution that will not contain any of adapter-specific configuration / dependencies / modules. The price of duplicated plumbing, and a lack of OOTB adapter configuration for standalone  - server and adapter in the same WildFly - is agreed to be outweighed (so I understand) by some benefits - but I'm not sure what those are (cleaner codebase? The ability to be able to install adapter only into existing WildFly without also installing the server parts - auth-server.war? Something else?)

Server / adapter split will have to identify code that is shared between server and adapter, which will be modularized out of the subsystem.

Stan can tell more, but as I understood his idea was that the one and single subsystem could present two faces, and based on availability of some modules for example present a server only, an adapter only, or a full view of configuration options, and that might be simpler than splitting existing subsystem into three parts - server, adapter, shared.

----- Original Message -----
> We've discussed this and I hope we're all on the same page, but just to
> confirm here's what we've discussed:
> Keycloak Server
> ---------------
> * Standalone
>   - Built on WildFly servlet-only
>   - No 'standalone/deployments' directory
>   - Includes server only sub-system
>   - Download name keycloak-<version>.[zip|tar.gz] (no docs, examples, etc,
>   included)
>   - Keycloak deployed to root context (http://localhost:8080)
> * Demo Bundle
>   - Built on WildFly full
>   - Includes demo ready deployed and configured
>   - Includes server and adapter sub-systems
>   - Download name keycloak-bundle-<version>.[zip|tar.gz] (includes docs,
>   examples, etc.)
>   - Keycloak deployed to auth context (http://localhost:8080/auth)
> * Installer
>   - Installs Keycloak server sub-system into existing WildFly
>   - Only "latests" WildFly at the time of release is supported
>   - Keycloak deployed to auth context (http://localhost:8080/auth)
> Keycloak Embedded
> ------------------
> * Consumed by external JBoss projects to embed Keycloak
> * Build-your-own WAR example repo
> Keycloak Adapters
> -----------------
> * Separate download from server
> * Installer for WildFly subsystem adapter
> * We still have to decide if adapters should have a separate release
> cycle/version to the server
> * We still have to decide if Java adapters should be moved to separate github
> repo
> Finally, a set of releated tasks
> --------------------------------
> * Split subsystem into server and adapter
> * Use standalone.xml instead keycloak-server.json (json will still be
> supported for embedded)
> * Add support to use dmr/jboss-cli for configuring the server (for example a
> single jboss-cli batch script can add data-source and set Keycloak to use
> it)
> * Add support to use dmr/jboss-cli for configure realms, apps and users
> * Add support to use root-context with server subsystem
> _______________________________________________
> keycloak-dev mailing list
> keycloak-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/keycloak-dev

More information about the keycloak-dev mailing list