update doc

This commit is contained in:
Hugo Renard 2022-05-19 15:08:27 +02:00
parent 5ab3d960a8
commit a0dae4b680
Signed by: hougo
GPG key ID: 3A285FD470209C59
6 changed files with 57 additions and 13 deletions

1
.gitignore vendored
View file

@ -1,3 +1,4 @@
/build
/bin
/.idea
/.gradle

View file

@ -27,21 +27,14 @@ Because the event listener is the source of the SCIM flow, and it is not cancela
## Usage
### Installation
### Installation (quick)
> For now, it's doesn't't work on Quarkus which is the default after version 16.x.x.
1. Download the [latest version](https://lab.libreho.st/libre.sh/scim/keycloak-scim/-/jobs/artifacts/main/raw/build/libs/keycloak-scim-1.0-SNAPSHOT-all.jar?job=package)
2. Put it in `/opt/keycloak/providers/`.
1. Download the [latest version](https://lab.libreho.st/libre.sh/scim/keycloak-scim/-/jobs/artifacts/main/raw/target/keycloak-scim-1.0-SNAPSHOT-jar-with-dependencies.jar?job=package)
2. Put it in `/opt/jboss/keycloak/standalone/deployments/`.
It's also possible to build your own custom image if you run Keycloak in a [container](/docs/container.md).
It's also possible to build your own custom image if you run keycloak in a container.
Example:
```
FROM jboss/keycloak:16.1.1
COPY keycloak-scim-1.0-SNAPSHOT-jar-with-dependencies.jar /opt/jboss/keycloak/standalone/deployments/keycloak-scim-1.0-SNAPSHOT.jar
```
Other [installation options](/docs/installation.md) are available.
### Setup

View file

@ -20,7 +20,7 @@ dependencies {
compileOnly 'org.keycloak:keycloak-server-spi-private:18.0.0'
compileOnly 'org.keycloak:keycloak-services:18.0.0'
compileOnly 'org.keycloak:keycloak-model-jpa:18.0.0'
implementation 'io.github.resilience4j:resilience4j-retry:1.7.0'
implementation 'io.github.resilience4j:resilience4j-retry:1.7.1'
implementation('com.unboundid.product.scim2:scim2-sdk-client:2.3.7') {
transitive false
}

15
docs/container.md Normal file
View file

@ -0,0 +1,15 @@
# Container
## Quarkus
```
FROM quay.io/keycloak/keycloak as builder
RUN curl "https://lab.libreho.st/libre.sh/scim/keycloak-scim/-/jobs/artifacts/main/raw/build/libs/keycloak-scim-1.0-SNAPSHOT-all.jar?job=package" -Lo /opt/keycloak/providers/keycloak-scim-1.0-SNAPSHOT-all.jar
RUN /opt/keycloak/bin/kc.sh build
FROM quay.io/keycloak/keycloak
COPY --from=builder /opt/keycloak/ /opt/keycloak/
WORKDIR /opt/keycloak
ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
CMD ["start"]
```

14
docs/dependencies.md Normal file
View file

@ -0,0 +1,14 @@
# Dependencies
| Name | Version | Quarkus | Wildfly | Download |
| --- | --- | --- | --- | --- |
| io.github.resilience4j:resilience4j-retry | 1.7.1 | X | X | [link](https://repo1.maven.org/maven2/io/github/resilience4j/resilience4j-retry/1.7.1/resilience4j-retry-1.7.1.jar) |
| io.github.resilience4j:resilience4j-core | 1.7.1 | X | X | [link](https://repo1.maven.org/maven2/io/github/resilience4j/resilience4j-core/1.7.1/resilience4j-core-1.7.1.jar) |
| io.vavr:vavr | 0.10.2 | X | X | [link](https://repo1.maven.org/maven2/io/vavr/vavr/0.10.2/vavr-0.10.2.jar) |
| io.vavr:vavr-match | 0.10.2 | X | X | [link](https://repo1.maven.org/maven2/io/vavr/vavr-match/0.10.2/vavr-match-0.10.2.jar) |
| org.slf4j:slf4j-api | 1.7.30 | X | X | [link](https://repo1.maven.org/maven2/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar) |
| com.unboundid.product.scim2:scim2-sdk-client | 2.3.7 | X | X | [link](https://repo1.maven.org/maven2/com/unboundid/product/scim2/scim2-sdk-client/2.3.7/scim2-sdk-client-2.3.7.jar) |
| com.unboundid.product.scim2:scim2-sdk-common | 2.3.7 | X | X | [link](https://repo1.maven.org/maven2/com/unboundid/product/scim2/scim2-sdk-common/2.3.7/scim2-sdk-common-2.3.7.jar) |
| org.wildfly.client:wildfly-client-config | 1.0.1.Final | X | | [link](https://repo1.maven.org/maven2/org/wildfly/client/wildfly-client-config/1.0.1.Final/wildfly-client-config-1.0.1.Final.jar) |
| org.jboss.resteasy:resteasy-client | 4.7.6.Final | X | | [link](https://repo1.maven.org/maven2/org/jboss/resteasy/resteasy-client/4.7.6.Final/resteasy-client-4.7.6.Final.jar) |
| org.jboss.resteasy:resteasy-client-api | 4.7.6.Final | X | | [link](https://repo1.maven.org/maven2/org/jboss/resteasy/resteasy-client-api/4.7.6.Final/resteasy-client-api-4.7.6.Final.jar) |

21
docs/installation.md Normal file
View file

@ -0,0 +1,21 @@
# Installation (advanced)
## 1. Download the jar files
### All-in-one
This [package](<(https://lab.libreho.st/libre.sh/scim/keycloak-scim/-/jobs/artifacts/main/raw/build/libs/keycloak-scim-1.0-SNAPSHOT-all.jar?job=package)>) contains the SCIM provider and it's dependencies. It's intended only for Quarkus distribution.
### Separately
You'll need the SCIM provider's [package](<(https://lab.libreho.st/libre.sh/scim/keycloak-scim/-/jobs/artifacts/main/raw/build/libs/keycloak-scim-1.0-SNAPSHOT.jar?job=package)>) and each of its [dependencies](dependencies.md).
## 2. Install the jar files
### Quarkus
Copy the downloaded file in `/opt/keycloak/providers/`. For production use, build Keycloak before starting it.
### Wildfly (legacy)
Copy the downloaded file in `/opt/jboss/keycloak/standalone/deployments/`.