I just tried it out and I must admit it's pretty nice to have a such fast
feedback loop while changing the code of the extension. To bootstrap the
development of a new extension I think this is something we must explore as
it increases the developer experience a lot.
On Tue, Feb 12, 2019 at 12:35 PM Thomas Darimont <
thomas.darimont(a)googlemail.com> wrote:
HI Stian,
Thanks for the feedback. In my experience using Arquillian is rather slow -
at least I haven't seen an example setup that doesn't need 30+ seconds
round-trip time per change (without hot-code replacement). Do you have a
fast example at hand (< 10sec round-trip time)?
The aforementioned approach is easy to use and makes a cold-start
round-trip much faster (~5 sec my machine).
Also one can concentrate on the actual extension development first, instead
of figuring out the proper packaging of their extension right from the
beginning, which is IMHO not a nice getting started experience.
Cheers,
Thomas
Am Di., 12. Feb. 2019 um 12:21 Uhr schrieb Stian Thorgersen <
sthorger(a)redhat.com>:
> I'd say it would be better to target the real distribution rather than
the
> KeycloakServer. It should be reasonably easy to setup Arquillian to use
the
> Keycloak distribution from Maven Central and allow it to hot-deploy
> extensions for testing purposes.
>
> On Tue, 12 Feb 2019 at 09:42, Thomas Darimont <
> thomas.darimont(a)googlemail.com> wrote:
>
>> Hello Keycloak-Team,
>>
>> I found a neat setup to simplify the development of Keycloak extensions.
>> I setup a "keycloak-extension-playground" project that contains two
or
>> more
>> maven modules:
>> - keycloak-playground-server
>> - simple-auth-extension (example)
>>
>> In the "keycloak-playground-server" module, I wrap a KeycloakServer
from
>> the "keycloak-testsuite-utils" library where one could potentially
add
>> additional configuration. Note that this library must be in (local)
Maven
>> Repository.
>>
>> The "simple-auth-extension" is an example extension module that
>> demonstrates the usage of the Authenticator SPI.
>>
>> I now declare "simple-auth-extension" as a compile time dependency of
the
>> "keycloak-playground-server" project. This ensures that it's
classes and
>> resources are on the classpath of KeycloakServer. Therefore all SPI
>> implementations in custom extensions can be found. This improves the
>> debugging experience and speeds up development time.
>>
>> The example project can be found here:
>>
https://github.com/thomasdarimont/keycloak-extension-playground
>>
>> What do you guys think about this approach?
>>
>> Cheers,
>> Thomas
>> _______________________________________________
>> keycloak-dev mailing list
>> keycloak-dev(a)lists.jboss.org
>>
https://lists.jboss.org/mailman/listinfo/keycloak-dev
>>
>
_______________________________________________
keycloak-dev mailing list
keycloak-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/keycloak-dev