Run Arquillian tests during Openshift deployment
lkrzyzanek Apr 30, 2014 4:28 AMHi there,
I'm trying to run Arquillian test as a part of Openshift deployment.
I read article http://arquillian.org/guides/testing_in_the_cloud/ and other posts like Testing persistence with Arquillian on OpenShift | Planet JBoss Community but they cover running Arquilliann test separately on Openshift which is different use case.
I guess it should be doable because I know where is JBOSS_HOME, what is JMX IP address and port (via Openshift's system variables).
arquillian.xml is:
<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"> <!--Uncomment to have test archives exported to the file system for inspection --> <engine> <property name="deploymentExportPath">target/</property> </engine> <container qualifier="jbossas-managed-7" default="true"> <configuration> <property name="jbossHome">${arquillian.jboss.home}</property> <property name="managementAddress">${arquillian.jboss.managementAddress}</property> <property name="managementPort">${arquillian.jboss.managementPort}</property> <property name="javaVmArguments">-Xms1024m -Xmx1024m -XX:MaxPermSize=512m</property> <property name="startupTimeoutInSeconds">30</property> <property name="outputToConsole">true</property> </configuration> </container> </arquillian>
and maven replaces those values via filtering see here: pom.xml (branch iss12).
When I push git repo to Openshift Arquillian is able to start EAP but waits 30 sec and ends with
org.jboss.arquillian.container.spi.client.container.LifecycleException: Could not start container at org.jboss.as.arquillian.container.managed.ManagedDeployableContainer.startInternal(ManagedDeployableContainer.java:176) at org.jboss.as.arquillian.container.CommonDeployableContainer.start(CommonDeployableContainer.java:110) at org.jboss.arquillian.container.impl.ContainerImpl.start(ContainerImpl.java:199) at org.jboss.arquillian.container.impl.client.container.ContainerLifecycleController$8.perform(ContainerLifecycleController.java:163) at org.jboss.arquillian.container.impl.client.container.ContainerLifecycleController$8.perform(ContainerLifecycleController.java:157) at org.jboss.arquillian.container.impl.client.container.ContainerLifecycleController.forContainer(ContainerLifecycleController.java:255) at org.jboss.arquillian.container.impl.client.container.ContainerLifecycleController.startContainer(ContainerLifecycleController.java:156) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94) at org.jboss.arquillian.core.impl.EventContextImpl.invokeObservers(EventContextImpl.java:99) at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:81) at org.jboss.arquillian.container.impl.client.ContainerDeploymentContextHandler.createContainerContext(ContainerDeploymentContextHandler.java:57) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:606) at org.jboss.arquillian.core.impl.ObserverImpl.invoke(ObserverImpl.java:94) at org.jboss.arquillian.core.impl.EventContextImpl.proceed(EventContextImpl.java:88) at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:135) at org.jboss.arquillian.core.impl.ManagerImpl.fire(ManagerImpl.java:115) at org.jboss.arquillian.core.impl.EventImpl.fire(EventImpl.java:67) at org.jboss.arquillian.container.impl.client.container.ContainerLifecycleController$2.perform(ContainerLifecycleController.java:77)
It seems to me that Arquillian has problem to connect to started AS.
We uses Openshift's default standalone.xml see here: searchisko/.openshift/config/standalone.xml
Any idea where is the problem?
Thanks,
Libor