blob: 8f2153dc782936f9c43c786f72c5ab3a44cc8bbb [file] [log] [blame]
<!-- ============LICENSE_START=======================================================
org.onap.dmaap ================================================================================
Copyright © 2017 AT&T Intellectual Property. All rights reserved. ================================================================================
Licensed 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. ============LICENSE_END=========================================================
ECOMP is a trademark and service mark of AT&T Intellectual Property. -->
<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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.onap.oparent</groupId>
<artifactId>oparent</artifactId>
<version>1.1.0</version>
</parent>
<groupId>org.onap.dmaap.messagerouter.messageservice</groupId>
<artifactId>dmaapMR1</artifactId>
<version>1.1.4-SNAPSHOT</version>
<name>dmaap-messagerouter-messageservice</name>
<description>Message Router - Restful interface built for kafka</description>
<licenses>
<license>
<name>Apache License Version 2.0</name>
</license>
</licenses>
<developers>
<developer>
<name>Rajashree</name>
<email></email>
<organization>ATT</organization>
<organizationUrl>www.att.com</organizationUrl>
</developer>
<developer>
<name>Ramkumar</name>
<email></email>
<organization>ATT</organization>
<organizationUrl>www.att.com</organizationUrl>
</developer>
</developers>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.6</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav-jackrabbit</artifactId>
<version>2.10</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.4</version> <configuration> <additionalparam>-Xdoclint:none</additionalparam>
</configuration> <executions> <execution> <id>attach-javadocs</id> <goals>
<goal>jar</goal> </goals> </execution> </executions> </plugin> -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.0.0</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<autoVersionSubmodules>true</autoVersionSubmodules>
<checkModificationExcludes>
</checkModificationExcludes>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.scm</groupId>
<artifactId>maven-scm-provider-gitexe</artifactId>
<version>1.9.4</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>1.0.0</version>
<configuration>
<imageName>onap/dmaap/dmaap-mr</imageName>
<dockerDirectory>${dockerLocation}</dockerDirectory>
<serverId>docker-hub</serverId>
<imageTags>
<imageTag>${dmaapImg}</imageTag>
<imageTag>latest</imageTag>
</imageTags>
<forceTags>true</forceTags>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${dockerLocation}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>**/**</include>
</resource>
</resources>
</configuration>
<executions>
<execution>
<id>build-image</id>
<phase>install</phase>
<goals>
<goal>build</goal>
</goals>
<configuration>
<skipDockerBuild>${skip.docker.build}</skipDockerBuild>
</configuration>
</execution>
<execution>
<id>tag-image-project-version</id>
<phase>install</phase>
<goals>
<goal>tag</goal>
</goals>
<configuration>
<image>onap/dmaap/dmaap-mr</image>
<newName>${docker.push.registry}/onap/dmaap/dmaap-mr:${project.version}</newName>
<skipDockerTag>${skip.docker.push}</skipDockerTag>
</configuration>
</execution>
<execution>
<id>tag-image-latest</id>
<phase>install</phase>
<goals>
<goal>tag</goal>
</goals>
<configuration>
<image>onap/dmaap/dmaap-mr</image>
<newName>${docker.push.registry}/onap/dmaap/dmaap-mr:latest</newName>
<skipDockerTag>${skip.docker.push}</skipDockerTag>
</configuration>
</execution>
<execution>
<id>push-image-latest</id>
<phase>deploy</phase>
<goals>
<goal>push</goal>
</goals>
<configuration>
<imageName>${docker.push.registry}/onap/dmaap/dmaap-mr:${project.version}</imageName>
<skipDockerPush>${skip.docker.push}</skipDockerPush>
</configuration>
</execution>
<execution>
<id>push-image</id>
<phase>deploy</phase>
<goals>
<goal>push</goal>
</goals>
<configuration>
<imageName>${docker.push.registry}/onap/dmaap/dmaap-mr:latest</imageName>
<skipDockerPush>${skip.docker.push}</skipDockerPush>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.blackducksoftware.integration</groupId>
<artifactId>hub-maven-plugin</artifactId>
<version>1.0.4</version>
<inherited>false</inherited>
<configuration>
<target>${project.basedir}</target>
</configuration>
<executions>
<execution>
<id>create-bdio-file</id>
<phase>package</phase>
<goals>
<goal>createHubOutput</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<compilerId>groovy-eclipse-compiler</compilerId>
<verbose>true</verbose>
<source>1.7</source>
<target>1.7</target>
</configuration>
<dependencies>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.8.0-01</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-batch</artifactId>
<version>2.1.5-03</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.8.0-01</version>
<extensions>true</extensions>
</plugin>
</plugins>
</build>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<dockerLocation>${basedir}/target/swm/package/nix/dist_files/</dockerLocation>
<docker.image.prefix>simpledemo</docker.image.prefix>
<javax-mail-version>1.5.0</javax-mail-version>
<module.ajsc.namespace.name>dmaap</module.ajsc.namespace.name>
<module.ajsc.namespace.version>v1</module.ajsc.namespace.version>
<ajscRuntimeVersion>3.0.6-oss</ajscRuntimeVersion>
<!-- This will be the Absolute Root of the Project and should contain NO
Versioning -->
<absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
<!-- <absoluteDistFilesRoot>/opt/app/dmaap/${project.artifactId}</absoluteDistFilesRoot> -->
<!-- For Versioning upon installation, add /${project.version} to distFilesRoot.
For NO Versioning, leave as is -->
<!-- example: /appl/${project.artifactId}/${project.version}. Also, add
${project.version} to ${runAjscHome} for running locally. -->
<distFilesRoot>/appl/${project.artifactId}</distFilesRoot>
<!-- <distFilesRoot>/opt/app/dmaap/${project.artifactId}</distFilesRoot> -->
<runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
<!-- For SOA Cloud Installation <installOwnerUser>aft</installOwnerUser>
<installOwnerGroup>aft</installOwnerGroup> <ownerManagementGroup>com.att.acsi.saat.dt.dmaap.dev</ownerManagementGroup> -->
<!-- For SOA Cloud Installation -->
<installOwnerUser>msgrtr</installOwnerUser>
<installOwnerGroup>dmaap</installOwnerGroup>
<ownerManagementGroup>com.att.acsi.saat.dt.dmaap.dev</ownerManagementGroup>
<!-- Port Selection. A value of 0 will allow for dynamic port selection.
For local testing, you may choose to hardcode this value to something like
8080 -->
<serverPort>3904</serverPort>
<sslport>3905</sslport>
<testRouteOffer>workstation</testRouteOffer>
<testEnv>DEV</testEnv>
<dmaapImg>${project.version}</dmaapImg>
<camel.version>2.17.6</camel.version>
<sitePath>/content/sites/site/org/onap/dmaap/messagerouter/messageservice/${project.artifactId}/${project.version}</sitePath>
<skip.docker.build>true</skip.docker.build>
<skip.docker.push>true</skip.docker.push>
<nexusproxy>https://nexus.onap.org</nexusproxy>
<docker.push.registry>nexus3.onap.org:10003</docker.push.registry>
<spring.version>3.2.18.RELEASE</spring.version>
</properties>
<!-- Distribution management -->
<distributionManagement>
<site>
<id>ecomp-site</id>
<url>dav:${nexusproxy}${sitePath}</url>
</site>
</distributionManagement>
<!-- End Distribution management -->
<!-- The standard build tasks for this project are inherited from the parent.
Please do not override the build tasks. However tasks and/or profiles can
be included here as well as additional dependencies for your service. Any
runtime or compile scope dependencies will be copied to the INSTALLATION_PATH/extJars
folder and will be made available on the AJSC classpath for your service.
Please, NOTE: DME2 and CSM related dependencies are EXTERNALIZED within the
CSI environment. Therefore, they are provided within this project as "provided"
dependencies. In order for the AJSC to run properly, locally, the CSM and
DME2 dependencies will be copied into the target/commonLibs folder and will
be made available to the classpath of the AJSC through the use of the system
property, "AJSC_EXTERNAL_LIB_FOLDERS". This system property needs to be set
in the "runAjsc" maven profile within the pom.xml (and, is defaulted to do
so). If you have a startup failure related to a missing dme2 class not found
exception, please contact the AJSC team for assistance. You can email support
at ajsc-Support <DL-ajsc-Support@att.com>. For more information regarding
the usage of the AJSC service pom.xml and management of dependencies, -->
<dependencies>
<!-- cmn-CommonDataModel dependency added to resolve build issue not finding
version 100.0.64 -->
<!-- <dependency> <groupId>csi-schemas-source</groupId> <artifactId>cmn-CommonDataModel</artifactId>
<version>112.0.50</version> </dependency> -->
<!-- TODO: add open source version here -->
<dependency>
<groupId>com.att.cadi</groupId>
<artifactId>cadi-core</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>com.att.aft</groupId>
<artifactId>dme2</artifactId>
<version>3.1.200-oss</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>4.3.16.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-messaging</artifactId>
<version>4.1.9.RELEASE</version>
</dependency>
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>${javax-mail-version}</version>
<exclusions>
<!-- javax activation is part of the JDK now -->
<exclusion>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
<version>3.4.10</version>
</dependency>
<dependency>
<groupId>org.grails</groupId>
<artifactId>grails-bootstrap</artifactId>
<version>2.5.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>ant</artifactId>
<groupId>org.apache.ant</groupId>
</exclusion>
<exclusion>
<artifactId>jna</artifactId>
<groupId>net.java.dev.jna</groupId>
</exclusion>
<exclusion>
<artifactId>ant-trax</artifactId>
<groupId>org.apache.ant</groupId>
</exclusion>
<exclusion>
<artifactId>gant_groovy1.8</artifactId>
<groupId>org.codehaus.gant</groupId>
</exclusion>
<exclusion>
<artifactId>ant-launcher</artifactId>
<groupId>org.apache.ant</groupId>
</exclusion>
<exclusion>
<artifactId>jline</artifactId>
<groupId>jline</groupId>
</exclusion>
<exclusion>
<artifactId>ivy</artifactId>
<groupId>org.apache.ivy</groupId>
</exclusion>
<exclusion>
<artifactId>jansi</artifactId>
<groupId>org.fusesource.jansi</groupId>
</exclusion>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
<exclusion>
<artifactId>ant-junit</artifactId>
<groupId>org.apache.ant</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.3.15.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.3.15.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.3.15.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.3.15.RELEASE</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.onap.dmaap.messagerouter.msgrtr</groupId>
<artifactId>msgrtr</artifactId>
<version>1.1.3</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-util</artifactId>
</exclusion>
<!-- <exclusion> <groupId>com.att.nsa</groupId> <artifactId>saToolkit</artifactId>
</exclusion> -->
<exclusion>
<groupId>com.att.nsa</groupId>
<artifactId>tomcat-util</artifactId>
</exclusion>
<exclusion>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>1.10.19</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-module-junit4</artifactId>
<version>1.6.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.powermock</groupId>
<artifactId>powermock-api-mockito</artifactId>
<version>1.6.4</version>
<scope>test</scope>
</dependency>
<!-- <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-jaxrs</artifactId>
<version>1.9.13</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId> <version>1.9.13</version> </dependency>
<dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId>
<version>1.9.13</version> </dependency> -->
<dependency>
<groupId>com.fasterxml.jackson.jaxrs</groupId>
<artifactId>jackson-jaxrs-json-provider</artifactId>
<version>2.2.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.11</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.11.1</version>
</dependency>
<dependency>
<groupId>org.grails</groupId>
<artifactId>grails-web</artifactId>
<version>2.5.4</version>
<exclusions>
<exclusion>
<groupId>org.grails</groupId>
<artifactId>grails-web-jsp</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.4.4</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<artifactId>jline</artifactId>
<groupId>jline</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20131018</version>
</dependency>
<!-- CXF JAX-RS extension -->
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-extension-providers</artifactId>
<version>3.0.12</version>
</dependency>
<dependency>
<groupId>org.codehaus.jettison</groupId>
<artifactId>jettison</artifactId>
<version>1.3.7</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-archetype-parent</artifactId>
<version>3.0.6-oss</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>com.att.cadi</groupId>
<artifactId>cadi-aaf</artifactId>
<version>1.3.0</version>
</dependency>
<dependency>
<groupId>com.att.inno</groupId>
<artifactId>rosetta</artifactId>
<version>1.2.11</version>
</dependency>
<dependency>
<groupId>com.att.inno</groupId>
<artifactId>env</artifactId>
<version>1.2.11</version>
</dependency>
<dependency>
<groupId>com.att.inno</groupId>
<artifactId>xgen</artifactId>
<version>1.2.11</version>
</dependency>
<dependency>
<groupId>com.att.inno</groupId>
<artifactId>rosetta</artifactId>
<version>1.2.11</version>
</dependency>
<dependency>
<groupId>backport-util-concurrent</groupId>
<artifactId>backport-util-concurrent</artifactId>
<version>3.1</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-core</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-quartz</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-spring</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-restlet</artifactId>
<version>${camel.version}</version>
<exclusions>
<exclusion>
<artifactId>org.restlet</artifactId>
<groupId>org.restlet.jse</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-servlet</artifactId>
<version>${camel.version}</version>
<!-- <exclusions>
<exclusion>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
</exclusion>
</exclusions> -->
</dependency>
<!-- <dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.0</version>
</dependency> -->
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-http4</artifactId>
<version>${camel.version}</version>
<exclusions>
<exclusion>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.5_spec</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-groovy</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-twitter</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-mail</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-smpp</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-jms</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-script</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-xmpp</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-velocity</artifactId>
<version>${camel.version}</version>
</dependency>
<dependency>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-runner</artifactId>
<version>3.0.6-oss</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-core</artifactId>
<version>3.0.6-oss</version>
<scope>provided</scope>
</dependency>
</dependencies>
<!-- <build> <resources> <resource> <directory>${basedir}/ajsc-shared-config/etc</directory>
</resource> </resources> </build> -->
<profiles>
<!-- Use this profile to run the AJSC locally. This profile can be successfully
shutdown WITHIN eclipse even in a Windows environment. Debugging is also
available with this profile. -->
<profile>
<id>docker</id>
<properties>
<skip.docker.build>false</skip.docker.build>
<skip.docker.tag>false</skip.docker.tag>
<skip.docker.push>false</skip.docker.push>
</properties>
</profile>
<profile>
<id>runLocal</id>
<build>
<defaultGoal>initialize</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>initialize</phase>
<configuration>
<target name="runLocal">
<ant antfile="${basedir}/antBuild/build.xml" target="runLocal" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>runAjsc</id>
<build>
<defaultGoal>initialize</defaultGoal>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.3.2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>java</goal>
</goals>
<configuration>
<!-- In order to better mimic a SOA cloud installation of AJSC (and
to help eliminate Maven/Eclipse/AJSC classpath issues that may be difficult
to diagnose), within this profile used to run locally, we are NOT including
project dependencies. These will be loaded by AJSC from $AJSC_HOME/extJars.
The only jar needed to run AJSC is the ajsc-runner.jar, and therefore is
the only dependency required by this profile to run locally. -->
<includeProjectDependencies>false</includeProjectDependencies>
<includePluginDependencies>true</includePluginDependencies>
<executable>java</executable>
<mainClass>com.att.ajsc.runner.Runner</mainClass>
<executableDependency>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-runner</artifactId>
</executableDependency>
<additionalClasspathElements>
<additionalClasspathElement>${basedir}/ajsc-shared-config/etc</additionalClasspathElement>
</additionalClasspathElements>
<environmentVariables>
<AJSC_HOME>${runAjscHome}</AJSC_HOME>
</environmentVariables>
<!-- Main AJSC System Properties below (necessary for proper startup) -->
<systemProperties>
<systemProperty>
<key>AJSC_HOME</key>
<value>${runAjscHome}</value>
</systemProperty>
<systemProperty>
<key>AJSC_HOME</key>
<value>${runAjscHome}</value>
</systemProperty>
<systemProperty>
<key>AJSC_CONF_HOME</key>
<value>${basedir}/bundleconfig-local</value>
</systemProperty>
<systemProperty>
<key>logback.configurationFile</key>
<value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
</systemProperty>
<systemProperty>
<key>com.att.eelf.logging.file</key>
<value>logback.xml</value>
</systemProperty>
<systemProperty>
<key>com.att.eelf.logging.path</key>
<value>${basedir}/ajsc-shared-config/etc</value>
</systemProperty>
<systemProperty>
<key>logging.config</key>
<value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
</systemProperty>
<systemProperty>
<key>AJSC_SHARED_CONFIG</key>
<value>${basedir}/ajsc-shared-config</value>
</systemProperty>
<!-- Please, NOTE: The following 2 system properties will normally
be set within the sys-props.properties file once deployed to a node. We are
setting them HERE to run locally to make more efficient use of maven variable
replacement for ${basedir} -->
<!-- AJSC_EXTERNAL_LIB_FOLDERS represents the particular jars that
will be externalized on a CSI node. This includes dme2 and csm related artifact. -->
<sysproperty>
<key>AJSC_EXTERNAL_LIB_FOLDERS</key>
<value>${basedir}/target/commonLibs</value>
</sysproperty>
<!-- AJSC_EXTERNAL_PROPERTIES_FOLDERS represents the particular
files that may need to be added to the classpath. These files will be externalized
on a CSI node. This includes dme2 and csm related artifact (such as csm-config-app.properties).
Failure to have these files on the classpath may result in errors thrown
by csm framework. -->
<sysproperty>
<key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
<value>${basedir}/ajsc-shared-config/etc</value>
</sysproperty>
<systemProperty>
<key>AJSC_SERVICE_NAMESPACE</key>
<value>${module.ajsc.namespace.name}</value>
</systemProperty>
<systemProperty>
<key>AJSC_SERVICE_VERSION</key>
<value>${module.ajsc.namespace.version}</value>
</systemProperty>
<systemProperty>
<key>SOACLOUD_SERVICE_VERSION</key>
<value>${project.version}</value>
</systemProperty>
<systemProperty>
<key>server.port</key>
<value>${serverPort}</value>
</systemProperty>
</systemProperties>
<!-- Command Line Arguments to add to the java command. Here, you
can specify the port as well as the Context you want your service to run
in. Use context=/ to run in an unnamed Context (Root Context). The default
configuration of the AJSC is to run under the / Context. Setting the port
here can aid during the development phase of your service. However, you can
leave this argument out entirely, and the AJSC will default to using an Ephemeral
port. -->
<arguments>
<argument>context=/</argument>
<argument>port=${serverPort}</argument>
<argument>sslport=${sslport}</argument>
</arguments>
</configuration>
</execution>
</executions>
<configuration>
<executable>java</executable>
</configuration>
<dependencies>
<dependency>
<groupId>com.att.ajsc</groupId>
<artifactId>ajsc-runner</artifactId>
<version>${ajscRuntimeVersion}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>standardbuild</id>
<activation>
<file>
<exists>src</exists>
</file>
</activation>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<excludes>
<exclude>extApps/*.*</exclude>
<exclude>${module.ajsc.namespace.name}/**</exclude>
</excludes>
</resource>
<resource>
<directory>src/main/ajsc/\${namespace}_${namespaceVersion}/\${namespace}/\${namespaceVersion}</directory>
<excludes>
<exclude>**/*.route</exclude>
<exclude>**/*.props</exclude>
<exclude>**/*.xslt</exclude>
<exclude>**/*.vm</exclude>
<exclude>**/*.jar</exclude>
<exclude>**/*.xml</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-eclipse-compiler</artifactId>
<version>2.8.0-01</version>
<extensions>true</extensions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
</execution>
</executions>
<configuration>
<executable>bash</executable>
<arguments>
<argument>runServer.sh</argument>
</arguments>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.9</version>
<executions>
<execution>
<id>add-source-groovy-ajsc-arch-parent</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>src/main/groovy</source>
</sources>
</configuration>
</execution>
<execution>
<id>add-test-source-groovy-ajsc-arch-parent</id>
<phase>generate-test-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/test/groovy</source>
</sources>
</configuration>
</execution>
<execution>
<id>regex-properties-ajsc-arch-parent</id>
<phase>initialize</phase>
<goals>
<goal>regex-properties</goal>
</goals>
<configuration>
<regexPropertySettings>
<regexPropertySetting>
<name>replaceWinFilePath</name>
<value>${runAjscHome}</value>
<regex>\\</regex>
<replacement>/</replacement>
<failIfNoMatch>false</failIfNoMatch>
</regexPropertySetting>
<regexPropertySetting>
<name>replaceWinBasedirPath</name>
<value>${basedir}</value>
<regex>\\</regex>
<replacement>/</replacement>
<failIfNoMatch>false</failIfNoMatch>
</regexPropertySetting>
</regexPropertySettings>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<id>write-project-properties-ajsc-arch-parent</id>
<phase>generate-resources</phase>
<goals>
<goal>write-project-properties</goal>
</goals>
<configuration>
<outputFile>
${project.build.outputDirectory}/build.properties
</outputFile>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>make-assembly-ajsc-arch-parent</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>${project.artifactId}</finalName>
<descriptors>
<descriptor>src/main/assemble/ajsc_runtime_assembly.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.groovy.maven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<id>gmaven-ajsc-arch-parent</id>
<phase>package</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<sourcepath>src/main/groovy</sourcepath>
<source>
import ajsc.AssemblyService;
ajsc.AssemblyService.getBasedir(project.basedir.getAbsolutePath(),"${distFilesRoot}")
</source>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>prep_service_runtime-ajsc-arch-parent</id>
<phase>generate-resources</phase>
<configuration>
<target name="prep_service_runtime">
<echo message="ENTERING 'copy_services_template' ant tasks" />
<!-- <filter token="basedir" value="${basedir}" /> -->
<!-- delete any prior stating stuff before package phase -->
<delete dir="target/versioned-ajsc" includes="**/*" />
<delete dir="target/versioned-runtime" includes="**/*" />
<delete dir="target/CDP" includes="**/*" />
<!-- This is where replacer plugin replaces tokens (Example: __module_ajsc_namespace_name__
is replaced by module.ajsc.namespace.name) -->
<copy todir="target/versioned-ajsc">
<fileset dir="src/main/ajsc" includes="**/*" />
</copy>
<!-- Copying the CDP, bundleconfig, and StaticContent to the target
directory for future use by replacer plugin -->
<copy todir="target/CDP" failonerror="false">
<fileset dir="CDP" includes="**/*.sh" />
</copy>
<copy flatten="true" file="CDP/SampleBlueprint.xml"
failonerror="false"
tofile="target/CDP/${module.ajsc.namespace.name}Blueprint.xml" />
<copy todir="target/staticContent" failonerror="false">
<fileset dir="staticContent" includes="**/*" />
</copy>
<copy todir="target/bundleconfig" failonerror="false">
<!-- filtering="true"> -->
<fileset dir="bundleconfig" />
</copy>
<echo message="EXITING 'copy_services_template' ant tasks" />
<echo message="ENTERING 'copy_runtime_template' ant tasks" />
<copy todir="target/versioned-runtime">
<fileset dir="src/main/runtime" includes="**/*" />
</copy>
<delete
file="target/versioned-runtime/context/__module.ajsc.namespace.name__#__module.ajsc.namespace.version__.context" />
<copy flatten="true"
file="src/main/runtime/context/__module.ajsc.namespace.name__#__module.ajsc.namespace.version__.context"
tofile="target/versioned-runtime/context/${module.ajsc.namespace.name}#${module.ajsc.namespace.version}.context" />
<delete
file="target/versioned-runtime/deploymentPackage/__module.ajsc.namespace.name__#__module.ajsc.namespace.version__.json" />
<copy flatten="true"
file="src/main/runtime/deploymentPackage/__module.ajsc.namespace.name__#__module.ajsc.namespace.version__.json"
tofile="target/versioned-runtime/deploymentPackage/${module.ajsc.namespace.name}#${module.ajsc.namespace.version}.json" />
<delete
file="target/versioned-runtime/shiroRole/contextadmin#__module.ajsc.namespace.name__.json" />
<copy flatten="true"
file="src/main/runtime/shiroRole/contextadmin#__module.ajsc.namespace.name__.json"
tofile="target/versioned-runtime/shiroRole/contextadmin#${module.ajsc.namespace.name}.json" />
<delete
file="target/versioned-runtime/shiroUserRole/ajsc#contextAdmin#__module.ajsc.namespace.name__.json" />
<copy flatten="true"
file="src/main/runtime/shiroUserRole/ajsc#contextadmin#__module.ajsc.namespace.name__.json"
tofile="target/versioned-runtime/shiroUserRole/ajsc#contextadmin#${module.ajsc.namespace.name}.json" />
<echo message="EXITING 'copy_runtime_template' ant tasks" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<id>clrf</id>
<phase>package</phase>
<configuration>
<tasks>
<fixcrlf
srcdir="${basedir}/target/swm/package/nix/dist_files${distFilesRoot}"
includes="**/*.sh,**/*.xml,**/*.properties,**/*.xsd" />
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<execution>
<id>prep_home_directory_for_swm_pkgcreate-ajsc-arch-parent</id>
<phase>package</phase>
<configuration>
<target name="prep_home_directory_for_swm_pkgcreate">
<ant antfile="${basedir}/antBuild/build.xml" target="prep_home_directory_for_swm_pkgcreate" />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>copy-dependencies-ajsc-arch-parent</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeScope>runtime</includeScope>
<excludeArtifactIds>ajsc-bom,ajsc-core,ajsc-runner,ajsc-war</excludeArtifactIds>
<outputDirectory>${project.build.directory}/userjars</outputDirectory>
<silent>true</silent>
</configuration>
</execution>
<execution>
<id>copy-dependencies-ajsc-arch-parent-commonLibs</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeScope>provided</includeScope>
<includeGroupIds>net.cingular.enterprise,com.att.aft,dom4j</includeGroupIds>
<!-- <includeGroupIds>com.att.aft</includeGroupIds> -->
<outputDirectory>${project.build.directory}/commonLibs</outputDirectory>
<silent>true</silent>
</configuration>
</execution>
<execution>
<id>copyrunner</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<includeArtifactIds>ajsc-runner</includeArtifactIds>
<outputDirectory>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>copyconfig</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}/etc</outputDirectory>
<resources>
<resource>
<directory>src/main/config</directory>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>copyscript</id>
<phase>package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}/bin</outputDirectory>
<resources>
<resource>
<directory>src/main/scripts</directory>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>copy-docker-file</id>
<phase>prepare-package</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${dockerLocation}</outputDirectory>
<overwrite>true</overwrite>
<resources>
<resource>
<directory>${basedir}/src/main/resources/docker</directory>
<filtering>true</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.2</version>
<executions>
<execution>
<id>google-replacer-ajsc-arch-parent</id>
<phase>prepare-package</phase>
<goals>
<goal>replace</goal>
</goals>
<configuration>
<basedir>${project.build.directory}</basedir>
<includes>
<include>staticContent/**/*.html</include>
<include>CDP/**</include>
<include>bundleconfig/**</include>
<include>versioned-runtime/**/*.context</include>
<include>versioned-runtime/**/*.json</include>
<include>versioned-ajsc/**/*.route</include>
<include>versioned-ajsc/**/*.groovy</include>
<include>versioned-ajsc/**/*.xml</include>
<include>classes/*.properties</include>
<include>swm/package/nix/dist_files${distFilesRoot}/etc/*.properties</include>
</includes>
<escape>true</escape>
<replacements>
<replacement>
<token>__module_ajsc_namespace_name__</token>
<value>${module.ajsc.namespace.name}</value>
</replacement>
<replacement>
<token>__module_ajsc_namespace_version__</token>
<value>${module.ajsc.namespace.version}</value>
</replacement>
<replacement>
<token>__ajscHome__</token>
<value>${replaceWinFilePath}</value>
</replacement>
<replacement>
<token>__projectGroupId__</token>
<value>${project.groupId}</value>
</replacement>
<replacement>
<token>__projectArtifactId__</token>
<value>${project.artifactId}</value>
</replacement>
<replacement>
<token>__projectVersion__</token>
<value>${project.version}</value>
</replacement>
<replacement>
<token>__basedir__</token>
<value>${replaceWinBasedirPath}</value>
</replacement>
</replacements>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.14.1</version>
<configuration>
<excludes>
<exclude>**/AbstractTest.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</profile>
</profiles>
</project>