753 lines
48 KiB
XML
753 lines
48 KiB
XML
<!--
|
|
~ 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.
|
|
-->
|
|
|
|
<arquillian xmlns="http://jboss.org/schema/arquillian"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://jboss.org/schema/arquillian
|
|
http://jboss.org/schema/arquillian/arquillian_1_0.xsd">
|
|
|
|
<defaultProtocol type="Servlet 3.0" />
|
|
|
|
<extension qualifier="webdriver">
|
|
<property name="browser">${browser}</property>
|
|
<property name="downloadBinaries">${webdriverDownloadBinaries}</property>
|
|
<property name="githubUsername">${github.username}</property>
|
|
<property name="githubToken">${github.secretToken}</property>
|
|
|
|
<!-- htmlunit -->
|
|
<property name="htmlUnit.version">${htmlUnitBrowserVersion}</property>
|
|
<property name="htmlUnitWebClientOptions">cssEnabled=false;historyPageCacheLimit=1</property>
|
|
|
|
<!-- firefox -->
|
|
<property name="firefoxBinary">${firefox_binary}</property> <!-- we need to use 'firefoxBinary' instead of 'firefox_binary' due to some weird conflict with Appium -->
|
|
<property name="firefoxLogLevel">OFF</property>
|
|
<property name="firefoxLegacy">${firefoxLegacyDriver}</property>
|
|
<property name="firefoxDriverVersion">${firefoxDriverVersion}</property>
|
|
<property name="firefoxUserPreferences">${firefoxUserPreferences}</property>
|
|
<property name="firefoxHeadless">${firefoxHeadless}</property>
|
|
|
|
<!-- chrome -->
|
|
<property name="chromeBinary">${chromeBinary}</property>
|
|
<property name="chromeArguments">${chromeArguments}</property>
|
|
<property name="chromeDriverVersion">${chromeDriverVersion}</property>
|
|
|
|
<!-- internet explorer -->
|
|
<property name="ieDriverArch">${ieDriverArch}</property>
|
|
<property name="ieDriverVersion">${ieDriverVersion}</property>
|
|
|
|
<!-- appium -->
|
|
<property name="appium.platformName">${appium.platformName}</property>
|
|
<property name="appium.deviceName">${appium.deviceName}</property>
|
|
<property name="appium.browserName">${appium.browserName}</property>
|
|
<property name="appium.avd">${appium.avd}</property>
|
|
<property name="appium.automationName">${appium.automationName}</property>
|
|
<property name="appium.noReset">${appium.noReset}</property>
|
|
<property name="appium.fullReset">${appium.fullReset}</property>
|
|
<property name="appium.nativeWebScreenshot">true</property> <!-- there's some issue when taking screenshot using the chromedriver therefore we need to take screenshots of the whole screen (using adb) instead -->
|
|
</extension>
|
|
|
|
<extension qualifier="drone">
|
|
<property name="instantiationTimeoutInSeconds">${droneInstantiationTimeoutInSeconds}</property>
|
|
</extension>
|
|
|
|
<extension qualifier="graphene">
|
|
<property name="waitGuiInterval">5</property>
|
|
<property name="waitAjaxInterval">5</property>
|
|
<property name="waitModelInterval">10</property>
|
|
<property name="waitGuardInterval">5</property>
|
|
</extension>
|
|
|
|
<extension qualifier="webdriver-javascriptbrowser">
|
|
<property name="browser">${js.browser}</property>
|
|
<property name="downloadBinaries">${webdriverDownloadBinaries}</property>
|
|
<property name="githubUsername">${github.username}</property>
|
|
<property name="githubToken">${github.secretToken}</property>
|
|
<property name="ieDriverArch">${ieDriverArch}</property>
|
|
<property name="ieDriverVersion">${ieDriverVersion}</property>
|
|
|
|
<!-- htmlunit -->
|
|
<property name="htmlUnit.version">${htmlUnitBrowserVersion}</property>
|
|
<property name="htmlUnitWebClientOptions">cssEnabled=false;historyPageCacheLimit=1</property>
|
|
|
|
<!-- firefox -->
|
|
<property name="firefoxBinary">${firefox_binary}</property>
|
|
<property name="firefoxLogLevel">OFF</property>
|
|
<property name="firefoxLegacy">${firefoxLegacyDriver}</property>
|
|
<property name="firefoxDriverVersion">${firefoxDriverVersion}</property>
|
|
<property name="firefoxUserPreferences">${firefoxUserPreferences}</property>
|
|
<property name="firefoxHeadless">${firefoxHeadless}</property>
|
|
|
|
<!-- chrome -->
|
|
<property name="chromeBinary">${chromeBinary}</property>
|
|
<property name="chromeArguments">${js.chromeArguments}</property>
|
|
<property name="chromeDriverVersion">${chromeDriverVersion}</property>
|
|
</extension>
|
|
|
|
<extension qualifier="webdriver-phantomjsbrowser">
|
|
<property name="browser">phantomjs</property>
|
|
<property name="downloadBinaries">${webdriverDownloadBinaries}</property>
|
|
</extension>
|
|
|
|
<extension qualifier="graphene-secondbrowser">
|
|
<property name="browser">${browser}</property>
|
|
<property name="firefoxBinary">${firefox_binary}</property>
|
|
</extension>
|
|
|
|
<engine>
|
|
<!-- This allows manual inspection of deployed archives. -->
|
|
<property name="deploymentExportPath">target/deployments</property>
|
|
</engine>
|
|
|
|
<container qualifier="auth-server-undertow" mode="manual" default="true">
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow} && ! ${auth.server.crossdc}</property>
|
|
<property name="bindAddress">0.0.0.0</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-${auth.server}" mode="manual" default="true">
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss} && ! ${auth.server.crossdc}</property>
|
|
<property name="adapterImplClass">${auth.server.adapter.impl.class}</property>
|
|
<property name="jbossHome">${auth.server.home}</property>
|
|
<property name="${auth.server.config.property.name}">${auth.server.config.property.value}</property>
|
|
<!-- This is required for domain mode -->
|
|
<property name="allowConnectingToRunningServer">true</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.port.offset}
|
|
-Djboss.bind.address=0.0.0.0
|
|
-Dauth.server.host=${auth.server.host}
|
|
-Dauth.server.host2=${auth.server.host2}
|
|
-Dauth.server.ssl.required=${auth.server.ssl.required}
|
|
-Dauth.server.http.port=${auth.server.http.port}
|
|
-Dauth.server.https.port=${auth.server.https.port}
|
|
-Dkeycloak.password.blacklists.path=${keycloak.password.blacklists.path}
|
|
${adapter.test.props}
|
|
${auth.server.profile}
|
|
${auth.server.feature}
|
|
${kie.maven.settings}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.jboss.jvm.debug.args}
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="managementPort">${auth.server.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="javaHome">${auth.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<group qualifier="auth-server-${auth.server}-cluster">
|
|
<container qualifier="auth-server-${auth.server}-backend1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.cluster}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${auth.server.backend1.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.backend1.port.offset}
|
|
-Djboss.node.name=node1
|
|
${adapter.test.props}
|
|
${auth.server.profile}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.backend1.jvm.debug.args}
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="outputToConsole">${backends.console.output}</property>
|
|
<property name="managementPort">${auth.server.backend1.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="bindHttpPortOffset">${auth.server.backend1.port.offset}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-${auth.server}-backend2" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.cluster}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${auth.server.backend2.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.backend2.port.offset}
|
|
-Djboss.node.name=node2
|
|
${adapter.test.props}
|
|
${auth.server.profile}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.backend2.jvm.debug.args}
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="outputToConsole">${backends.console.output}</property>
|
|
<property name="managementPort">${auth.server.backend2.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="bindHttpPortOffset">${auth.server.backend2.port.offset}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-legacy" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.legacy}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${auth.server.legacy.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.legacy.port.offset}
|
|
-Djboss.node.name=legacy
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.legacy.jvm.debug.args}
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="outputToConsole">true</property>
|
|
<property name="managementPort">${auth.server.legacy.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="bindHttpPortOffset">${auth.server.legacy.port.offset}</property>
|
|
</configuration>
|
|
</container>
|
|
</group>
|
|
|
|
<!-- Clustering with embedded undertow -->
|
|
<group qualifier="auth-server-undertow-cluster">
|
|
<container qualifier="auth-server-undertow-backend1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.cluster}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">1</property>
|
|
<property name="bindHttpsPortOffset">1</property>
|
|
<property name="route">node1</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.8",
|
|
"keycloak.connectionsInfinispan.nodeName": "node1",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}"
|
|
}
|
|
</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-undertow-backend2" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.cluster}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">2</property>
|
|
<property name="bindHttpsPortOffset">2</property>
|
|
<property name="route">node2</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.8",
|
|
"keycloak.connectionsInfinispan.nodeName": "node2",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}"
|
|
}
|
|
</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-balancer-undertow" mode="suite" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.cluster}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.lb.SimpleUndertowLoadBalancerContainer</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="nodes">node1=http://localhost:8181,node2=http://localhost:8182</property>
|
|
</configuration>
|
|
</container>
|
|
</group>
|
|
|
|
|
|
<!-- Cross DC. Node numbering is [centre #].[node #] -->
|
|
<group qualifier="auth-server-jboss-cross-dc">
|
|
<container qualifier="cache-server-legacy-cross-dc-1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.crossdc} && ! ${cache.server.lifecycle.skip} && ${cache.server.legacy}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${cache.server.home}</property>
|
|
<property name="serverConfig">clustered-1.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${cache.server.1.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.99
|
|
-Djboss.node.name=cache-server-dc-1
|
|
${adapter.test.props}
|
|
${auth.server.profile}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${cache.server.crossdc1.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="outputToConsole">${cache.server.console.output}</property>
|
|
<property name="managementPort">${cache.server.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="javaHome">${cache.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="cache-server-legacy-cross-dc-2" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.crossdc} && ! ${cache.server.lifecycle.skip} && ${cache.server.legacy}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${cache.server.home}</property>
|
|
<property name="setupCleanServerBaseDir">true</property>
|
|
<property name="cleanServerBaseDir">${cache.server.home}/standalone-dc-2</property>
|
|
<property name="serverConfig">clustered-2.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${cache.server.2.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.100
|
|
-Djboss.node.name=cache-server-dc-2
|
|
${adapter.test.props}
|
|
${auth.server.profile}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${cache.server.crossdc2.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="outputToConsole">${cache.server.console.output}</property>
|
|
<property name="managementPort">${cache.server.2.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
<property name="javaHome">${cache.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="cache-server-cross-dc-1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.crossdc} && ! ${cache.server.lifecycle.skip} && ! ${cache.server.legacy}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.InfinispanServerDeployableContainer</property>
|
|
<property name="infinispanHome">${cache.server.home}-dc1</property>
|
|
<property name="serverConfig">infinispan-xsite.xml</property>
|
|
<property name="portOffset">${cache.server.1.port.offset}</property>
|
|
<property name="managementPort">${cache.server.management.port}</property>
|
|
<property name="javaVmArguments">
|
|
-Djgroups.udp.mcast_port=46698
|
|
-Djgroups.tcpping.initial_hosts=127.0.0.1[8810],127.0.0.1[9810]
|
|
</property>
|
|
<property name="javaHome">${cache.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="cache-server-cross-dc-2" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.crossdc} && ! ${cache.server.lifecycle.skip} && ! ${cache.server.legacy}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.InfinispanServerDeployableContainer</property>
|
|
<property name="infinispanHome">${cache.server.home}-dc2</property>
|
|
<property name="serverConfig">infinispan-xsite.xml</property>
|
|
<property name="portOffset">${cache.server.2.port.offset}</property>
|
|
<property name="managementPort">${cache.server.2.management.port}</property>
|
|
<property name="javaVmArguments">
|
|
-Djgroups.udp.mcast_port=47698
|
|
-Djgroups.tcpping.initial_hosts=127.0.0.1[8810],127.0.0.1[9810]
|
|
</property>
|
|
<property name="javaHome">${cache.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-balancer-cross-dc" mode="suite" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.crossdc}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.lb.SimpleUndertowLoadBalancerContainer</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="nodes">auth-server-${node.name}-cross-dc-0_1=http://localhost:8101,auth-server-${node.name}-cross-dc-0_2-manual=http://localhost:8102,auth-server-${node.name}-cross-dc-1_1=http://localhost:8111,auth-server-${node.name}-cross-dc-1_2-manual=http://localhost:8112</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-undertow-cross-dc-0_1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.crossdc}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">-79</property>
|
|
<property name="bindHttpsPortOffset">-79</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="dataCenter">0</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.1",
|
|
"keycloak.connectionsInfinispan.siteName": "dc-0",
|
|
"keycloak.connectionsInfinispan.nodeName": "auth-server-undertow-cross-dc-0_1",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}",
|
|
"keycloak.connectionsInfinispan.remoteStoreServer": "${keycloak.connectionsInfinispan.remoteStoreServer:localhost}",
|
|
"keycloak.connectionsInfinispan.remoteStorePort": "${keycloak.connectionsInfinispan.remoteStorePort:11222}",
|
|
"keycloak.connectionsInfinispan.remoteStoreEnabled": "${keycloak.connectionsInfinispan.remoteStoreEnabled:true}",
|
|
"keycloak.connectionsInfinispan.hotrodProtocolVersion": "${keycloak.connectionsInfinispan.hotrodProtocolVersion}",
|
|
"keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase": "${keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase:true}",
|
|
"keycloak.connectionsJpa.url": "${keycloak.connectionsJpa.url.crossdc:jdbc:h2:mem:test-dc-shared}",
|
|
"keycloak.connectionsJpa.driver": "${keycloak.connectionsJpa.driver.crossdc:org.h2.Driver}",
|
|
"keycloak.connectionsJpa.driverDialect": "${keycloak.connectionsJpa.driverDialect.crossdc:}"
|
|
}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-undertow-cross-dc-0_2-manual" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.crossdc}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">-78</property>
|
|
<property name="bindHttpsPortOffset">-78</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="dataCenter">0</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.1",
|
|
"keycloak.connectionsInfinispan.siteName": "dc-0",
|
|
"keycloak.connectionsInfinispan.nodeName": "auth-server-undertow-cross-dc-0_2-manual",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}",
|
|
"keycloak.connectionsInfinispan.remoteStoreServer": "${keycloak.connectionsInfinispan.remoteStoreServer:localhost}",
|
|
"keycloak.connectionsInfinispan.remoteStorePort": "${keycloak.connectionsInfinispan.remoteStorePort:11222}",
|
|
"keycloak.connectionsInfinispan.remoteStoreEnabled": "${keycloak.connectionsInfinispan.remoteStoreEnabled:true}",
|
|
"keycloak.connectionsInfinispan.hotrodProtocolVersion": "${keycloak.connectionsInfinispan.hotrodProtocolVersion}",
|
|
"keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase": "${keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase:true}",
|
|
"keycloak.connectionsJpa.url": "${keycloak.connectionsJpa.url.crossdc:jdbc:h2:mem:test-dc-shared}",
|
|
"keycloak.connectionsJpa.driver": "${keycloak.connectionsJpa.driver.crossdc:org.h2.Driver}",
|
|
"keycloak.connectionsJpa.driverDialect": "${keycloak.connectionsJpa.driverDialect.crossdc:}"
|
|
}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-undertow-cross-dc-1_1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.crossdc}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">-69</property>
|
|
<property name="bindHttpsPortOffset">-69</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="dataCenter">1</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.2",
|
|
"keycloak.connectionsInfinispan.siteName": "dc-1",
|
|
"keycloak.connectionsInfinispan.nodeName": "auth-server-undertow-cross-dc-1_1",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}",
|
|
"keycloak.connectionsInfinispan.remoteStoreServer": "${keycloak.connectionsInfinispan.remoteStoreServer:localhost}",
|
|
"keycloak.connectionsInfinispan.remoteStorePort": "${keycloak.connectionsInfinispan.remoteStorePort.2:11222}",
|
|
"keycloak.connectionsInfinispan.remoteStoreEnabled": "${keycloak.connectionsInfinispan.remoteStoreEnabled:true}",
|
|
"keycloak.connectionsInfinispan.hotrodProtocolVersion": "${keycloak.connectionsInfinispan.hotrodProtocolVersion}",
|
|
"keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase": "${keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase:true}",
|
|
"keycloak.connectionsJpa.url": "${keycloak.connectionsJpa.url.crossdc:jdbc:h2:mem:test-dc-shared}",
|
|
"keycloak.connectionsJpa.driver": "${keycloak.connectionsJpa.driver.crossdc:org.h2.Driver}",
|
|
"keycloak.connectionsJpa.driverDialect": "${keycloak.connectionsJpa.driverDialect.crossdc:}"
|
|
}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-undertow-cross-dc-1_2-manual" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.undertow.crossdc}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.undertow.KeycloakOnUndertow</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">-68</property>
|
|
<property name="bindHttpsPortOffset">-68</property>
|
|
<property name="remoteMode">${undertow.remote}</property>
|
|
<property name="dataCenter">1</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.2",
|
|
"keycloak.connectionsInfinispan.siteName": "dc-1",
|
|
"keycloak.connectionsInfinispan.nodeName": "auth-server-undertow-cross-dc-1_2-manual",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}",
|
|
"keycloak.connectionsInfinispan.remoteStoreServer": "${keycloak.connectionsInfinispan.remoteStoreServer:localhost}",
|
|
"keycloak.connectionsInfinispan.remoteStorePort": "${keycloak.connectionsInfinispan.remoteStorePort.2:11222}",
|
|
"keycloak.connectionsInfinispan.remoteStoreEnabled": "${keycloak.connectionsInfinispan.remoteStoreEnabled:true}",
|
|
"keycloak.connectionsInfinispan.hotrodProtocolVersion": "${keycloak.connectionsInfinispan.hotrodProtocolVersion}",
|
|
"keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase": "${keycloak.userSessions.infinispan.preloadOfflineSessionsFromDatabase:true}",
|
|
"keycloak.connectionsJpa.url": "${keycloak.connectionsJpa.url.crossdc:jdbc:h2:mem:test-dc-shared}",
|
|
"keycloak.connectionsJpa.driver": "${keycloak.connectionsJpa.driver.crossdc:org.h2.Driver}",
|
|
"keycloak.connectionsJpa.driverDialect": "${keycloak.connectionsJpa.driverDialect.crossdc:}"
|
|
}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-jboss-cross-dc-0_1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.crossdc}</property>
|
|
<property name="adapterImplClass">${auth.server.adapter.impl.class}</property>
|
|
<property name="jbossHome">${auth.server.crossdc01.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.crossdc01.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.1
|
|
-Dremote.cache.port=12232
|
|
-Djboss.site.name=dc0
|
|
-Djboss.node.name=auth-server-${node.name}-cross-dc-0_1
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dkeycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled=${keycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled}
|
|
-Dkeycloak.connectionsInfinispan.hotrodProtocolVersion=${keycloak.connectionsInfinispan.hotrodProtocolVersion}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.crossdc01.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="managementPort">${auth.server.crossdc01.management.port}</property>
|
|
<property name="bindHttpPortOffset">-79</property>
|
|
<property name="bindHttpsPortOffset">-79</property>
|
|
<property name="dataCenter">0</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-jboss-cross-dc-0_2-manual" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.crossdc}</property>
|
|
<property name="adapterImplClass">${auth.server.adapter.impl.class}</property>
|
|
<property name="jbossHome">${auth.server.crossdc02.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.crossdc02.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.1
|
|
-Dremote.cache.port=12232
|
|
-Djboss.site.name=dc0
|
|
-Djboss.node.name=auth-server-${node.name}-cross-dc-0_2-manual
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dkeycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled=${keycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled}
|
|
-Dkeycloak.connectionsInfinispan.hotrodProtocolVersion=${keycloak.connectionsInfinispan.hotrodProtocolVersion}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.crossdc02.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="managementPort">${auth.server.crossdc02.management.port}</property>
|
|
<property name="bindHttpPortOffset">-78</property>
|
|
<property name="bindHttpsPortOffset">-78</property>
|
|
<property name="dataCenter">0</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-jboss-cross-dc-1_1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.crossdc}</property>
|
|
<property name="adapterImplClass">${auth.server.adapter.impl.class}</property>
|
|
<property name="jbossHome">${auth.server.crossdc11.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.crossdc11.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.2
|
|
-Dremote.cache.port=13232
|
|
-Djboss.site.name=dc1
|
|
-Djboss.node.name=auth-server-${node.name}-cross-dc-1_1
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dkeycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled=${keycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled}
|
|
-Dkeycloak.connectionsInfinispan.hotrodProtocolVersion=${keycloak.connectionsInfinispan.hotrodProtocolVersion}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.crossdc11.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="managementPort">${auth.server.crossdc11.management.port}</property>
|
|
<property name="bindHttpPortOffset">-69</property>
|
|
<property name="bindHttpsPortOffset">-69</property>
|
|
<property name="dataCenter">1</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-jboss-cross-dc-1_2-manual" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.crossdc}</property>
|
|
<property name="adapterImplClass">${auth.server.adapter.impl.class}</property>
|
|
<property name="jbossHome">${auth.server.crossdc12.home}</property>
|
|
<property name="serverConfig">standalone-ha.xml</property>
|
|
<property name="jbossArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.crossdc12.port.offset}
|
|
-Djboss.default.multicast.address=234.56.78.2
|
|
-Dremote.cache.port=13232
|
|
-Djboss.site.name=dc1
|
|
-Djboss.node.name=auth-server-${node.name}-cross-dc-1_2-manual
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dkeycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled=${keycloak.connectionsInfinispan.default.remoteStoreSecurityEnabled}
|
|
-Dkeycloak.connectionsInfinispan.hotrodProtocolVersion=${keycloak.connectionsInfinispan.hotrodProtocolVersion}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="javaVmArguments">
|
|
${auth.server.memory.settings}
|
|
-Djava.net.preferIPv4Stack=true
|
|
${auth.server.crossdc12.jvm.debug.args}
|
|
${auth.server.jvm.args.extra}
|
|
</property>
|
|
<property name="managementPort">${auth.server.crossdc12.management.port}</property>
|
|
<property name="bindHttpPortOffset">-68</property>
|
|
<property name="bindHttpsPortOffset">-68</property>
|
|
<property name="dataCenter">1</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
</configuration>
|
|
</container>
|
|
</group>
|
|
|
|
<container qualifier="hot-rod-store" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${hotrod.store.enabled}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.InfinispanServerDeployableContainer</property>
|
|
<property name="infinispanHome">${cache.server.home}-hot-rod-store</property>
|
|
<!-- <property name="serverConfig">infinisan-xsite.xml</property>-->
|
|
<property name="portOffset">${hotrod.store.port.offset}</property>
|
|
<property name="managementPort">${hotrod.store.management.port}</property>
|
|
<property name="javaHome">${cache.server.java.home}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
|
|
<container qualifier="auth-server-remote" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.remote}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.remote.RemoteDeployableContainer</property>
|
|
|
|
<property name="managementAddress">${auth.server.management.host}</property>
|
|
<property name="managementPort">${auth.server.management.port}</property>
|
|
<property name="username">admin</property>
|
|
<property name="password">admin</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<container qualifier="auth-server-quarkus" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.quarkus}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.KeycloakQuarkusServerDeployableContainer</property>
|
|
<property name="bindHttpPortOffset">${auth.server.port.offset}</property>
|
|
<property name="javaOpts">-Xms512m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=512m -Djava.net.preferIPv4Stack=true</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
<!-- Clustering with Quarkus -->
|
|
<group qualifier="auth-server-quarkus-cluster">
|
|
<container qualifier="auth-server-quarkus-backend1" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.quarkus.cluster}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.KeycloakQuarkusServerDeployableContainer</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">1</property>
|
|
<property name="bindHttpsPortOffset">1</property>
|
|
<property name="route">node1</property>
|
|
<property name="remoteMode">${quarkus.remote}</property>
|
|
<property name="profile">ha</property>
|
|
<property name="debugPort">5005</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.8",
|
|
"keycloak.connectionsInfinispan.nodeName": "node1",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}"
|
|
}
|
|
</property>
|
|
<property name="javaOpts">-Xms512m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=512m -Djava.net.preferIPv4Stack=true</property>
|
|
<property name="outputToConsole">true</property>
|
|
</configuration>
|
|
</container>
|
|
<container qualifier="auth-server-quarkus-backend2" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.quarkus.cluster}</property>
|
|
<property name="adapterImplClass">org.keycloak.testsuite.arquillian.containers.KeycloakQuarkusServerDeployableContainer</property>
|
|
<property name="bindAddress">localhost</property>
|
|
<property name="bindHttpPort">${auth.server.http.port}</property>
|
|
<property name="bindHttpsPort">${auth.server.https.port}</property>
|
|
<property name="bindHttpPortOffset">2</property>
|
|
<property name="bindHttpsPortOffset">2</property>
|
|
<property name="route">node2</property>
|
|
<property name="remoteMode">${quarkus.remote}</property>
|
|
<property name="profile">ha</property>
|
|
<property name="debugPort">5006</property>
|
|
<property name="keycloakConfigPropertyOverrides">{
|
|
"keycloak.connectionsInfinispan.jgroupsUdpMcastAddr": "234.56.78.8",
|
|
"keycloak.connectionsInfinispan.nodeName": "node2",
|
|
"keycloak.connectionsInfinispan.clustered": "${keycloak.connectionsInfinispan.clustered:true}"
|
|
}
|
|
</property>
|
|
<property name="javaOpts">-Xms512m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=512m -Djava.net.preferIPv4Stack=true</property>
|
|
<property name="outputToConsole">true</property>
|
|
</configuration>
|
|
</container>
|
|
</group>
|
|
|
|
<!-- PREVIOUS VERSION OF KEYCLOAK FOR MIGRATION TESTS -->
|
|
|
|
<container qualifier="auth-server-jboss-migration" mode="manual" >
|
|
<configuration>
|
|
<property name="enabled">${auth.server.jboss.migration}</property>
|
|
<property name="adapterImplClass">org.jboss.as.arquillian.container.managed.ManagedDeployableContainer</property>
|
|
<property name="jbossHome">${keycloak.migration.home}</property>
|
|
<property name="javaVmArguments">
|
|
-Djboss.as.management.blocking.timeout=${auth.server.jboss.startup.timeout}
|
|
-Djboss.socket.binding.port-offset=${auth.server.port.offset}
|
|
${migration.import.props.previous}
|
|
${auth.server.memory.settings}
|
|
-Dauth.server.truststore=${auth.server.truststore}
|
|
-Dauth.server.truststore.password=${auth.server.truststore.password}
|
|
-Dauth.server.db.host=${auth.server.db.host}
|
|
</property>
|
|
<property name="managementPort">${auth.server.management.port}</property>
|
|
<property name="startupTimeoutInSeconds">${auth.server.jboss.startup.timeout}</property>
|
|
</configuration>
|
|
</container>
|
|
|
|
</arquillian>
|