<benchmark xmlns="urn:radargun:benchmark:3.0"> <clusters> <cluster> <group name="openshift" size="1" /> <group name="client" size="1"/> </cluster> </clusters> <configurations> <config name="OpenShift Client Server Test"> <setup group="openshift" plugin="openshift" lazy-init="false"> <!-- The openshift plugin will deploy OpenShift template specified by template-file parameter --> <openshift xmlns="urn:radargun:plugins:openshift:3.0" template-file="/opt/radargun-configs/infinispan-server-template.json" master-url="https://api.rh-us-east-1.openshift.com:443" oauth-token="..." namespace="myproject" cleanup="false"> <!-- Parameters for the template. Number of instances specifies the number of Infinispan server nodes. Individual parameters are specific to the given template --> <params> APPLICATION_USER=user APPLICATION_USER_PASSWORD=changeme NUMBER_OF_INSTANCES=2 </params> <!-- Wait for pods to be ready before proceeding with the real test --> <pods-selector> deploymentConfig=infinispan-server-app </pods-selector> <!-- Resolve Pod and Services IP addresses and save then in RadarGun service context. They can be later referenced on other slaves in the way mentioned below. --> <resolve-pod-addresses> infinispan-server-app-0 infinispan-server-app-1 </resolve-pod-addresses> <resolve-service-addresses> infinispan-server-app-hotrod </resolve-service-addresses> </openshift> </setup> <setup group="client" plugin="infinispan91" lazy-init="true"> <hotrod xmlns="urn:radargun:plugins:infinispan91:3.0" cache="default"> <!-- We reference Pods from the other plugin through this convention: ${groupName.slaveIndex.podName} We could possibly reference an OpenShift Service in a similar way. --> <servers>${openshift.0.infinispan-server-app-0}:11222;${openshift.0.infinispan-server-app-1}:11222</servers> </hotrod> </setup> </config> </configurations> ... <rg:scenario xmlns:rg="urn:radargun:benchmark:3.0" xmlns="urn:radargun:stages:core:3.0" xmlns:cache="urn:radargun:stages:cache:3.0" xmlns:l="urn:radargun:stages:legacy:3.0"> <!-- The openshift plugin group has only 1 member but it spins up two Pods in OpenShift so we need to set a specific expect-num-slaves --> <service-start groups="openshift" validate-cluster="true" expect-num-slaves="2"/> <!-- Once the openshift group is ready we start the client group --> <service-start groups="client" validate-cluster="false" /> .... test .... </rg:scenario> </benchmark>