
[[_fuse_install_feature]]
===== Installing the Keycloak Feature

You must first install the `keycloak` feature in the JBoss Fuse environment. The keycloak feature includes the Fuse adapter and all third-party dependencies. You can install it either from the Maven repository or from an archive.

====== Installing from the Maven Repository

As a prequisite, you need to be online and have access to the Maven repository.

{% if book.community %}
For community it's sufficient to be online as all the artifacts and 3rd party dependencies should be available in the maven central repository.
{% endif %}
{% if book.product %}
For {{book.project.name}} you first need to configure a proper Maven repository, so you can install the artifacts. For more information see the
https://access.redhat.com/maven-repository[Maven Repository] page.

Assuming the Maven repository is https://maven.repository.redhat.com/ga/, add the following to the `$FUSE_HOME/etc/org.ops4j.pax.url.mvn.cfg` file and add the repository to the list of supported repositories. For example:

[source]
----
 org.ops4j.pax.url.mvn.repositories= \
    https://maven.repository.redhat.com/ga@id=redhat.product.repo
    http://repo1.maven.org/maven2@id=maven.central.repo, \
    ...
----
{% endif %}

To install the keycloak feature using the maven repository complete the following steps:

. Start {{book.fuseVersion}}; then in the Karaf terminal type:

[source,subs="attributes"]
----
features:addurl mvn:org.keycloak/keycloak-osgi-features/{{book.project.versionMvn}}/xml/features
features:install keycloak
----

. You might also need to install the Jetty 9 feature:

[source]
----
features:install keycloak-jetty9-adapter
----

NOTE: If you are using JBoss Fuse 6.2 or later, you should use `keycloak-jetty8-adapter`. However, upgrading {{book.fuseVersion}} instead.

. Ensure that the features were installed:

[source]
----
features:list | grep keycloak
----

====== Installing from the ZIP bundle

This is useful if you are offline or do not want to use Maven to obtain the JAR files and other artifacts.

To install the Fuse adapter from the ZIP archive, complete the following steps:

. Download the {{book.project.name}} Fuse adapter ZIP archive.
. Unzip it into the root directory of JBoss Fuse. The dependencies are then installed under the `system` directory. You can overwrite all existing jar files.
+
Use this for {{book.fuseVersion}}:
+
[source,subs="attributes"]
----
cd /path-to-fuse/jboss-fuse-6.3.0.redhat-198
unzip -q /path-to-adapter-zip/keycloak-fuse-adapter-dist-{{book.project.versionMvn}}.zip
----
. Start Fuse and run these commands in the fuse/karaf terminal:
+
[source,subs="attributes"]
----
features:addurl mvn:org.keycloak/keycloak-osgi-features/{{book.project.versionMvn}}/xml/features
features:install keycloak
----

. Install the corresponding Jetty adapter. Since the artifacts are available directly in the JBoss Fuse `system` directory, you do not need to use the Maven repository.

