/karaf2-camel-log

A simple Camel route in JBoss Fuse container

Primary LanguageJava

Karaf 2 Camel Log QuickStart

This quickstart shows a simple Apache Camel application that logs a message to the server log every 5th second.

This example is implemented using solely the XML DSL (there is no Java code). The source code is provided in the following XML file src/main/resources/OSGI-INF/blueprint/camel-log.xml. It also shows how Karaf assembly files can be overriden using resources from src/main/resources/assembly/. In the included sample log file etc/org.ops4j.pax.logging.cfg uncommenting the following line will enable verbose Camel log messages

#log4j.logger.org.apache.camel=DEBUG

Building

The example can be built with

mvn clean install -Ddocker.skip

Running the example in fabric8

It is assumed that OpenShift platform is already running. If not you can find details how to Install OpenShift at your site.

The example can be built and deployed using a single goal:

mvn fabric8:deploy -Dfabric8.mode=openshift

When the example runs in OpenShift, you can use the OpenShift client tool to inspect the status

To list all the running pods:

oc get pods

Then find the name of the pod that runs this quickstart, and output the logs from the running pods with:

oc logs <name of pod>

You can also use the OpenShift web console to manage the running pods, and view logs and much more.

Running the example using OpenShift S2I template

The example can also be built and run using the included S2I template quickstart-template.json.

The application can be run directly by first editing the template file and populating S2I build parameters, including the required parameter GIT_REPO and then executing the command:

oc new-app -f quickstart-template.json

Alternatively the template file can be used to create an OpenShift application template by executing the command:

oc create -f quickstart-template.json

Integration Testing

The example includes a fabric8 arquillian Kubernetes Integration Test. Once the container image has been built and deployed in Kubernetes, the integration test can be run with:

mvn test -Dtest=*KT

The test is disabled by default and has to be enabled using -Dtest. Integration Testing and Fabric8 Arquillian Extension provide more information on writing full fledged black box integration tests for Kubernetes.

More details

You can find more details about running this quickstart on the website. This also includes instructions how to change the Docker image user and registry.