1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5 <modelVersion>4.0.0</modelVersion>
8 <groupId>org.onap.oparent</groupId>
9 <artifactId>oparent</artifactId>
10 <version>1.2.3</version>
13 <groupId>org.onap.dcaegen2.services.components</groupId>
14 <artifactId>bbs-event-processor</artifactId>
15 <version>1.0.0-SNAPSHOT</version>
17 <name>dcaegen2-services-bbs-event-processor</name>
18 <description>BBS Re-Registration and CPE Authentication Handler</description>
19 <packaging>jar</packaging>
23 <name>The Apache Software License, Version 2.0</name>
24 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
29 <java.version>8</java.version>
30 <immutables.version>2.7.5</immutables.version>
31 <spring.version>5.1.2.RELEASE</spring.version>
32 <spring-boot.version>2.1.0.RELEASE</spring-boot.version>
33 <tomcat.version>8.5.32</tomcat.version>
34 <slf4j.version>1.7.25</slf4j.version>
35 <junit-platform.version>1.1.0</junit-platform.version>
36 <jacoco.version>0.8.2</jacoco.version>
37 <sdk.version>1.1.2-SNAPSHOT</sdk.version>
38 <common.sdk.version>1.1.3</common.sdk.version>
39 <cbs.version>1.1.3</cbs.version>
40 <hibernate-validator.version>5.2.4.Final</hibernate-validator.version>
41 <wiremock.version>2.21.0</wiremock.version>
42 <springfox-swagger.version>2.8.0</springfox-swagger.version>
43 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
44 <bbs-event-processor.main.class>org.onap.bbs.event.processor.Application</bbs-event-processor.main.class>
45 <dependency.dir.name>libs</dependency.dir.name>
46 <dependency.dir.location>${project.build.directory}/${dependency.dir.name}</dependency.dir.location>
47 <docker.artifact.dir>/opt</docker.artifact.dir>
48 <docker.image.name>onap/${project.groupId}.${project.artifactId}</docker.image.name>
49 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss</maven.build.timestamp.format>
52 <dependencyManagement>
55 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
56 <artifactId>cbs-client</artifactId>
57 <version>${cbs.version}</version>
60 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
61 <artifactId>aai-client</artifactId>
62 <version>${sdk.version}</version>
65 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
66 <artifactId>dmaap-client</artifactId>
67 <version>${sdk.version}</version>
70 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
71 <artifactId>common-dependency</artifactId>
72 <version>${common.sdk.version}</version>
75 <groupId>io.springfox</groupId>
76 <artifactId>springfox-swagger2</artifactId>
77 <version>${springfox-swagger.version}</version>
80 <groupId>io.springfox</groupId>
81 <artifactId>springfox-swagger-ui</artifactId>
82 <version>${springfox-swagger.version}</version>
85 <groupId>org.immutables</groupId>
86 <artifactId>value</artifactId>
87 <version>${immutables.version}</version>
90 <groupId>org.immutables</groupId>
91 <artifactId>gson</artifactId>
92 <version>${immutables.version}</version>
95 <groupId>org.hibernate</groupId>
96 <artifactId>hibernate-validator</artifactId>
97 <version>${hibernate-validator.version}</version>
100 <groupId>org.springframework.boot</groupId>
101 <artifactId>spring-boot-dependencies</artifactId>
102 <version>${spring-boot.version}</version>
104 <scope>import</scope>
107 <groupId>com.github.tomakehurst</groupId>
108 <artifactId>wiremock-jre8</artifactId>
109 <version>${wiremock.version}</version>
112 </dependencyManagement>
116 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
117 <artifactId>cbs-client</artifactId>
120 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
121 <artifactId>aai-client</artifactId>
124 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
125 <artifactId>dmaap-client</artifactId>
128 <groupId>org.onap.dcaegen2.services.sdk.rest.services</groupId>
129 <artifactId>common-dependency</artifactId>
132 <groupId>org.springframework.boot</groupId>
133 <artifactId>spring-boot-starter-web</artifactId>
136 <groupId>org.springframework.boot</groupId>
137 <artifactId>spring-boot-starter-webflux</artifactId>
140 <groupId>org.springframework.boot</groupId>
141 <artifactId>spring-boot-starter-test</artifactId>
145 <groupId>io.springfox</groupId>
146 <artifactId>springfox-swagger2</artifactId>
149 <groupId>io.springfox</groupId>
150 <artifactId>springfox-swagger-ui</artifactId>
153 <groupId>io.projectreactor</groupId>
154 <artifactId>reactor-core</artifactId>
157 <groupId>org.apache.tomcat.embed</groupId>
158 <artifactId>tomcat-embed-core</artifactId>
161 <groupId>org.apache.tomcat.embed</groupId>
162 <artifactId>tomcat-embed-el</artifactId>
165 <groupId>org.apache.tomcat.embed</groupId>
166 <artifactId>tomcat-embed-websocket</artifactId>
169 <groupId>org.immutables</groupId>
170 <artifactId>value</artifactId>
173 <groupId>org.immutables</groupId>
174 <artifactId>gson</artifactId>
177 <groupId>org.junit.jupiter</groupId>
178 <artifactId>junit-jupiter-engine</artifactId>
182 <groupId>org.mockito</groupId>
183 <artifactId>mockito-core</artifactId>
187 <groupId>io.projectreactor</groupId>
188 <artifactId>reactor-test</artifactId>
192 <groupId>org.projectlombok</groupId>
193 <artifactId>lombok</artifactId>
196 <groupId>org.hibernate</groupId>
197 <artifactId>hibernate-validator</artifactId>
200 <groupId>com.github.tomakehurst</groupId>
201 <artifactId>wiremock-jre8</artifactId>
210 <groupId>org.apache.maven.plugins</groupId>
211 <artifactId>maven-compiler-plugin</artifactId>
212 <version>3.7.0</version>
214 <source>${java.version}</source>
215 <target>${java.version}</target>
216 <encoding>${project.build.sourceEncoding}</encoding>
217 <showWarnings>true</showWarnings>
218 <showDeprecation>true</showDeprecation>
222 <groupId>org.apache.maven.plugins</groupId>
223 <artifactId>maven-resources-plugin</artifactId>
224 <version>3.1.0</version>
226 <encoding>${project.build.sourceEncoding}</encoding>
230 <groupId>org.apache.maven.plugins</groupId>
231 <artifactId>maven-enforcer-plugin</artifactId>
237 <groupId>org.apache.maven.plugins</groupId>
238 <artifactId>maven-deploy-plugin</artifactId>
244 <groupId>org.springframework.boot</groupId>
245 <artifactId>spring-boot-maven-plugin</artifactId>
246 <version>${spring-boot.version}</version>
250 <goal>repackage</goal>
256 <groupId>pl.project13.maven</groupId>
257 <artifactId>git-commit-id-plugin</artifactId>
258 <version>2.2.6</version>
261 <groupId>org.apache.maven.plugins</groupId>
262 <artifactId>maven-jar-plugin</artifactId>
263 <version>3.1.1</version>
266 <groupId>com.spotify</groupId>
267 <artifactId>docker-maven-plugin</artifactId>
268 <version>1.2.0</version>
271 <groupId>org.apache.maven.plugins</groupId>
272 <artifactId>maven-surefire-plugin</artifactId>
273 <version>2.19.1</version>
276 <groupId>org.junit.platform</groupId>
277 <artifactId>junit-platform-surefire-provider</artifactId>
278 <version>${junit-platform.version}</version>
286 <groupId>pl.project13.maven</groupId>
287 <artifactId>git-commit-id-plugin</artifactId>
289 <dateFormat>${maven.build.timestamp.format}</dateFormat>
290 <generateGitPropertiesFile>true</generateGitPropertiesFile>
291 <format>json</format>
292 <generateGitPropertiesFilename>${project.build.outputDirectory}/git_info.json</generateGitPropertiesFilename>
296 <id>get-git-info</id>
298 <goal>revision</goal>
304 <groupId>org.apache.maven.plugins</groupId>
305 <artifactId>maven-jar-plugin</artifactId>
309 <addClasspath>true</addClasspath>
310 <classpathPrefix>./${dependency.dir.name}/</classpathPrefix>
311 <useUniqueVersions>false</useUniqueVersions>
312 <mainClass>${bbs-event-processor.main.class}</mainClass>
313 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
316 <Build-Time>${maven.build.timestamp}</Build-Time>
322 <groupId>org.apache.maven.plugins</groupId>
323 <artifactId>maven-dependency-plugin</artifactId>
325 <outputDirectory>${dependency.dir.location}</outputDirectory>
326 <includeScope>runtime</includeScope>
327 <silent>true</silent>
331 <id>copy-external-dependencies</id>
332 <phase>package</phase>
334 <goal>copy-dependencies</goal>
340 <groupId>com.spotify</groupId>
341 <artifactId>docker-maven-plugin</artifactId>
343 <serverId>${onap.nexus.dockerregistry.daily}</serverId>
344 <imageName>${docker.image.name}</imageName>
348 <baseImage>openjdk:${java.version}-jre-alpine</baseImage>
349 <workdir>${docker.artifact.dir}</workdir>
352 <directory>${dependency.dir.location}</directory>
353 <targetPath>${dependency.dir.name}</targetPath>
356 <directory>${project.build.directory}</directory>
357 <include>${project.build.finalName}.jar</include>
361 <expose>8100</expose>
363 <entryPoint>["java", "-jar", "${project.build.finalName}.jar"]</entryPoint>
367 <id>build-bbs-event-processor-image</id>
368 <phase>deploy</phase>
374 <id>tag-and-push-image-latest</id>
375 <phase>deploy</phase>
380 <image>${docker.image.name}:latest</image>
381 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:latest</newName>
382 <pushImage>true</pushImage>
386 <id>tag-and-push-image-with-version</id>
387 <phase>deploy</phase>
392 <image>${docker.image.name}:latest</image>
393 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}</newName>
394 <pushImage>true</pushImage>
398 <id>tag-and-push-image-with-version-and-date</id>
399 <phase>deploy</phase>
404 <image>${docker.image.name}:latest</image>
405 <newName>${onap.nexus.dockerregistry.daily}/${docker.image.name}:${project.version}-${maven.build.timestamp}Z</newName>
406 <pushImage>true</pushImage>