blob: 327bd88a64e42b5f447ecfea31a0bf5453dc42d2 [file] [log] [blame]
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache.activemq.tests</groupId>
<artifactId>artemis-tests-pom</artifactId>
<version>2.28.0</version>
</parent>
<artifactId>smoke-tests</artifactId>
<packaging>jar</packaging>
<name>Smoke Tests</name>
<properties>
<activemq.basedir>${project.basedir}/../../</activemq.basedir>
<sts-surefire-extra-args />
<artemis-distribuiton-lib-dir>-Ddistribution.lib="${activemq.basedir}/artemis-distribution/target/apache-artemis-${project.version}-bin/apache-artemis-${project.version}/lib"</artemis-distribuiton-lib-dir>
</properties>
<dependencies>
<dependency>
<!-- this dependency is here to make sure this module is only executed
after the distribution is created.
Otherwise it will get here before the build eventually.
e.g if you use mvn install -T 20 -->
<groupId>org.apache.activemq</groupId>
<artifactId>apache-artemis</artifactId>
<version>${project.version}</version>
<scope>compile</scope>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-jms-client</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-commons</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-cli</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-jms-client</artifactId>
</dependency>
<!-- logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.fusesource.mqtt-client</groupId>
<artifactId>mqtt-client</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.paho</groupId>
<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
</dependency>
<dependency>
<groupId>jakarta.jms</groupId>
<artifactId>jakarta.jms-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.management.j2ee</groupId>
<artifactId>jakarta.management.j2ee-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>activemq-client</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jms_1.1_spec</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.141.59</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>selenium</artifactId>
</dependency>
<!-- quorum tests -->
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-client</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-test</artifactId>
<version>${curator.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper-jute</artifactId>
<scope>test</scope>
</dependency>
<!-- The johnzon-core and json-api contents are repackaged in -commons,
However maven can still need them during tests, which run against
the original -commons classes when built+run in the same reactor,
and not the jar containing the shaded bits. -->
<dependency>
<groupId>org.apache.johnzon</groupId>
<artifactId>johnzon-core</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-api</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
</dependency>
<dependency>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-unit-test-support</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.activemq.tests</groupId>
<artifactId>artemis-test-support</artifactId>
<version>${project.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
</resource>
<resource>
<directory>src/main/filtered-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-security-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/test-classes</outputDirectory>
<resources>
<resource>
<directory>../security-resources</directory>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>copy-reference-for-upgrade-backup-checks</id>
<phase>process-test-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/reference-for-backup-check</outputDirectory>
<resources>
<resource>
<directory>src/main/filtered-resources</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgs>
<arg>--add-exports=java.rmi/sun.rmi.server=ALL-UNNAMED</arg>
<arg>--add-exports=java.rmi/sun.rmi.transport=ALL-UNNAMED</arg>
</compilerArgs>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.activemq</groupId>
<artifactId>artemis-maven-plugin</artifactId>
<executions>
<execution>
<phase>test-compile</phase>
<id>create-create-console</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>admin</user>
<password>admin</password>
<allowAnonymous>false</allowAnonymous>
<noWeb>false</noWeb>
<instance>${basedir}/target/console</instance>
<configuration>${basedir}/target/classes/servers/console</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-create-console-mutual-ssl</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>admin</user>
<password>admin</password>
<allowAnonymous>false</allowAnonymous>
<noWeb>false</noWeb>
<instance>${basedir}/target/console-mutual-ssl</instance>
<configuration>${basedir}/target/classes/servers/console-mutual-ssl</configuration>
<args>
<arg>--http-host</arg>
<arg>localhost</arg>
<arg>--http-port</arg>
<arg>8443</arg>
<arg>--ssl-key</arg>
<arg>../../test-classes/server-keystore.p12</arg>
<arg>--ssl-key-password</arg>
<arg>securepass</arg>
<arg>--use-client-auth</arg>
<arg>--ssl-trust</arg>
<arg>../../test-classes/client-ca-truststore.p12</arg>
<arg>--ssl-trust-password</arg>
<arg>securepass</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create0</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<javaOptions>-Djava.net.preferIPv4Stack=true</javaOptions>
<instance>${basedir}/target/replicated-static0</instance>
<configuration>${basedir}/target/classes/servers/replicated-static0</configuration>
<args>
<arg>--java-options</arg>
<arg>-ea</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create1</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<javaOptions>-Djava.net.preferIPv4Stack=true</javaOptions>
<instance>${basedir}/target/replicated-static1</instance>
<configuration>${basedir}/target/classes/servers/replicated-static1</configuration>
<args>
<arg>--java-options</arg>
<arg>-ea</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-expire</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/expire</configuration>
<javaOptions>-Dartemis.debug.paging.interval=1</javaOptions>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/expire</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-mqtt</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/mqtt</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/mqtt</instance>
<configuration>${basedir}/target/classes/servers/mqtt</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-standard</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/standard</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/dnsswitch</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch2</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/dnsswitch2</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch-main</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch-replicated-main</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/dnsswitch-replicated-main</instance>
<args>
<arg>--java-options</arg>
<!-- notice these files are only available on dnsswitch, so this is not a copy and paste error
where I really meant dnsswitch here -->
<arg>-Djdk.net.hosts.file=${basedir}/target/dnsswitch/etc/hosts.conf
-Djava.security.properties=${basedir}/target/dnsswitch/etc/zerocache.security
-Djava.rmi.server.hostname=localhost
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch-main-withping</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch-replicated-main-withping</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/dnsswitch-replicated-main-withping</instance>
<args>
<arg>--java-options</arg>
<!-- notice these files are only available on dnsswitch, so this is not a copy and paste error
where I really meant dnsswitch here -->
<arg>-Djdk.net.hosts.file=${basedir}/target/dnsswitch/etc/hosts.conf
-Djava.security.properties=${basedir}/target/dnsswitch/etc/zerocache.security
-Djava.rmi.server.hostname=localhost
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch-backup-withping</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch-replicated-backup-withping
</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/dnsswitch-replicated-backup-withping</instance>
<args>
<arg>--java-options</arg>
<!-- notice these files are only available on dnsswitch, so this is not a copy and paste error
where I really meant dnsswitch here -->
<arg>-Djdk.net.hosts.file=${basedir}/target/dnsswitch/etc/hosts.conf
-Djava.security.properties=${basedir}/target/dnsswitch/etc/zerocache.security
-Djava.rmi.server.hostname=localhost
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch-main-noretrydns</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch-replicated-main-noretrydns
</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/dnsswitch-replicated-main-noretrydns</instance>
<args>
<arg>--java-options</arg>
<!-- notice these files are only available on dnsswitch, so this is not a copy and paste error
where I really meant dnsswitch here -->
<arg>-Djdk.net.hosts.file=${basedir}/target/dnsswitch/etc/hosts.conf
-Djava.security.properties=${basedir}/target/dnsswitch/etc/noretrydns.security
-Djava.rmi.server.hostname=localhost
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-dnsswitch-backup</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/dnsswitch-replicated-backup</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/dnsswitch-replicated-backup</instance>
<args>
<arg>--java-options</arg>
<!-- notice these files are only available on dnsswitch, so this is not a copy and paste error
where I really meant dnsswitch here -->
<arg>-Djdk.net.hosts.file=${basedir}/target/dnsswitch/etc/hosts.conf
-Djava.security.properties=${basedir}/target/dnsswitch/etc/zerocache.security
-Djava.rmi.server.hostname=localhost
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-maxConsumers</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/maxConsumers</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/maxConsumers</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createJMX</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/jmx</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/jmx</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createJMX2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/jmx2</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost -Dcom.sun.management.jmxremote=true
-Dcom.sun.management.jmxremote.port=11099 -Dcom.sun.management.jmxremote.rmi.port=11098
-Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createJMXRBAC</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>admin</user>
<password>admin</password>
<allowAnonymous>false</allowAnonymous>
<instance>${basedir}/target/jmx-rbac</instance>
<configuration>${basedir}/target/classes/servers/jmx-rbac</configuration>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createAuditLogging</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/audit-logging</configuration>
<noWeb>false</noWeb>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/audit-logging</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
<!--<arg>-Djava.rmi.server.hostname=localhost -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005</arg>-->
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createAuditLogging2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/audit-logging2</configuration>
<noWeb>false</noWeb>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/audit-logging2</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
<!--<arg>-Djava.rmi.server.hostname=localhost -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005</arg>-->
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-createAuditLoggingAMQPMutualSSL</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/audit-logging-amqp-mutual-ssl</configuration>
<noWeb>false</noWeb>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/audit-logging-amqp-mutual-ssl</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
<!--<arg>-Djava.rmi.server.hostname=localhost -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005</arg>-->
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-jmx-failback</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/jmx-failback1</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/jmx-failback1</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-jmx-failback2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/jmx-failback2</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/jmx-failback2</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<!-- START JmxReplicatedMultipleFailbackTest -->
<execution>
<phase>test-compile</phase>
<id>create-replicated-failback-master1</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/replicated-failback-master1</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/replicated-failback-master1</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<!-- START ZookeeperPluggableQuorumSinglePairTest -->
<execution>
<phase>test-compile</phase>
<id>create-zk-replication-primary</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/zkReplicationPrimary</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/zkReplicationPrimary</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-zk-replication-primary-peer-a</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/zkReplicationPrimaryPeerA</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/zkReplicationPrimaryPeerA</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-zk-replication-primary-peer-b</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<configuration>${basedir}/target/classes/servers/zkReplicationPrimaryPeerB</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/zkReplicationPrimaryPeerB</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-zk-replication-backup</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/zkReplicationBackup</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/zkReplicationBackup</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<!-- END ZookeeperPluggableQuorumSinglePairTest -->
<execution>
<phase>test-compile</phase>
<id>create-replicated-failback-master2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/replicated-failback-master2</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/replicated-failback-master2</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-replicated-failback-master3</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/replicated-failback-master3</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/replicated-failback-master3</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-replicated-failback-slave1</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/replicated-failback-slave1</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/replicated-failback-slave1</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-paging</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/paging</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/paging</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-paging-address-messages</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<configuration>${basedir}/target/classes/servers/pagingAddressMaxMessages</configuration>
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/pagingAddressMaxMessages</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-paging-global-messages</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<instance>${basedir}/target/pagingGlobalMaxMessages</instance>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
<arg>--global-max-messages</arg>
<arg>1000</arg>
</args>
</configuration>
</execution>
<!-- used on TransferTest -->
<execution>
<phase>test-compile</phase>
<id>create-transfer-1</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/transfer1</instance>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-transfer-2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<!-- this makes it easier in certain envs -->
<allowAnonymous>true</allowAnonymous>
<user>admin</user>
<password>admin</password>
<noWeb>true</noWeb>
<portOffset>100</portOffset>
<instance>${basedir}/target/transfer2</instance>
</configuration>
</execution>
<!-- used on BrokerConnectionBridgeSecurityTest -->
<execution>
<phase>test-compile</phase>
<id>createBrokerConnectBridgeSecurityA</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>false</allowAnonymous>
<user>A</user>
<password>A</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/brokerConnect/bridgeSecurityA</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/bridgeSecurityA</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>createBrokerConnectBridgeSecurityB</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>false</allowAnonymous>
<user>B</user>
<password>B</password>
<noWeb>true</noWeb>
<portOffset>100</portOffset>
<instance>${basedir}/target/brokerConnect/bridgeSecurityB</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/bridgeSecurityB</configuration>
</configuration>
</execution>
<!-- used on BrokerConnectionBridgeSecurityTest -->
<execution>
<phase>test-compile</phase>
<id>createBrokerConnectMirrorSecurityA</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>false</allowAnonymous>
<user>A</user>
<password>A</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/brokerConnect/mirrorSecurityA</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/mirrorSecurityA</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>createBrokerConnectMirrorSecurityB</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>false</allowAnonymous>
<user>B</user>
<password>B</password>
<noWeb>true</noWeb>
<portOffset>1</portOffset>
<instance>${basedir}/target/brokerConnect/mirrorSecurityB</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/mirrorSecurityB</configuration>
</configuration>
</execution>
<!-- used on MaxQueueResourceTest -->
<execution>
<phase>test-compile</phase>
<id>createBrokerMaxQueueResourceTest</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>false</allowAnonymous>
<user>A</user>
<password>A</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/MaxQueueResourceTest</instance>
<configuration>${basedir}/target/classes/servers/MaxQueueResourceTest</configuration>
</configuration>
</execution>
<!-- used on InfiniteRedeliverySmokeTest -->
<execution>
<phase>test-compile</phase>
<id>createBrokerInfiniteRedelivery</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<user>A</user>
<password>A</password>
<noWeb>true</noWeb>
<instance>${basedir}/target/infinite-redelivery</instance>
<configuration>${basedir}/target/classes/servers/infinite-redelivery</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-brokerConnection-paged-serverA</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/brokerConnect/pagedA</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/pagedA</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-brokerConnection-paged-serverB</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/brokerConnect/pagedB</instance>
<configuration>${basedir}/target/classes/servers/brokerConnect/pagedB</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-bridge-transfer-A</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/bridgeTransfer/serverA</instance>
<configuration>${basedir}/target/classes/servers/bridgeTransfer/serverA</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-bridge-transfer-B</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/bridgeTransfer/serverB</instance>
<configuration>${basedir}/target/classes/servers/bridgeTransfer/serverB</configuration>
</configuration>
</execution>
<!-- Used on TestRetention -->
<execution>
<phase>test-compile</phase>
<id>create-replay</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>false</noWeb>
<instance>${basedir}/target/replay/replay</instance>
<configuration>${basedir}/target/classes/servers/replay/replay</configuration>
<args>
<!-- this is needed to run the server remotely -->
<arg>--java-options</arg>
<arg>-Djava.rmi.server.hostname=localhost</arg>
<arg>--journal-retention</arg>
<arg>1</arg>
<arg>--queues</arg>
<arg>RetentionTest</arg>
<arg>--name</arg>
<arg>replay</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-clustered-large-message1</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/clusteredLargeMessage/cluster1</instance>
<configuration>${basedir}/target/classes/servers/clusteredLargeMessage/cluster1</configuration>
<args>
<arg>--name</arg>
<arg>cluster1</arg>
<arg>--clustered</arg>
<arg>--staticCluster</arg>
<arg>tcp://localhost:61716</arg>
<arg>--max-hops</arg>
<arg>1</arg>
<arg>--queues</arg>
<arg>testQueue</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-cluster-large-message2</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>artemis</user>
<password>artemis</password>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/clusteredLargeMessage/cluster2</instance>
<configuration>${basedir}/target/classes/servers/clusteredLargeMessage/cluster2</configuration>
<args>
<arg>--name</arg>
<arg>cluster2</arg>
<arg>--clustered</arg>
<arg>--staticCluster</arg>
<arg>tcp://localhost:61616</arg>
<arg>--max-hops</arg>
<arg>1</arg>
<arg>--port-offset</arg>
<arg>100</arg>
<arg>--queues</arg>
<arg>testQueue</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-create-nettynative</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<role>amq</role>
<user>admin</user>
<password>admin</password>
<allowAnonymous>false</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/nettynative</instance>
<configuration>${basedir}/target/classes/servers/nettynative</configuration>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>create-custom-etc</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<noWeb>true</noWeb>
<instance>${basedir}/target/customETC/server</instance>
<args>
<arg>--etc</arg>
<arg>${basedir}/target/customETC/theCustomETC</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>upgrade-linux</id>
<goals>
<goal>upgrade</goal>
</goals>
<configuration>
<instance>${basedir}/target/classes/servers/linuxUpgrade</instance>
<!-- we don't pass the java memory argumnent on purpose,
as the upgrade should keep the relevant JVM arguments during the upgrade -->
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>upgrade-windows</id>
<goals>
<goal>upgrade</goal>
</goals>
<configuration>
<instance>${basedir}/target/classes/servers/windowsUpgrade</instance>
<args>
<arg>--windows</arg>
<!-- we don't pass the java memory argumnent on purpose,
as the upgrade should keep the relevant JVM arguments during the upgrade -->
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>createExpectedWindows</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<instance>${basedir}/target/classes/servers/windowsUpgradeExpected</instance>
<noWeb>false</noWeb>
<role>amq</role>
<user>y</user>
<password>y</password>
<args>
<arg>--windows</arg>
<arg>--etc</arg>
<arg>${basedir}/target/classes/servers/windowsUpgradeETCExpected</arg>
<arg>--java-memory</arg>
<arg>1G</arg>
</args>
</configuration>
</execution>
<execution>
<phase>test-compile</phase>
<id>createExpectedLinux</id>
<goals>
<goal>create</goal>
</goals>
<configuration>
<allowAnonymous>true</allowAnonymous>
<instance>${basedir}/target/classes/servers/linuxUpgradeExpected</instance>
<noWeb>false</noWeb>
<role>amq</role>
<user>y</user>
<password>y</password>
<args>
<arg>--etc</arg>
<arg>${basedir}/target/classes/servers/linuxUpgradeETCExpected</arg>
<arg>--java-memory</arg>
<arg>1G</arg>
</args>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.activemq.tests</groupId>
<artifactId>smoke-tests</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>${skipSmokeTests}</skipTests>
<argLine>${sts-surefire-extra-args} ${activemq-surefire-argline} ${artemis-distribuiton-lib-dir}</argLine>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>jdk16on</id>
<activation>
<jdk>[16,)</jdk>
</activation>
<properties>
<sts-surefire-extra-args>--add-opens=java.management.rmi/javax.management.remote.rmi=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.server=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED</sts-surefire-extra-args>
</properties>
</profile>
</profiles>
</project>