scrappages - RedHatWorkshops/FIS-Demo-Workshop-Yasumi GitHub Wiki
In the File menu, select the import option and import existing maven projects
Go to the directory where you have checked out LAB2:
And import the project.
Create a new Project based on the Maven Module Wizard:
Select next.
insert 'fis' into the filter and look for the correct archetype:
Select the karaf2-camle-log-archetype and hit next.
Provide a meaningfull GroupId and set the Version to 1.0.0-SNAPSHOT
After these steps, your project explorer should look as follows:
Make sure to work on the PuzzleStarter Project and not in the FISYasumiWorkshop Project (which is the master directory).
In the Main project, you will find the SupportMaterials for LAB2:
INSERT IMAGE FOR SUPPORT FILES HERE
Delete the content under the following directories:
src/main/java/*
src/main/resources/*
src/test/java/*
src/main/fabric8/*
Copy the following sections:
SupportMaterials/LAB2/ProjectFiles/src/main/java/* to src/main/java
SupportMaterials/LAB2/ProjectFiles/src/main/fabric8/* to src/main/fabric8
SupportMaterials/LAB2/ProjectFiles/src/main/resources/* to src/main/resources
**src/main/java/*
**This section holds all the objects needed for the Puzzler Solution and defines some processors for the Camel Routes.
**src/fabric8/deployment.yml **
This file defines all the deployment options for the Pod that will hold the Puzzle Starter. The currently used content defines a minimum on settings.
src/main/fabric8/yasumipuzzler.yaml
This Yaml file contains the externalized properties that are used in the Camel Route Definition. In Fuse Standalone, this content would be located in a cfg file.
src/main/resources/assembly/etc/com.rhworkshop.msa.yasumipuzzler.cfg
This is the properties configuration file that can be used when running the solution in standalone mode.
**src/main/resources/OSGI-INF/blueprint/FuseYasumiPuzzler.xml
**
This Camel Route Definition file holds the logic that will be deployed in the Karaf Container.
Open the project POM file and insert the following lines:
<feature>fabric8-karaf-cm</feature>
<feature>camel-jms</feature>
<feature>activemq-camel</feature>
<!-- 2. create karaf assembly -->
<!-- karaf-maven-plugin creates custom microservice distribution -->
<plugin>
<groupId>org.apache.karaf.tooling</groupId>
<artifactId>karaf-maven-plugin</artifactId>
<version>${karaf.plugin.version}</version>
<extensions>true</extensions>
<executions>
<execution>
<id>karaf-assembly</id>
<goals>
<goal>assembly</goal>
</goals>
<phase>install</phase>
</execution>
</executions>
<configuration>
<!-- we are using karaf 2.4.x -->
<karafVersion>v24</karafVersion>
<useReferenceUrls>true</useReferenceUrls>
<archiveTarGz>false</archiveTarGz>
<includeBuildOutputDirectory>false</includeBuildOutputDirectory>
<startupFeatures>
<feature>karaf-framework</feature>
<feature>shell</feature>
<feature>jaas</feature>
<feature>camel-jms</feature>
<feature>activemq-camel</feature>
<feature>aries-blueprint</feature>
<feature>camel-blueprint</feature>
<feature>fabric8-karaf-blueprint</feature>
<feature>fabric8-karaf-checks</feature>
<feature>fabric8-karaf-cm</feature>
</startupFeatures>
<startupBundles>
<bundle>mvn:${project.groupId}/${project.artifactId}/${project.version}</bundle>
</startupBundles>
</configuration>
</plugin>
As we are interested in first building and testing all local, we will perform the following command:
mvn clean install -Ddocker.skip.build=true
When all the correct features are included in the build script, the build should complete successful.