ARTEMIS-4533: update CI build, update READMEs/docs to reference examples repo and refresh queue example output, tweak assembly as needed, update release steps

This commit is contained in:
Robbie Gemmell 2023-12-14 15:36:07 +00:00 committed by clebertsuconic
parent 25640785a7
commit 547aa2fba6
9 changed files with 147 additions and 452 deletions

View File

@ -1,6 +1,25 @@
name: "Build"
on: [push, pull_request, workflow_dispatch]
on:
push:
pull_request:
workflow_dispatch:
inputs:
examplesRepoUserOrOrg:
description: 'The examples repo to use'
required: true
default: 'apache/activemq-artemis-examples'
type: string
examplesRepoBranch:
description: 'Branch in examples repo'
required: true
default: 'development'
type: string
env:
EXAMPLES_REPO: ${{ inputs.examplesRepoUserOrOrg || 'apache/activemq-artemis-examples' }}
EXAMPLES_BRANCH: ${{ inputs.examplesRepoBranch || 'development' }}
jobs:
test:
@ -13,6 +32,8 @@ jobs:
steps:
- uses: actions/checkout@v3
with:
path: activemq-artemis
- name: Cache Maven Local Repo
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
@ -20,7 +41,7 @@ jobs:
with:
path: |
~/.m2/repository/
key: ${{ runner.os }}-mvn-${{ hashFiles('**/pom.xml') }}
key: ${{ runner.os }}-mvn-${{ hashFiles('activemq-artemis/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-mvn-
@ -34,6 +55,7 @@ jobs:
# By setting anything to org.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED we are disabling libaio loading on the testsuite
- name: Fast Tests
run: |
cd activemq-artemis
mvn -s .github/maven-settings.xml -Dorg.apache.activemq.artemis.core.io.aio.AIOSequentialFileFactory.DISABLED=AnythingNotNull -Pfast-tests -Pcompatibility-tests install
- name: Clean Up Before Caching
@ -52,6 +74,8 @@ jobs:
steps:
- uses: actions/checkout@v3
with:
path: activemq-artemis
- name: Cache Maven Local Repo
if: ${{ !startsWith(github.ref, 'refs/tags/') }}
@ -59,7 +83,7 @@ jobs:
with:
path: |
~/.m2/repository/
key: ${{ runner.os }}-mvn-${{ hashFiles('**/pom.xml') }}
key: ${{ runner.os }}-mvn-${{ hashFiles('activemq-artemis/**/pom.xml') }}
restore-keys: |
${{ runner.os }}-mvn-
@ -69,35 +93,54 @@ jobs:
java-version: ${{ matrix.java }}
distribution: 'temurin'
- name: Checkout Artemis Examples Repo
uses: actions/checkout@v3
with:
repository: ${{ env.EXAMPLES_REPO }}
ref: ${{ env.EXAMPLES_BRANCH }}
path: activemq-artemis-examples
- name: Build Main
run: |
cd activemq-artemis
mvn -s .github/maven-settings.xml -DskipTests -Derrorprone -Pdev -Pjmh install
- name: Set Examples Version to Artemis Version
run: |
cd activemq-artemis
CURRENT_ARTEMIS_BUILD_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
echo "Current Artemis version: ${CURRENT_ARTEMIS_BUILD_VERSION}"
cd ../activemq-artemis-examples
./scripts/update-examples-version.sh ${CURRENT_ARTEMIS_BUILD_VERSION}
- name: Build Examples (JDK11 / -Prelease)
if: matrix.java == '11'
run: |
cd examples
mvn -s ../.github/maven-settings.xml install -Prelease
cd activemq-artemis-examples
mvn -s ../activemq-artemis/.github/maven-settings.xml install -Prelease
- name: Build Examples (JDK >11 / -Pexamples,noRun)
if: matrix.java != '11'
run: |
cd examples
mvn -s ../.github/maven-settings.xml install -Pexamples,noRun
cd activemq-artemis-examples
mvn -s ../activemq-artemis/.github/maven-settings.xml install -Pexamples,noRun
- name: Javadoc Check (JDK11 / -Prelease)
if: matrix.java == '11'
run: |
cd activemq-artemis
mvn -s .github/maven-settings.xml javadoc:javadoc -Prelease -DskipWebsiteDocGeneration=true -DskipWebsiteJavadocGeneration=true
- name: Javadoc Check (JDK >11)
if: matrix.java != '11'
run: |
cd activemq-artemis
mvn -s .github/maven-settings.xml javadoc:javadoc
- name: Website Content Check (JDK11 only / -Prelease)
if: matrix.java == '11'
run: |
cd activemq-artemis
mvn -s .github/maven-settings.xml clean install -DskipTests -Prelease -am -pl "artemis-website"
- name: Clean Up Before Caching

View File

@ -6,7 +6,7 @@ ActiveMQ Artemis is the next generation message broker from Apache ActiveMQ.
See the [User Manual](https://activemq.apache.org/components/artemis/documentation/latest/) for an in-depth explanation of all aspects of broker configuration and behavior.
The broker ships with many [examples](https://activemq.apache.org/components/artemis/documentation/latest/examples.html) which you can run, inspect, & modify.
The [ActiveMQ Artemis Examples](https://github.com/apache/activemq-artemis-examples) repository contains over 90 examples demonstrating many of the client and broker features.
## How to Build, etc.

View File

@ -322,6 +322,31 @@ Once the mirrors are up-to-date then update the following:
Run `git add` for all the added directories & files and then `git commit -m "updates for <version> release"`.
Once pushed, the changes should be published automatically by the `jekyll_websites` builder of the [apache buildbot](https://ci2.apache.org/#/builders).
## Update Examples Repo
The [examples repo](https://github.com/apache/activemq-artemis-examples) should be updated to reflect the new release and development versions.
Take a fresh clone of the repo and run the provided script, then check the results and push.
```
git clone https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git
cd activemq-artemis-examples
./scripts/release/update-branch-versions.sh <release-version> <new-main-snapshot-version>"
```
Example from the 2.32.0 release:
```
git clone https://gitbox.apache.org/repos/asf/activemq-artemis-examples.git
cd activemq-artemis-examples
./scripts/release/update-branch-versions.sh 2.32.0 2.33.0-SNAPSHOT"
```
Check things over and then push the `development` and `main` branches (optionally use your fork, to test things out before pushing to the main examples repo or even to raise PRs).
NOTE: The `main` branch CI build does not build Artemis, so the release must be available on Maven Central before pushing main or the build will fail. The `development` branch will check out the Artemis main branch and build against that, or it can be manually triggered and pointed to e.g a release tag.
## Upload Docker Images
1. If you don't have an account on https://hub.docker.com/ then create one.

View File

@ -208,27 +208,6 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.ruleoftech</groupId>
<artifactId>markdown-page-generator-plugin</artifactId>
<version>2.4.0</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<headerHtmlFile>${activemq.basedir}/examples/common/header.html</headerHtmlFile>
<footerHtmlFile>${activemq.basedir}/examples/common/footer.html</footerHtmlFile>
<inputDirectory>${activemq.basedir}/examples</inputDirectory>
<outputDirectory>${project.build.directory}/markdown-pages/examples</outputDirectory>
<recursiveInput>true</recursiveInput>
<pegdownExtensions>FENCED_CODE_BLOCKS</pegdownExtensions>
</configuration>
</plugin>
</plugins>
</build>

View File

@ -151,41 +151,6 @@
<directoryMode>0755</directoryMode>
<fileMode>0755</fileMode>
</fileSet>
<!-- examples -->
<fileSet>
<directory>${activemq.basedir}/examples</directory>
<outputDirectory>examples</outputDirectory>
<lineEnding>keep</lineEnding>
<excludes>
<exclude>**/target/**</exclude>
<exclude>**/**/*.iml</exclude>
<exclude>**/**/*.dat</exclude>
<exclude>**/**/*.md</exclude>
<exclude>**/**/*.sh</exclude>
</excludes>
<directoryMode>0755</directoryMode>
<fileMode>0644</fileMode>
</fileSet>
<fileSet>
<directory>${activemq.basedir}/examples</directory>
<outputDirectory>examples</outputDirectory>
<lineEnding>keep</lineEnding>
<includes>
<include>**/**/*.sh</include>
</includes>
<excludes>
<exclude>**/target/**</exclude>
</excludes>
<directoryMode>0755</directoryMode>
<fileMode>0755</fileMode>
</fileSet>
<fileSet>
<directory>${project.build.directory}/markdown-pages/examples</directory>
<outputDirectory>examples</outputDirectory>
<lineEnding>keep</lineEnding>
<directoryMode>0755</directoryMode>
<fileMode>0644</fileMode>
</fileSet>
<!-- Include license and notice files -->
<fileSet>
<directory>${activemq.basedir}/artemis-distribution/src/main/resources/licenses/bin</directory>

View File

@ -111,9 +111,11 @@ $ ./artemis stop<br><br>
<h2>Documentation</h2>
The broker comes shipped with an in depth user manual and a bunch of examples to help you get started. The manual is shipped with the broker and can be accessed from the brokers website. Start the broker then navigate to the <a href="http://localhost:8161">Apache ActiveMQ Artemis</a>. Alternatively, you can browse all of the documentation online on the <a href="http://activemq.apache.org/artemis/">Apache ActiveMQ Artemis Website</a>.<br><br>
The broker has an in depth user manual and a bunch of examples to help you get started.
The examples are shipped inside the distribution folder under "examples"<br><br>
The manual can be found in the documentation on the <a href="https://activemq.apache.org/components/artemis/documentation/">Apache ActiveMQ Artemis Website</a>.<br><br>
The examples are can be found in the the <a href="https://github.com/apache/activemq-artemis-examples">Apache ActiveMQ Artemis Examples</a> github repository.<br><br><br><br>
Release Notes for all version can be found <a href="https://issues.apache.org/jira/browse/ARTEMIS/?selectedTab=com.atlassian.jira.jira-projects-plugin:versions-panel">here</a>

View File

@ -1,161 +0,0 @@
#!/usr/bin/env sh
# 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.
# This script will run all the examples on the distribution
rm -rf target
mkdir target
# Setting the script to fail if anything goes wrong
set -e
export TEST_TARGET="./target"
. ./installHome.sh
cd $ARTEMIS_HOME/examples/features/standard/
cd auto-closeable; mvn verify; cd ..
cd broker-plugin; mvn verify; cd ..
cd browser; mvn verify; cd ..
cd cdi; mvn verify; cd ..
cd client-kickoff; mvn verify; cd ..
cd completion-listener; mvn verify; cd ..
cd consumer-rate-limit; mvn verify; cd ..
cd context; mvn verify; cd ..
cd core-bridge; mvn verify; cd ..
cd database; mvn verify; cd ..
cd dead-letter; mvn verify; cd ..
cd delayed-redelivery; mvn verify; cd ..
cd divert; mvn verify; cd ..
cd durable-subscription; mvn verify; cd ..
cd embedded; mvn verify; cd ..
cd embedded-simple; mvn verify; cd ..
cd exclusive-queue; mvn verify; cd ..
cd expiry; mvn verify; cd ..
cd http-transport; mvn verify; cd ..
cd instantiate-connection-factory; mvn verify; cd ..
cd interceptor; mvn verify; cd ..
cd interceptor-amqp; mvn verify; cd ..
cd interceptor-client; mvn verify; cd ..
cd interceptor-mqtt; mvn verify; cd ..
cd jms-bridge; mvn verify; cd ..
cd jmx; mvn verify; cd ..
cd jmx-ssl; mvn verify; cd ..
#cd large-message; mvn verify; cd .. # too big for most CI machines, keeping it out
cd last-value-queue; mvn verify; cd ..
cd management; mvn verify; cd ..
cd management-notifications; mvn verify; cd ..
cd message-counters; mvn verify; cd ..
cd message-group; mvn verify; cd ..
cd message-group2; mvn verify; cd ..
cd message-priority; mvn verify; cd ..
cd no-consumer-buffering; mvn verify; cd ..
cd paging; mvn verify; cd ..
cd pre-acknowledge; mvn verify; cd ..
cd producer-rate-limit; mvn verify; cd ..
cd queue; mvn verify; cd ..
cd queue-jakarta; mvn verify; cd ..
cd queue-requestor; mvn verify; cd ..
cd queue-selector; mvn verify; cd ..
cd reattach-node; mvn verify; cd ..
cd request-reply; mvn verify; cd ..
cd scheduled-message; mvn verify; cd ..
cd security; mvn verify; cd ..
cd security-ldap; mvn verify; cd ..
cd security-manager; mvn verify; cd ..
cd send-acknowledgements; mvn verify; cd ..
cd shared-consumer; mvn verify; cd ..
cd slow-consumer; mvn verify; cd ..
cd spring-integration; mvn verify; cd ..
cd ssl-enabled; mvn verify; cd ..
cd ssl-enabled-crl-mqtt; mvn verify; cd ..
cd ssl-enabled-dual-authentication; mvn verify; cd ..
cd static-selector; mvn verify; cd ..
cd temp-queue; mvn verify; cd ..
cd topic; mvn verify; cd ..
cd topic-hierarchies; mvn verify; cd ..
cd topic-selector1; mvn verify; cd ..
cd topic-selector2; mvn verify; cd ..
cd transactional; mvn verify; cd ..
cd xa-heuristic; mvn verify; cd ..
cd xa-receive; mvn verify; cd ..
cd xa-send; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/features/clustered/
cd client-side-load-balancing; mvn verify; cd ..
cd clustered-durable-subscription; mvn verify; cd ..
cd clustered-grouping; mvn verify; cd ..
cd clustered-jgroups; mvn verify; cd ..
cd clustered-queue; mvn verify; cd ..
cd clustered-static-oneway; mvn verify; cd ..
cd clustered-static-discovery; mvn verify; cd ..
cd clustered-static-discovery-uri; mvn verify; cd ..
cd clustered-topic; mvn verify; cd ..
cd clustered-topic-uri; mvn verify; cd ..
cd queue-message-redistribution; mvn verify; cd ..
cd symmetric-cluster; mvn verify; cd ..
cd shared-storage-static-cluster; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/features/ha/
cd application-layer-failover; mvn verify; cd ..
cd client-side-failoverlistener; mvn verify; cd ..
cd colocated-failover; mvn verify; cd ..
cd colocated-failover-scale-down; mvn verify; cd ..
cd ha-policy-autobackup; mvn verify; cd ..
cd multiple-failover; mvn verify; cd ..
cd multiple-failover-failback; mvn verify; cd ..
cd non-transaction-failover; mvn verify; cd ..
cd replicated-failback; mvn verify; cd ..
cd replicated-failback-static; mvn verify; cd ..
cd replicated-multiple-failover; mvn verify; cd ..
#cd replicated-transaction-failover; mvn verify; cd ..
cd scale-down; mvn verify; cd ..
#cd transaction-failover; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/protocols/amqp/
cd queue; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/protocols/mqtt/
cd clustered-queue-mqtt; mvn verify; cd ..
cd publish-subscribe; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/protocols/openwire/
cd queue; mvn verify; cd ..
cd message-listener; mvn verify; cd ..
cd message-recovery; mvn verify; cd ..
cd virtual-topic-mapping; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/protocols/stomp/
cd stomp; mvn verify; cd ..
cd stomp1.1; mvn verify; cd ..
cd stomp1.2; mvn verify; cd ..
cd stomp-dual-authentication; mvn verify; cd ..
cd stomp-embedded-interceptor; mvn verify; cd ..
cd stomp-jms; mvn verify; cd ..
cd $ARTEMIS_HOME/examples/features/broker-connection
cd amqp-receiving-messages; mvn verify; cd ..
cd amqp-sending-messages; mvn verify; cd ..
cd amqp-sending-overssl; mvn verify; cd ..
cd disaster-recovery; mvn verify; cd ..
cd $CURRENT_DIR
rm -rf target

View File

@ -1,101 +0,0 @@
#!/usr/bin/env sh
# 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.
# This script will run all the 'standard' examples on the distribution
rm -rf target
mkdir target
# Setting the script to fail if anything goes wrong
set -e
export TEST_TARGET="./target"
. ./installHome.sh
cd $ARTEMIS_HOME/examples/features/standard/
cd auto-closeable; mvn verify; cd ..
cd broker-plugin; mvn verify; cd ..
cd browser; mvn verify; cd ..
cd cdi; mvn verify; cd ..
cd client-kickoff; mvn verify; cd ..
cd completion-listener; mvn verify; cd ..
cd consumer-rate-limit; mvn verify; cd ..
cd context; mvn verify; cd ..
cd core-bridge; mvn verify; cd ..
cd database; mvn verify; cd ..
cd dead-letter; mvn verify; cd ..
cd delayed-redelivery; mvn verify; cd ..
cd divert; mvn verify; cd ..
cd durable-subscription; mvn verify; cd ..
cd embedded; mvn verify; cd ..
cd embedded-simple; mvn verify; cd ..
cd exclusive-queue; mvn verify; cd ..
cd expiry; mvn verify; cd ..
cd http-transport; mvn verify; cd ..
cd instantiate-connection-factory; mvn verify; cd ..
cd interceptor; mvn verify; cd ..
cd interceptor-amqp; mvn verify; cd ..
cd interceptor-client; mvn verify; cd ..
cd interceptor-mqtt; mvn verify; cd ..
cd jms-bridge; mvn verify; cd ..
cd jmx; mvn verify; cd ..
cd jmx-ssl; mvn verify; cd ..
#cd large-message; mvn verify; cd .. # too big for most CI machines, keeping it out
cd last-value-queue; mvn verify; cd ..
cd management; mvn verify; cd ..
cd management-notifications; mvn verify; cd ..
cd message-counters; mvn verify; cd ..
cd message-group; mvn verify; cd ..
cd message-group2; mvn verify; cd ..
cd message-priority; mvn verify; cd ..
cd no-consumer-buffering; mvn verify; cd ..
cd paging; mvn verify; cd ..
cd pre-acknowledge; mvn verify; cd ..
cd producer-rate-limit; mvn verify; cd ..
cd queue; mvn verify; cd ..
cd queue-jakarta; mvn verify; cd ..
cd queue-requestor; mvn verify; cd ..
cd queue-selector; mvn verify; cd ..
cd reattach-node; mvn verify; cd ..
cd request-reply; mvn verify; cd ..
cd scheduled-message; mvn verify; cd ..
cd security; mvn verify; cd ..
cd security-ldap; mvn verify; cd ..
cd security-manager; mvn verify; cd ..
cd send-acknowledgements; mvn verify; cd ..
cd shared-consumer; mvn verify; cd ..
cd slow-consumer; mvn verify; cd ..
cd spring-integration; mvn verify; cd ..
cd ssl-enabled; mvn verify; cd ..
cd ssl-enabled-crl-mqtt; mvn verify; cd ..
cd ssl-enabled-dual-authentication; mvn verify; cd ..
cd static-selector; mvn verify; cd ..
cd temp-queue; mvn verify; cd ..
cd topic; mvn verify; cd ..
cd topic-hierarchies; mvn verify; cd ..
cd topic-selector1; mvn verify; cd ..
cd topic-selector2; mvn verify; cd ..
cd transactional; mvn verify; cd ..
cd xa-heuristic; mvn verify; cd ..
cd xa-receive; mvn verify; cd ..
cd xa-send; mvn verify; cd ..
cd $CURRENT_DIR
rm -rf target

View File

@ -2,10 +2,11 @@
:idprefix:
:idseparator: -
The Apache ActiveMQ Artemis distribution comes with over 90 run out-of-the-box examples demonstrating many of the features.
The Apache ActiveMQ Artemis Examples repository contains over 90 examples demonstrating many of the client and broker features.
The examples are available in both the binary and source distribution under the `examples` directory.
Examples are split by the following source tree:
The examples can be found at: [https://github.com/apache/activemq-artemis-examples](https://github.com/apache/activemq-artemis-examples)
The individual examples are available under the `examples` directory, and are grouped within the following sub tree:
* `features` - Examples containing broker specific features.
** `clustered` - examples showing load balancing and distribution capabilities.
@ -21,7 +22,9 @@ Examples are split by the following source tree:
== Running the Examples
To run any example, simply `cd` into the appropriate example directory and type `mvn verify` or `mvn install` (For details please read the readme.html in each example directory).
First, run `mvn package` in the repository root to prepare a broker distribution in the artemis-distribution/target directory for use by the examples.
To run any example, simply `cd` into the appropriate example directory and type `mvn verify` or `mvn install` (For details please read the readme.md in each example directory).
You can use the profile `-Pexamples` to run multiple examples under any example tree.
@ -69,161 +72,101 @@ On this case taken from the `Queue` example:
[,sh]
----
[INFO] Scanning for projects...
[INFO] -------------< org.apache.activemq.examples.broker:queue >--------------
[INFO] Building ActiveMQ Artemis JMS Queue Example 2.32.0
[INFO] from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building ActiveMQ Artemis JMS Queue Example 2.5.0
[INFO] ------------------------------------------------------------------------
[INFO] --- enforcer:3.3.0:enforce (enforce-maven-version) @ queue ---
[INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireMavenVersion passed
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-maven) @ queue ---
[INFO] --- enforcer:3.3.0:enforce (enforce-java-version) @ queue ---
[INFO] Rule 0: org.apache.maven.enforcer.rules.version.RequireJavaVersion passed
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-java) @ queue ---
[INFO] --- remote-resources:3.1.0:process (process-resource-bundles) @ queue ---
[INFO] Preparing remote bundle org.apache.apache.resources:apache-jar-resource-bundle:1.5
[INFO] Copying 3 resources from 1 bundle.
[INFO]
[INFO] --- maven-remote-resources-plugin:1.5:process (process-resource-bundles) @ queue ---
[INFO] --- resources:3.3.1:resources (default-resources) @ queue ---
[INFO] Copying 1 resource from src/main/resources to target/classes
[INFO] Copying 3 resources from target/maven-shared-archive-resources to target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ queue ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] Copying 3 resources
[INFO] --- compiler:3.11.0:compile (default-compile) @ queue ---
[INFO] Changes detected - recompiling the module! :source
[INFO] Compiling 1 source file with javac [debug target 11] to target/classes
[INFO]
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ queue ---
[INFO] Nothing to compile - all classes are up to date
[INFO] --- resources:3.3.1:testResources (default-testResources) @ queue ---
[INFO] skip non existing resourceDirectory /home/user/activemq-artemis-examples/examples/features/standard/queue/src/test/resources
[INFO] Copying 3 resources from target/maven-shared-archive-resources to target/test-classes
[INFO]
[INFO] --- maven-checkstyle-plugin:2.17:check (default) @ queue ---
[INFO]
[INFO] --- apache-rat-plugin:0.12:check (default) @ queue ---
[INFO] RAT will not execute since it is configured to be skipped via system property 'rat.skip'.
[INFO]
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ queue ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/user/activemq-artemis/examples/features/standard/queue/src/test/resources
[INFO] Copying 3 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ queue ---
[INFO] --- compiler:3.11.0:testCompile (default-testCompile) @ queue ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ queue ---
[INFO] --- surefire:2.22.2:test (default-test) @ queue ---
[INFO]
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ queue ---
[INFO] Building jar: /home/user/activemq-artemis/examples/features/standard/queue/target/queue-2.5.0.jar
[INFO] --- jar:3.3.0:jar (default-jar) @ queue ---
[INFO] Building jar: /home/user/activemq-artemis-examples/examples/features/standard/queue/target/queue-2.32.0.jar
[INFO]
[INFO] --- maven-site-plugin:3.3:attach-descriptor (attach-descriptor) @ queue ---
[INFO] --- site:3.12.1:attach-descriptor (attach-descriptor) @ queue ---
[INFO] Skipping because packaging 'jar' is not pom.
[INFO]
[INFO] >>> maven-source-plugin:2.2.1:jar (attach-sources) > generate-sources @ queue >>>
[INFO] --- source:3.3.0:jar-no-fork (attach-sources) @ queue ---
[INFO] Building jar: /home/user/activemq-artemis-examples/examples/features/standard/queue/target/queue-2.32.0-sources.jar
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-maven) @ queue ---
[INFO] --- artemis:2.32.0:create (create) @ queue ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-java) @ queue ---
[INFO]
[INFO] <<< maven-source-plugin:2.2.1:jar (attach-sources) < generate-sources @ queue <<<
[INFO]
[INFO]
[INFO] --- maven-source-plugin:2.2.1:jar (attach-sources) @ queue ---
[INFO] Building jar: /home/user/activemq-artemis/examples/features/standard/queue/target/queue-2.5.0-sources.jar
[INFO]
[INFO] >>> maven-source-plugin:2.2.1:jar (default) > generate-sources @ queue >>>
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-maven) @ queue ---
[INFO]
[INFO] --- maven-enforcer-plugin:1.4:enforce (enforce-java) @ queue ---
[INFO]
[INFO] <<< maven-source-plugin:2.2.1:jar (default) < generate-sources @ queue <<<
[INFO]
[INFO]
[INFO] --- maven-source-plugin:2.2.1:jar (default) @ queue ---
[INFO]
[INFO] --- dependency-check-maven:1.4.3:check (default) @ queue ---
[INFO] Skipping dependency-check
[INFO]
[INFO] --- artemis-maven-plugin:2.5.0:create (create) @ queue ---
[INFO] Local id: local
url: file:///home/user/.m2/repository/
layout: default
snapshots: [enabled => true, update => always]
releases: [enabled => true, update => always]
[INFO] Entries.size 2
[INFO] ... key=project = MavenProject: org.apache.activemq.examples.broker:queue:2.5.0 @ /home/user/activemq-artemis/examples/features/standard/queue/pom.xml
[INFO] ... key=pluginDescriptor = Component Descriptor: role: 'org.apache.maven.plugin.Mojo', implementation: 'org.apache.activemq.artemis.maven.ArtemisCLIPlugin', role hint: 'org.apache.activemq:artemis-maven-plugin:2.5.0:cli'
role: 'org.apache.maven.plugin.Mojo', implementation: 'org.apache.activemq.artemis.maven.ArtemisCreatePlugin', role hint: 'org.apache.activemq:artemis-maven-plugin:2.5.0:create'
role: 'org.apache.maven.plugin.Mojo', implementation: 'org.apache.activemq.artemis.maven.ArtemisDependencyScanPlugin', role hint: 'org.apache.activemq:artemis-maven-plugin:2.5.0:dependency-scan'
role: 'org.apache.maven.plugin.Mojo', implementation: 'org.apache.activemq.artemis.maven.ArtemisClientPlugin', role hint: 'org.apache.activemq:artemis-maven-plugin:2.5.0:runClient'
---
Executing org.apache.activemq.artemis.cli.commands.Create create --allow-anonymous --silent --force --user guest --password guest --role guest --port-offset 0 --data ./data --allow-anonymous --no-web --no-autotune --verbose --aio /home/user/activemq-artemis/examples/features/standard/queue/target/server0
Home::/home/user/activemq-artemis/examples/features/standard/queue/../../../../artemis-distribution/target/apache-artemis-2.5.0-bin/apache-artemis-2.5.0, Instance::null
Creating ActiveMQ Artemis instance at: /home/user/activemq-artemis/examples/features/standard/queue/target/server0
You can now start the broker by executing:
"/home/user/activemq-artemis/examples/features/standard/queue/target/server0/bin/artemis" run
Or you can run the broker in the background using:
"/home/user/activemq-artemis/examples/features/standard/queue/target/server0/bin/artemis-service" start
[INFO] ###################################################################################################
[INFO] create-server0.sh created with commands to reproduce server0
[INFO] under /home/user/activemq-artemis/examples/features/standard/queue/target
[INFO] ###################################################################################################
[INFO]
[INFO] --- artemis-maven-plugin:2.5.0:cli (start) @ queue ---
[INFO] --- artemis:2.32.0:cli (start) @ queue ---
[INFO] awaiting server to start
server-out: _ _ _
server-out: / \ ____| |_ ___ __ __(_) _____
server-out: / _ \| _ \ __|/ _ \ \/ | |/ __/
server-out: / ___ \ | \/ |_/ __/ |\/| | |\___ \
server-out: /_/ \_\| \__\____|_| |_|_|/___ /
server-out: Apache ActiveMQ Artemis 2.5.0
server-out: Apache ActiveMQ Artemis 2.32.0
server-out:
server-out:
server-out:2018-03-13 09:06:37,980 WARN [org.apache.activemq.artemis.core.server] AMQ222018: AIO was not located on this platform, it will fall back to using pure Java NIO. If your platform is Linux, install LibAIO to enable the AIO journal
server-out:2018-03-13 09:06:38,052 INFO [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server
[INFO] awaiting server to start
server-out:2018-03-13 09:06:38,123 INFO [org.apache.activemq.artemis.core.server] AMQ221000: live Message Broker is starting with configuration Broker Configuration (clustered=false,journalDirectory=./data/journal,bindingsDirectory=./data/bindings,largeMessagesDirectory=./data/large-messages,pagingDirectory=./data/paging)
server-out:2018-03-13 09:06:38,146 INFO [org.apache.activemq.artemis.core.server] AMQ221013: Using NIO Journal
server-out:2018-03-13 09:06:38,178 INFO [org.apache.activemq.artemis.core.server] AMQ221057: Global Max Size is being adjusted to 1/2 of the JVM max size (-Xmx). being defined as 1,073,741,824
server-out:2018-03-13 09:06:38,197 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-server]. Adding protocol support for: CORE
server-out:2018-03-13 09:06:38,198 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-amqp-protocol]. Adding protocol support for: AMQP
server-out:2018-03-13 09:06:38,198 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-hornetq-protocol]. Adding protocol support for: HORNETQ
server-out:2018-03-13 09:06:38,198 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-mqtt-protocol]. Adding protocol support for: MQTT
server-out:2018-03-13 09:06:38,199 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-openwire-protocol]. Adding protocol support for: OPENWIRE
server-out:2018-03-13 09:06:38,199 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-stomp-protocol]. Adding protocol support for: STOMP
server-out:2018-03-13 09:06:38,261 INFO [org.apache.activemq.artemis.core.server] AMQ221034: Waiting indefinitely to obtain live lock
server-out:2018-03-13 09:06:38,262 INFO [org.apache.activemq.artemis.core.server] AMQ221035: Live Server Obtained live lock
server-out:2018-03-13 09:06:38,386 INFO [org.apache.activemq.artemis.core.server] AMQ221003: Deploying queue DLQ on address DLQ
server-out:2018-03-13 09:06:38,445 INFO [org.apache.activemq.artemis.core.server] AMQ221003: Deploying queue ExpiryQueue on address ExpiryQueue
[INFO] awaiting server to start
server-out:2018-03-13 09:06:38,739 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:61616 for protocols [CORE,MQTT,AMQP,STOMP,HORNETQ,OPENWIRE]
server-out:2018-03-13 09:06:38,741 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:5445 for protocols [HORNETQ,STOMP]
server-out:2018-03-13 09:06:38,742 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:5672 for protocols [AMQP]
server-out:2018-03-13 09:06:38,744 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:1883 for protocols [MQTT]
server-out:2018-03-13 09:06:38,746 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:61613 for protocols [STOMP]
server-out:2018-03-13 09:06:38,752 INFO [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
server-out:2018-03-13 09:06:38,752 INFO [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.5.0 [0.0.0.0, nodeID=bf1853a1-26c7-11e8-9378-d96702a756ed]
server-out:2023-12-14 14:33:06,314 INFO [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server version 2.32.0
server-out:2023-12-14 14:33:06,339 INFO [org.apache.activemq.artemis.core.server] AMQ221000: live Message Broker is starting with configuration Broker Configuration (clustered=false,journalDirectory=./data/journal,bindingsDirectory=./data/bindings,largeMessagesDirectory=./data/large-messages,pagingDirectory=./data/paging)
server-out:2023-12-14 14:33:06,354 INFO [org.apache.activemq.artemis.core.server] AMQ221012: Using AIO Journal
server-out:2023-12-14 14:33:06,380 INFO [org.apache.activemq.artemis.core.server] AMQ221057: Global Max Size is being adjusted to 1/2 of the JVM max size (-Xmx). being defined as 1073741824
server-out:2023-12-14 14:33:06,391 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-server]. Adding protocol support for: CORE
server-out:2023-12-14 14:33:06,391 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-amqp-protocol]. Adding protocol support for: AMQP
server-out:2023-12-14 14:33:06,391 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-hornetq-protocol]. Adding protocol support for: HORNETQ
server-out:2023-12-14 14:33:06,392 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-mqtt-protocol]. Adding protocol support for: MQTT
server-out:2023-12-14 14:33:06,392 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-openwire-protocol]. Adding protocol support for: OPENWIRE
server-out:2023-12-14 14:33:06,392 INFO [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module found: [artemis-stomp-protocol]. Adding protocol support for: STOMP
server-out:2023-12-14 14:33:06,411 INFO [org.apache.activemq.artemis.core.server] AMQ221034: Waiting indefinitely to obtain live lock
server-out:2023-12-14 14:33:06,411 INFO [org.apache.activemq.artemis.core.server] AMQ221035: Live Server Obtained live lock
server-out:2023-12-14 14:33:06,450 INFO [org.apache.activemq.artemis.core.server] AMQ221080: Deploying address DLQ supporting [ANYCAST]
server-out:2023-12-14 14:33:06,454 INFO [org.apache.activemq.artemis.core.server] AMQ221003: Deploying ANYCAST queue DLQ on address DLQ
server-out:2023-12-14 14:33:06,476 INFO [org.apache.activemq.artemis.core.server] AMQ221080: Deploying address ExpiryQueue supporting [ANYCAST]
server-out:2023-12-14 14:33:06,476 INFO [org.apache.activemq.artemis.core.server] AMQ221003: Deploying ANYCAST queue ExpiryQueue on address ExpiryQueue
server-out:2023-12-14 14:33:06,681 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:61616 for protocols [CORE,MQTT,AMQP,STOMP,HORNETQ,OPENWIRE]
server-out:2023-12-14 14:33:06,683 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:5445 for protocols [HORNETQ,STOMP]
server-out:2023-12-14 14:33:06,685 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:5672 for protocols [AMQP]
server-out:2023-12-14 14:33:06,687 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:1883 for protocols [MQTT]
server-out:2023-12-14 14:33:06,689 INFO [org.apache.activemq.artemis.core.server] AMQ221020: Started EPOLL Acceptor at 0.0.0.0:61613 for protocols [STOMP]
server-out:2023-12-14 14:33:06,690 INFO [org.apache.activemq.artemis.core.server] AMQ221007: Server is now live
server-out:2023-12-14 14:33:06,690 INFO [org.apache.activemq.artemis.core.server] AMQ221001: Apache ActiveMQ Artemis Message Broker version 2.32.0 [0.0.0.0, nodeID=b20d82dd-9a8d-11ee-a56d-000c2997e711]
[INFO] Server started
[INFO]
[INFO] --- artemis-maven-plugin:2.5.0:runClient (runClient) @ queue ---
[INFO] --- artemis:2.32.0:runClient (runClient) @ queue ---
Sent message: This is a text message
Received message: This is a text message
[INFO]
[INFO] --- artemis-maven-plugin:2.5.0:cli (stop) @ queue ---
server-out:2018-03-13 09:06:40,888 INFO [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.5.0 [bf1853a1-26c7-11e8-9378-d96702a756ed] stopped, uptime 2.786 seconds
[INFO] --- artemis:2.32.0:stop (stop) @ queue ---
server-out:2023-12-14 14:33:08,295 INFO [org.apache.activemq.artemis.core.server] AMQ221002: Apache ActiveMQ Artemis Message Broker version 2.32.0 [b20d82dd-9a8d-11ee-a56d-000c2997e711] stopped, uptime 1.969 seconds
server-out:Server stopped!
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.641 s
[INFO] Finished at: 2018-03-13T09:06:40-05:00
[INFO] Final Memory: 43M/600M
[INFO] Total time: 4.845 s
[INFO] Finished at: 2023-12-14T14:33:08Z
[INFO] ------------------------------------------------------------------------
----
This includes a preview list of a few examples that we distribute with Artemis.
Please refer to the distribution for a more accurate list.
== Applet
This example shows you how to send and receive JMS messages from an Applet.
This list includes a preview of some examples that exist for Artemis in the [Examples Repository](https://github.com/apache/activemq-artemis-examples), see the repository for more.
== Application-Layer Failover