keycloak-uncached
Changes
testsuite/integration-arquillian/tests/pom.xml 127(+94 -33)
Details
diff --git a/testsuite/integration-arquillian/HOW-TO-RUN.md b/testsuite/integration-arquillian/HOW-TO-RUN.md
index 4557910..02cb7d5 100644
--- a/testsuite/integration-arquillian/HOW-TO-RUN.md
+++ b/testsuite/integration-arquillian/HOW-TO-RUN.md
@@ -431,12 +431,20 @@ The cross DC requires setting a profile specifying used cache server (currently
#### Run Cross-DC Tests from Maven
-First compile the Infinispan test server via the following command:
+First compile the Infinispan/JDG test server via the following command:
`mvn -Pcache-server-infinispan -f testsuite/integration-arquillian -DskipTests clean install`
+or
+
+ `mvn -Pcache-server-jdg -f testsuite/integration-arquillian -DskipTests clean install`
+
Then you can run the tests using the following command (adjust the test specification according to your needs):
`mvn -Pcache-server-infinispan -Dtest=*.crossdc.* -pl testsuite/integration-arquillian/tests/base test`
+or
+
+ `mvn -Pcache-server-jdg -Dtest=*.crossdc.* -pl testsuite/integration-arquillian/tests/base test`
+
_Someone using IntelliJ IDEA, please describe steps for that IDE_
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml
new file mode 100644
index 0000000..8fa5902
--- /dev/null
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/pom.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!--
+~ Copyright 2016 Red Hat, Inc. and/or its affiliates
+~ and other contributors as indicated by the @author tags.
+~
+~ Licensed under the Apache License, Version 2.0 (the "License");
+~ you may not use this file except in compliance with the License.
+~ You may obtain a copy of the License at
+~
+~ http://www.apache.org/licenses/LICENSE-2.0
+~
+~ Unless required by applicable law or agreed to in writing, software
+~ distributed under the License is distributed on an "AS IS" BASIS,
+~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+~ See the License for the specific language governing permissions and
+~ limitations under the License.
+-->
+
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <parent>
+ <groupId>org.keycloak.testsuite</groupId>
+ <artifactId>integration-arquillian-servers-cache-server-jboss</artifactId>
+ <version>3.2.0.CR1-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+
+ <artifactId>integration-arquillian-servers-cache-server-jdg</artifactId>
+ <packaging>pom</packaging>
+ <name>Cache Server - JDG</name>
+
+ <properties>
+ <cache.server>jdg</cache.server>
+ <cache.server.container>cache-server-${cache.server}</cache.server.container>
+ <cache.server.home>${containers.home}/${cache.server.container}</cache.server.home>
+
+ <cache.server.jboss.groupId>org.infinispan.server</cache.server.jboss.groupId>
+ <cache.server.jboss.artifactId>infinispan-server</cache.server.jboss.artifactId>
+ <cache.server.jboss.version>${jdg.version}</cache.server.jboss.version>
+ <cache.server.jboss.unpacked.folder.name>${cache.server.jboss.artifactId}-${jdg.version}</cache.server.jboss.unpacked.folder.name>
+
+ <cache.server.worker.io-threads>${cache.default.worker.io-threads}</cache.server.worker.io-threads>
+ <cache.server.worker.task-max-threads>${cache.default.worker.task-max-threads}</cache.server.worker.task-max-threads>
+ </properties>
+
+</project>
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/src/.dont-delete b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/src/.dont-delete
new file mode 100644
index 0000000..c969aca
--- /dev/null
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/jdg/src/.dont-delete
@@ -0,0 +1 @@
+This file is to mark this Maven project as a valid option for building cache server artifact
diff --git a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
index 4bb1555..8c7f830 100644
--- a/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
+++ b/testsuite/integration-arquillian/servers/cache-server/jboss/pom.xml
@@ -205,6 +205,12 @@
<module>infinispan</module>
</modules>
</profile>
+ <profile>
+ <id>cache-server-jdg</id>
+ <modules>
+ <module>jdg</module>
+ </modules>
+ </profile>
</profiles>
</project>
diff --git a/testsuite/integration-arquillian/servers/pom.xml b/testsuite/integration-arquillian/servers/pom.xml
index e0e1078..0b7e899 100644
--- a/testsuite/integration-arquillian/servers/pom.xml
+++ b/testsuite/integration-arquillian/servers/pom.xml
@@ -48,6 +48,7 @@
<!-- cache server versions -->
<infinispan.version>9.0.1.Final</infinispan.version>
+ <jdg.version>8.4.0.Final-redhat-2</jdg.version><!-- JDG 7.1.0 -->
<jboss.default.worker.io-threads>16</jboss.default.worker.io-threads>
<jboss.default.worker.task-max-threads>128</jboss.default.worker.task-max-threads>
diff --git a/testsuite/integration-arquillian/tests/base/pom.xml b/testsuite/integration-arquillian/tests/base/pom.xml
index 19b3862..caa76aa 100644
--- a/testsuite/integration-arquillian/tests/base/pom.xml
+++ b/testsuite/integration-arquillian/tests/base/pom.xml
@@ -126,7 +126,7 @@
<exclude>${exclude.account}</exclude>
<exclude>${exclude.client}</exclude>
<exclude>${exclude.cluster}</exclude>
- <exclude>${exclude.crossdc</exclude>
+ <exclude>${exclude.crossdc}</exclude>
<exclude>${exclude.undertow.adapter}</exclude>
<exclude>${exclude.x509}</exclude>
</excludes>
testsuite/integration-arquillian/tests/pom.xml 127(+94 -33)
diff --git a/testsuite/integration-arquillian/tests/pom.xml b/testsuite/integration-arquillian/tests/pom.xml
index c14e7a7..5ff3e02 100755
--- a/testsuite/integration-arquillian/tests/pom.xml
+++ b/testsuite/integration-arquillian/tests/pom.xml
@@ -41,8 +41,9 @@
<properties>
<auth.server>undertow</auth.server>
<auth.server.undertow>true</auth.server.undertow>
- <auth.server.undertow.crossdc>true</auth.server.undertow.crossdc>
-
+ <auth.server.undertow.crossdc>false</auth.server.undertow.crossdc>
+ <auth.server.crossdc>false</auth.server.crossdc>
+
<auth.server.container>auth-server-${auth.server}</auth.server.container>
<auth.server.home>${containers.home}/${auth.server.container}</auth.server.home>
<auth.server.config.dir>${auth.server.home}</auth.server.config.dir>
@@ -67,7 +68,7 @@
<auth.server.profile/>
<auth.server.feature/>
- <cache.server>infinispan</cache.server>
+ <cache.server>undefined</cache.server>
<cache.server.container>cache-server-${cache.server}</cache.server.container>
<cache.server.home>${containers.home}/${cache.server.container}</cache.server.home>
<cache.server.port.offset>1010</cache.server.port.offset>
@@ -240,6 +241,22 @@
<client.key.passphrase>${client.key.passphrase}</client.key.passphrase>
<auth.server.ocsp.responder.enabled>${auth.server.ocsp.responder.enabled}</auth.server.ocsp.responder.enabled>
+
+ <!--cache server properties-->
+ <auth.server.crossdc>${auth.server.crossdc}</auth.server.crossdc>
+ <auth.server.undertow.crossdc>${auth.server.undertow.crossdc}</auth.server.undertow.crossdc>
+
+ <cache.server>${cache.server}</cache.server>
+ <cache.server.port.offset>${cache.server.port.offset}</cache.server.port.offset>
+ <cache.server.container>${cache.server.container}</cache.server.container>
+ <cache.server.home>${cache.server.home}</cache.server.home>
+ <cache.server.console.output>${cache.server.console.output}</cache.server.console.output>
+ <cache.server.management.port>${cache.server.management.port}</cache.server.management.port>
+
+ <keycloak.connectionsInfinispan.remoteStorePort>${keycloak.connectionsInfinispan.remoteStorePort}</keycloak.connectionsInfinispan.remoteStorePort>
+ <keycloak.connectionsInfinispan.remoteStoreServer>${keycloak.connectionsInfinispan.remoteStoreServer}</keycloak.connectionsInfinispan.remoteStoreServer>
+
+ <keycloak.connectionsJpa.url.crossdc>${keycloak.connectionsJpa.url.crossdc}</keycloak.connectionsJpa.url.crossdc>
</systemPropertyVariables>
<properties>
<property>
@@ -336,6 +353,8 @@
<id>cache-server-infinispan</id>
<properties>
<cache.server>infinispan</cache.server>
+ <auth.server.undertow.crossdc>true</auth.server.undertow.crossdc>
+ <auth.server.crossdc>true</auth.server.crossdc>
<cache.server.jboss>true</cache.server.jboss>
<cache.server.config.dir>${cache.server.home}/standalone/configuration</cache.server.config.dir>
</properties>
@@ -344,17 +363,6 @@
<groupId>org.wildfly.arquillian</groupId>
<artifactId>wildfly-arquillian-container-managed</artifactId>
</dependency>
-<!-- <dependency>
- <groupId>org.infinispan.arquillian.container</groupId>
- <artifactId>infinispan-arquillian-impl</artifactId>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.infinispan</groupId>
- <artifactId>infinispan-core</artifactId>
- </exclusion>
- </exclusions>
- </dependency>-->
</dependencies>
<build>
@@ -410,26 +418,79 @@
</execution>
</executions>
</plugin>
+ </plugins>
+ </pluginManagement>
+ </build>
+ </profile>
+
+ <profile>
+ <id>cache-server-jdg</id>
+ <properties>
+ <cache.server>jdg</cache.server>
+ <auth.server.undertow.crossdc>true</auth.server.undertow.crossdc>
+ <auth.server.crossdc>true</auth.server.crossdc>
+ <cache.server.jboss>true</cache.server.jboss>
+ <cache.server.config.dir>${cache.server.home}/standalone/configuration</cache.server.config.dir>
+ </properties>
+ <dependencies>
+ <dependency>
+ <groupId>org.wildfly.arquillian</groupId>
+ <artifactId>wildfly-arquillian-container-managed</artifactId>
+ </dependency>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-enforcer-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>enforce</goal>
+ </goals>
+ <configuration>
+ <rules>
+ <!--requireActiveProfile 'auth-server-wildfly/eap' doesn't work unless the profiles are defined in all submodule poms
+ using requireProperty instead-->
+ <requireProperty>
+ <property>cache.server</property>
+ <regex>(infinispan)|(jdg)</regex>
+ <regexMessage>Profile "cache-server-jdg" requires activation of profile "cache-server-infinispan" or "cache-server-jdg".</regexMessage>
+ </requireProperty>
+ </rules>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ </plugin>
+ </plugins>
+ <pluginManagement>
+ <plugins>
<plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <systemPropertyVariables>
- <auth.server.crossdc>true</auth.server.crossdc>
- <auth.server.undertow.crossdc>${auth.server.undertow.crossdc}</auth.server.undertow.crossdc>
-
- <cache.server>${cache.server}</cache.server>
- <cache.server.port.offset>${cache.server.port.offset}</cache.server.port.offset>
- <cache.server.container>${cache.server.container}</cache.server.container>
- <cache.server.home>${cache.server.home}</cache.server.home>
- <cache.server.console.output>${cache.server.console.output}</cache.server.console.output>
- <cache.server.management.port>${cache.server.management.port}</cache.server.management.port>
-
- <keycloak.connectionsInfinispan.remoteStorePort>${keycloak.connectionsInfinispan.remoteStorePort}</keycloak.connectionsInfinispan.remoteStorePort>
- <keycloak.connectionsInfinispan.remoteStoreServer>${keycloak.connectionsInfinispan.remoteStoreServer}</keycloak.connectionsInfinispan.remoteStoreServer>
-
- <keycloak.connectionsJpa.url.crossdc>${keycloak.connectionsJpa.url.crossdc}</keycloak.connectionsJpa.url.crossdc>
- </systemPropertyVariables>
- </configuration>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>unpack-cache-server-jdg</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>unpack</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>org.keycloak.testsuite</groupId>
+ <artifactId>integration-arquillian-servers-cache-server-jdg</artifactId>
+ <version>${project.version}</version>
+ <type>zip</type>
+ <outputDirectory>${containers.home}</outputDirectory>
+ </artifactItem>
+ </artifactItems>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ </configuration>
+ </execution>
+ </executions>
</plugin>
</plugins>
</pluginManagement>