3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
4 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
5 <modelVersion>4.0.0</modelVersion>
6 <groupId>org.acumos</groupId>
7 <artifactId>gateway</artifactId>
8 <version>1.0.0-SNAPSHOT</version>
10 <description>Federated Acumos Interface for inter-acumos and ONAP communication</description>
13 <groupId>org.springframework.boot</groupId>
14 <artifactId>spring-boot-starter-parent</artifactId>
15 <version>1.5.4.RELEASE</version>
19 <groupId>org.springframework.boot</groupId>
20 <artifactId>spring-boot-starter-parent</artifactId>
21 <version>1.5.4.RELEASE</version>
26 <encoding>UTF-8</encoding>
27 <!-- Stand-alone RESTFul application -->
28 <start-class>org.acumos.federation.gateway.Application</start-class>
29 <!-- Jenkins invokes mvn with argument -Dbuild.number=${BUILD_NUMBER} -->
30 <build.number>0</build.number>
31 <eelf.version>1.0.0</eelf.version>
32 <!-- tests require database to be running -->
33 <skipTests>false</skipTests>
34 <!-- Docker daemon -->
35 <docker.host.url>unix:/var/run/docker.sock</docker.host.url>
36 <!-- Docker image registry -->
37 <docker.registry.url>Set by Jenkins</docker.registry.url>
38 <docker.registry.login>Registry userId - supplied by jenkins</docker.registry.login>
39 <docker.registry.password>Registry password - supplied by jenkins</docker.registry.password>
41 <docker.registry.url>registry.hub.docker.io</docker.registry.url>
43 <!-- dependencies versions -->
44 <slf4j.version>1.7.25</slf4j.version>
45 <logback.version>1.2.3</logback.version>
46 <spring.boot.devtools.version>1.5.8.RELEASE</spring.boot.devtools.version>
47 <spring.boot.starter.web.version>1.5.8.RELEASE</spring.boot.starter.web.version>
48 <spring.boot.starter.security.version>1.5.8.RELEASE</spring.boot.starter.security.version>
49 <spring.boot.starter.test.version>1.5.8.RELEASE</spring.boot.starter.test.version>
50 <spring.boot.configuration.processor.version>1.5.8.RELEASE</spring.boot.configuration.processor.version>
51 <!-- All acumos.nexus.* are overridden by Jenkins settings -->
52 <acumos.nexus.url>http://cognita-nexus01.eastus.cloudapp.azure.com:8081</acumos.nexus.url>
53 <acumos.nexus.snapshot.path>repository/repo_cognita_platform_maven_snapshots</acumos.nexus.snapshot.path>
54 <acumos.nexus.release.path>repository/repo_cognita_platform_maven</acumos.nexus.release.path>
55 <maven.build.timestamp.format>yyyy.MM.dd_HH.mm</maven.build.timestamp.format>
60 <id>acumos-snapshots</id>
61 <name>acumos-repository-snapshots</name>
62 <url>${acumos.nexus.url}/${acumos.nexus.snapshot.path}</url>
65 <id>acumos-releases</id>
66 <name>acumos-repository-releases</name>
67 <url>${acumos.nexus.url}/${acumos.nexus.release.path}</url>
70 <id>onap-snapshots</id>
71 <name>ONAP Snapshot Repository</name>
72 <url>${onap.nexus.url}/${onap.nexus.snapshot.path}</url>
75 <id>onap-releases</id>
76 <name>ONAP Release Repository</name>
77 <url>${onap.nexus.url}/${onap.nexus.release.path}</url>
83 <groupId>org.json</groupId>
84 <artifactId>json</artifactId>
85 <version>20160212</version>
88 <groupId>org.slf4j</groupId>
89 <artifactId>slf4j-api</artifactId>
90 <version>${slf4j.version}</version>
93 <groupId>ch.qos.logback</groupId>
94 <artifactId>logback-classic</artifactId>
95 <version>${logback.version}</version>
98 <groupId>ch.qos.logback</groupId>
99 <artifactId>logback-core</artifactId>
100 <version>${logback.version}</version>
104 <groupId>org.acumos</groupId>
105 <artifactId>acumos-docker-client</artifactId>
106 <version>1.0.0-SNAPSHOT</version>
110 <groupId>org.acumos</groupId>
111 <artifactId>acumos-nexus-client</artifactId>
112 <version>1.10.9</version>
115 <groupId>org.springframework.boot</groupId>
116 <artifactId>spring-boot-starter-security</artifactId>
117 <version>${spring.boot.starter.security.version}</version>
120 <groupId>org.springframework.boot</groupId>
121 <artifactId>spring-boot-starter-web</artifactId>
122 <version>${spring.boot.starter.web.version}</version>
126 <groupId>org.springframework.boot</groupId>
127 <artifactId>spring-boot-starter-test</artifactId>
128 <version>${spring.boot.starter.test.version}</version>
132 <groupId>org.springframework.boot</groupId>
133 <artifactId>spring-boot-configuration-processor</artifactId>
134 <version>${spring.boot.configuration.processor.version}</version>
135 <optional>true</optional>
138 <groupId>org.apache.httpcomponents</groupId>
139 <artifactId>httpclient</artifactId>
140 <version>4.5</version>
143 <groupId>org.springframework.shell</groupId>
144 <artifactId>spring-shell</artifactId>
145 <version>1.2.0.RELEASE</version>
148 <groupId>org.acumos.common-dataservice</groupId>
149 <artifactId>cmn-data-svc-client</artifactId>
150 <version>1.9.0-SNAPSHOT</version>
153 <groupId>io.springfox</groupId>
154 <artifactId>springfox-swagger2</artifactId>
155 <version>2.6.1</version>
158 <groupId>io.springfox</groupId>
159 <artifactId>springfox-swagger-ui</artifactId>
160 <version>2.6.1</version>
163 <groupId>com.att.eelf</groupId>
164 <artifactId>eelf-core</artifactId>
165 <version>${eelf.version}</version>
168 <groupId>javax.inject</groupId>
169 <artifactId>javax.inject</artifactId>
173 <groupId>io.jsonwebtoken</groupId>
174 <artifactId>jjwt</artifactId>
175 <version>0.6.0</version>
178 <groupId>org.python</groupId>
179 <artifactId>jython-standalone</artifactId>
180 <version>2.7.1-rc3</version>
183 <groupId>junit</groupId>
184 <artifactId>junit</artifactId>
185 <version>3.8.1</version>
189 <groupId>commons-cli</groupId>
190 <artifactId>commons-cli</artifactId>
191 <version>1.2</version>
194 <groupId>org.apache.commons</groupId>
195 <artifactId>commons-lang3</artifactId>
196 <version>3.6</version>
200 <groupId>junit</groupId>
201 <artifactId>junit</artifactId>
202 <version>4.12</version>
206 <groupId>org.assertj</groupId>
207 <artifactId>assertj-core</artifactId>
208 <version>3.8.0</version>
212 <groupId>org.springframework.boot</groupId>
213 <artifactId>spring-boot-starter-test</artifactId>
214 <version>1.5.3.RELEASE</version>
222 <groupId>org.apache.maven.plugins</groupId>
223 <artifactId>maven-compiler-plugin</artifactId>
224 <version>3.0</version>
231 <groupId>org.apache.maven.plugins</groupId>
232 <artifactId>maven-jar-plugin</artifactId>
236 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
239 <Build-Number>${project.version}.${build.number}</Build-Number>
240 <Build-Time>${maven.build.timestamp}</Build-Time>
247 <goal>test-jar</goal>
253 <groupId>org.springframework.boot</groupId>
254 <artifactId>spring-boot-maven-plugin</artifactId>
258 <goal>repackage</goal>
264 <groupId>org.apache.maven.plugins</groupId>
265 <artifactId>maven-dependency-plugin</artifactId>
266 <version>2.10</version>
269 <id>copy-dependencies</id>
270 <phase>package</phase>
272 <goal>copy-dependencies</goal>
275 <outputDirectory>${project.build.directory}/deps</outputDirectory>
276 <overWriteReleases>false</overWriteReleases>
277 <overWriteSnapshots>false</overWriteSnapshots>
278 <overWriteIfNewer>true</overWriteIfNewer>
284 <groupId>io.fabric8</groupId>
285 <artifactId>docker-maven-plugin</artifactId>
286 <version>0.21.0</version>
288 <verbose>true</verbose>
289 <dockerHost>${docker.host.url}</dockerHost>
290 <registry>${docker.registry.url}</registry>
292 <username>${docker.registry.login}</username>
293 <password>${docker.registry.password}</password>
297 <name>federation-gateway:${project.version}</name>
299 <!-- This is the same FROM used in a Dockerfile -->
300 <!-- <from>openjdk:8-jdk</from> -->
301 <from>frolvlad/alpine-oraclejdk8:slim</from>
304 <tag>${project.version}</tag>
305 <tag>${maven.build.timestamp}</tag>
311 <source>application.properties.template</source>
313 <destName>application.properties</destName>
316 <source>src/test/resources/ist-acumosa.pkcs12</source>
318 <destName>ist-acumosa.pkcs12</destName>
321 <source>src/test/resources/ist-acumosb.pkcs12</source>
323 <destName>ist-acumosb.pkcs12</destName>
326 <source>src/test/resources/acumosTrustStore.jks</source>
328 <destName>acumosTrustStore.jks</destName>
331 <source>target/${project.artifactId}-${project.version}.${project.packaging}</source>
337 <!-- This is the same CMD used in a Dockerfile -->
339 <shell>cd /maven; java -Djava.security.egd=file:/dev/./urandom -jar ${project.artifactId}-${project.version}.${project.packaging}</shell>
344 <name>federation-gateway-test:${project.version}</name>
346 <!-- This is the same FROM used in a Dockerfile -->
347 <!-- <from>openjdk:8-jdk</from> -->
348 <from>frolvlad/alpine-oraclejdk8:slim</from>
351 <tag>${project.version}</tag>
352 <tag>${maven.build.timestamp}</tag>
358 <source>application.properties.template</source>
360 <destName>application.properties</destName>
363 need the following two for server config
366 <source>src/test/resources/acumosa.pkcs12</source>
368 <destName>acumosa.pkcs12</destName>
371 <source>src/test/resources/acumosb.pkcs12</source>
373 <destName>acumosb.pkcs12</destName>
376 <source>src/test/resources/acumosTrustStore.jks</source>
378 <destName>acumosTrustStore.jks</destName>
381 <source>target/${project.artifactId}-${project.version}.${project.packaging}</source>
385 <source>target/${project.artifactId}-${project.version}-tests.${project.packaging}</source>
391 <directory>${basedir}/target/deps/</directory>
392 <outputDirectory>/libs/</outputDirectory>
396 <fileMode>0755</fileMode>
401 <!-- This is the same CMD used in a Dockerfile -->
403 <shell>cd /maven; java -cp ${project.artifactId}-${project.version}.${project.packaging}:${project.artifactId}-${project.version}-tests.${project.packaging}:/libs/* -Djavax.net.ssl.trustStore=acumosTrustStore.jks -Djavax.net.ssl.trustStorePassword=acumos -Djava.security.egd=file:/dev/./urandom org.springframework.boot.loader.PropertiesLauncher</shell>
412 <!-- build is bound to install phase -->
414 <!-- push is bound to deploy phase -->
421 <groupId>org.codehaus.mojo</groupId>
422 <artifactId>license-maven-plugin</artifactId>
423 <version>1.14</version>
425 <licenseName>acumos</licenseName>
426 <licenseResolver>${project.baseUri}/src/license</licenseResolver>
427 <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
428 <processStartTag>===============LICENSE_START=======================================================</processStartTag>
429 <processEndTag>===============LICENSE_END=========================================================</processEndTag>
430 <sectionDelimiter>===================================================================================</sectionDelimiter>
431 <inceptionYear>2017</inceptionYear>
432 <organizationName>AT&T Intellectual Property & Tech Mahindra. All rights reserved.</organizationName>
433 <projectName>Acumos</projectName>
434 <canUpdateCopyright>true</canUpdateCopyright>
435 <canUpdateDescription>true</canUpdateDescription>
436 <canUpdateLicense>true</canUpdateLicense>
437 <emptyLineAfterHeader>true</emptyLineAfterHeader>
439 <include>**/*.java</include>
447 <goal>update-file-header</goal>
449 <phase>process-sources</phase>
455 <groupId>org.jacoco</groupId>
456 <artifactId>jacoco-maven-plugin</artifactId>
457 <version>0.7.6.201602180812</version>
460 <id>default-prepare-agent</id>
462 <goal>prepare-agent</goal>
466 <id>default-report</id>
467 <phase>prepare-package</phase>
477 <distributionManagement>
479 <!-- must match ID in Jenkins settings -->
480 <id>acumos-nexus</id>
481 <name>acumos-repository-snapshots</name>
482 <url>${acumos.nexus.url}/${acumos.nexus.snapshot.path}</url>
483 </snapshotRepository>
485 <!-- must match ID in Jenkins settings -->
486 <id>acumos-nexus</id>
487 <name>acumos-repository-releases</name>
488 <url>${acumos.nexus.url}/${acumos.nexus.release.path}</url>
490 </distributionManagement>