org.keycloak.testsuite performance 4.8.0.Final-SNAPSHOT ../pom.xml 4.0.0 performance-tests Keycloak Performance TestSuite - Tests docker-compose singlenode ${provisioner}/4cpus/${deployment} default oidc-login-logout ${project.basedir}/parameters/provisioning/${provisioning.properties}.properties ${project.basedir}/src/test/resources/dataset/${dataset}.properties ${project.basedir}/parameters/test/${test.properties}.properties ${project.build.directory}/provisioned-system.properties https://downloads.jboss.org/keycloak-qe/${server.version} 1 2.11.7 2.1.7 2.2.1 3.2.2 3.3.0.Final 2.9.6 ${jackson.version} ${jackson.databind.version} keycloak.OIDCLoginAndLogoutSimulation true true org.keycloak keycloak-adapter-core ${server.version} org.keycloak keycloak-adapter-spi ${server.version} org.keycloak keycloak-core ${server.version} org.keycloak keycloak-common ${server.version} com.fasterxml.jackson.core jackson-core com.fasterxml.jackson.core jackson-databind com.fasterxml.jackson.core jackson-annotations ${jackson.annotations.version} org.keycloak keycloak-admin-client ${server.version} commons-configuration commons-configuration 1.10 commons-validator commons-validator 1.6 org.freemarker freemarker junit junit test org.jboss.spec.javax.ws.rs jboss-jaxrs-api_2.1_spec org.jboss.logging jboss-logging org.jboss.resteasy resteasy-jaxrs org.jboss.resteasy resteasy-client org.jboss.resteasy resteasy-jackson2-provider org.apache.httpcomponents httpclient org.scala-lang scala-library ${scala.version} io.gatling.highcharts gatling-charts-highcharts ${gatling.version} true src/test/resources **/*.gz **/*.properties org.apache.maven.plugins maven-enforcer-plugin enforce-teardown-before-clean enforce pre-clean ${provisioned.system.properties.file} true org.codehaus.mojo properties-maven-plugin 1.0.0 read-parameters initialize read-project-properties true ${provisioning.properties.file} ${test.properties.file} read-existing-provisioned-system-properties initialize read-project-properties ${project.build.directory}/provisioned-system.properties true net.alchim31.maven scala-maven-plugin ${scala-maven-plugin.version} add-source add-source compile compile testCompile -target:jvm-1.8 -deprecation -feature -unchecked -language:implicitConversions -language:postfixOps io.gatling gatling-maven-plugin ${gatling-plugin.version} ${project.build.testOutputDirectory} ${gatling.skip.run} true true true -Dproject.build.directory=${project.build.directory} -Dkeycloak.server.uris=${keycloak.frontend.servers} -DauthUser=${keycloak.admin.user} -DauthPassword=${keycloak.admin.password} -Ddataset.properties.file=${dataset.properties.file} -DusersPerSec=${usersPerSec} -DrampUpPeriod=${rampUpPeriod} -DwarmUpPeriod=${warmUpPeriod} -DmeasurementPeriod=${measurementPeriod} -DfilterResults=${filterResults} -DuserThinkTime=${userThinkTime} -DrefreshTokenPeriod=${refreshTokenPeriod} -DrefreshTokenCount=${refreshTokenCount} -DbadLoginAttempts=${badLoginAttempts} ${trustStoreArg} ${trustStorePasswordArg} integration-test integration-test org.codehaus.mojo exec-maven-plugin ${project.basedir} maven-surefire-plugin ${dataset.properties.file} ${surefire.skip.run} cluster cluster crossdc crossdc ssl trustStore -Djavax.net.ssl.trustStore=${trustStore} -Djavax.net.ssl.trustStorePassword=${trustStorePassword} provision ${project.basedir} ${project.build.directory} org.apache.maven.plugins maven-antrun-plugin prepare-provisioning generate-resources run org.codehaus.mojo exec-maven-plugin provision process-test-resources exec ./${provisioner}.sh ${provisioner} ${deployment} provision ${project.version} ${management.user} ${management.user.password} ${keycloak.scale} ${keycloak.dc1.scale} ${keycloak.dc2.scale} ${keycloak.docker.cpusets} ${keycloak.dc1.docker.cpusets} ${keycloak.dc2.docker.cpusets} ${keycloak.docker.memlimit} ${keycloak.jvm.memory} ${keycloak.http.max-connections} ${keycloak.ajp.max-connections} ${keycloak.worker.io-threads} ${keycloak.worker.task-max-threads} ${keycloak.ds.min-pool-size} ${keycloak.ds.max-pool-size} ${keycloak.ds.pool-prefill} ${keycloak.ds.ps-cache-size} ${keycloak.admin.user} ${keycloak.admin.password} ${db.docker.cpusets} ${db.dc1.docker.cpusets} ${db.dc2.docker.cpusets} ${db.docker.memlimit} ${db.max.connections} ${lb.docker.cpusets} ${lb.dc1.docker.cpusets} ${lb.dc2.docker.cpusets} ${lb.docker.memlimit} ${lb.jvm.memory} ${lb.http.max-connections} ${lb.worker.io-threads} ${lb.worker.task-max-threads} ${infinispan.dc1.docker.cpusets} ${infinispan.dc2.docker.cpusets} ${infinispan.docker.memlimit} ${infinispan.jvm.memory} org.codehaus.mojo properties-maven-plugin 1.0.0 read-new-provisioned-system-properties read-project-properties pre-integration-test ${project.build.directory}/provisioned-system.properties generate-data false 5 60 60 10000 10000 100000 2g org.codehaus.mojo exec-maven-plugin load-data pre-integration-test exec java ${project.build.directory} -classpath -Xms64m -Xmx${max.heap} -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Dkeycloak.server.uris=${keycloak.frontend.servers} -DauthUser=${keycloak.admin.user} -DauthPassword=${keycloak.admin.password} -DnumOfWorkers=${numOfWorkers} -Ddataset.properties.file=${dataset.properties.file} ${trustStoreArg} ${trustStorePasswordArg} -Ddelete=${delete} -Dlog.every=${log.every} -Dqueue.timeout=${queue.timeout} -Dshutdown.timeout=${shutdown.timeout} -Dtemplate.cache.size=${template.cache.size} -Drandoms.cache.size=${randoms.cache.size} -Dentity.cache.size=${entity.cache.size} org.keycloak.performance.dataset.DatasetLoader export-dump org.codehaus.mojo exec-maven-plugin export-dump pre-integration-test exec ./${provisioner}.sh ${provisioner} ${deployment} export-dump ${dataset.properties.file} import-dump org.codehaus.mojo exec-maven-plugin import-dump pre-integration-test exec ./${provisioner}.sh ${provisioner} ${deployment} import-dump ${dataset.properties.file} ${db.dump.download.site} test false junit false collect org.codehaus.mojo exec-maven-plugin collect-artifacts post-integration-test exec ./${provisioner}.sh ${provisioner} ${deployment} collect teardown true org.codehaus.mojo exec-maven-plugin teardown post-integration-test exec ./${provisioner}.sh ${provisioner} ${deployment} teardown ${delete.data} keep-data false monitoring org.codehaus.mojo exec-maven-plugin monitoring-on pre-integration-test exec ./${provisioner}.sh ${provisioner} monitoring provision ${monitoring.docker.cpusets} monitoring-off false org.codehaus.mojo exec-maven-plugin monitoring-off post-integration-test exec ./${provisioner}.sh ${provisioner} monitoring teardown ${delete.monitoring.data} delete-monitoring-data true sar false false org.codehaus.mojo exec-maven-plugin start-sar pre-integration-test exec ./sar.sh start stop-sar post-integration-test exec ./sar.sh stop ${gnuplot} ${bzip} gnuplot true