Skip to content

XTS on 4.17 :: Step by Step

Marco Sappé Griot edited this page Nov 16, 2023 · 3 revisions

How to run XTS tests on 4.17 branch

# Get and build Narayana
git clone https://github.com/jbosstm/narayana -b 4.17
cd narayana
./build.sh clean install -Prelease,community,all -fae -Dmaven.test.skip.exec=true -Didlj-enabled=true -Dhttps.protocols=TLSv1.2

cd ..

# Get and build JBoss EAP
git clone [email protected]:jbossas/jboss-eap.git -b 6.4.x
cd jboss-eap
./build.sh clean install -B  -fae -DskipTests -Dcheckstyle.skip=true -D4.17.45.Final-SNAPSHOT
# ./build.sh clean install -B -fae -DallTests -DskipTests -Prelease -Dversion.org.jboss.jbossts=4.17.45.Final-SNAPSHOT -Dversion.org.jboss.web=7.5.31.Final-redhat-2
# when '-redhat-1' is not available at http://download.lab.bos.redhat.com/brewroot/repos/jb-eap-6.4-rhel-6-build/latest/maven/org/jboss/web/jbossweb/7.5.31.Final-redhat-2/

# Configure app server to run XTS tests
# Check how CI runs it: https://github.com/jbosstm/narayana/blob/4.17.44.Final/scripts/hudson/narayana.sh#L274
export JBOSS_HOME="$PWD/build/target/jboss-as-7.5.23.Final-redhat-SNAPSHOT/"
cd ../narayana/
cp $JBOSS_HOME/docs/examples/configs/standalone-xts.xml $JBOSS_HOME/standalone/configuration/ &&\
sed -i 's/\(<recovery-environment \)/\1 recovery-listener="true" /'\
     $JBOSS_HOME/standalone/configuration/standalone-xts.xml

# configure logging in $JBOSS_HOME/standalone/configuration/standalone-xts.xml
# add/change the logger levels like this
<logger category="com.arjuna">
    <level name="TRACE"/>
</logger>
<logger category="org.jboss.jbossts">
    <level name="TRACE"/>
</logger>
<logger category="org.apache.cxf">
    <level name="TRACE"/>
</logger>

# Run a test
cd txbridge/
mvn clean verify -Parq -Dtest=InboundBasicTests#testCommit

Running the XTS tests on main branch

### XTS + TXBridge arquillian test ---
export JBOSS_HOME=~/jboss/jboss-eap-last
(win pomv:JBOSS_HOME=~/jboss/jboss-eap-last)
cp $JBOSS_HOME/docs/examples/configs/standalone-xts.xml $JBOSS_HOME/standalone/configuration/ &&\
sed -i 's/\(<recovery-environment \)/\1 recovery-listener="true" /' $JBOSS_HOME/standalone/configuration/standalone-xts.xml
sed -e 's#\(<subsystem.*xts.*\)#\1\n            <async-registration enabled="true"/>#' -i $JBOSS_HOME/standalone/configuration/standalone-xts.xml

### TxBridge
cd txbridge
mvn clean install -Parq -Dtest=InboundBasicTests

### XTS
cd XTS/localjunit/crash-recovery-tests
mvn clean install -Parq -Dtest=TestBACrashDuringOnePhaseCommit
cd XTS/localjunit/unit
mvn clean install -Parq -Dtest=RegistrationServiceExceptionTest#testInvalidStateProtocolIdentifierExceptionSync
mvn clean install -Parq -Dtest=RegistrationServiceExceptionTest#testInvalidProtocolProtocolIdentifierExceptionSync (WS-AT/XTS .NET)