e1353dca05b64ea9643c389c06eaa7c4ee541724
[oam/tr069-adapter.git] / netconf-server / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>\r
2 <!--\r
3 /*\r
4  * ============LICENSE_START========================================================================\r
5  * O-RAN-SC : tr-069-adapter\r
6  * =================================================================================================\r
7  * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
8  * =================================================================================================\r
9  * This tr-069-adapter software file is distributed by CommScope Inc\r
10  * under the Apache License, Version 2.0 (the "License");\r
11  * you may not use this file except in compliance with the License.\r
12  * You may obtain a copy of the License at\r
13  *\r
14  * http://www.apache.org/licenses/LICENSE-2.0\r
15  *\r
16  * This file is distributed on an "AS IS" BASIS,\r
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
18  * See the License for the specific language governing permissions and\r
19  * limitations under the License.\r
20  * ===============LICENSE_END=======================================================================\r
21 */\r
22 -->\r
23 <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">\r
24    <modelVersion>4.0.0</modelVersion>\r
25    <parent>\r
26       <groupId>org.commscope.tr069adapter</groupId>\r
27       <artifactId>tr069adapter</artifactId>\r
28       <version>1.0.0</version>\r
29    </parent>\r
30    <groupId>org.commscope.tr069adapter.netconf.server</groupId>\r
31    <artifactId>netconf-server</artifactId>\r
32    <name>netconf-server</name>\r
33    <scm>\r
34                 <url>https://gerrit.o-ran-sc.org/r/scp/oam/modeling</url>\r
35   </scm>\r
36    <packaging>jar</packaging>\r
37    <licenses>\r
38       <license>\r
39          <name>The Apache Software License, Version 2.0</name>\r
40          <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>\r
41       </license>\r
42    </licenses>\r
43 \r
44    <properties>\r
45       <docker.image.name>o-ran-sc/tr069adapter-netconf-server</docker.image.name>\r
46    </properties>\r
47    <dependencies>\r
48       <dependency>\r
49          <groupId>org.springframework.boot</groupId>\r
50          <artifactId>spring-boot-starter</artifactId>\r
51          <exclusions>\r
52             <exclusion>\r
53                <groupId>org.springframework.boot</groupId>\r
54                <artifactId>spring-boot-starter-logging</artifactId>\r
55             </exclusion>\r
56          </exclusions>\r
57       </dependency>\r
58       <dependency>\r
59          <groupId>org.springframework.boot</groupId>\r
60          <artifactId>spring-boot-starter-web</artifactId>\r
61          <exclusions>\r
62             <exclusion>\r
63                <groupId>org.springframework.boot</groupId>\r
64                <artifactId>spring-boot-starter-logging</artifactId>\r
65             </exclusion>\r
66          </exclusions>\r
67       </dependency>\r
68       <dependency>\r
69          <groupId>org.springframework.boot</groupId>\r
70          <artifactId>spring-boot-starter-activemq</artifactId>\r
71       </dependency>\r
72       <dependency>\r
73                  <groupId>org.springframework</groupId>\r
74                  <artifactId>spring-jms</artifactId>\r
75           </dependency>\r
76       <dependency>\r
77          <groupId>com.fasterxml.jackson.core</groupId>\r
78          <artifactId>jackson-databind</artifactId>\r
79       </dependency>\r
80       <dependency>\r
81          <groupId>org.opendaylight.netconf</groupId>\r
82          <artifactId>netconf-testtool</artifactId>\r
83          <version>1.7.0</version>\r
84          <exclusions>\r
85             <exclusion>\r
86                <groupId>ch.qos.logback</groupId>\r
87                <artifactId>logback-classic</artifactId>\r
88             </exclusion>\r
89          </exclusions>\r
90       </dependency>\r
91       <dependency>\r
92          <groupId>org.springframework</groupId>\r
93          <artifactId>spring-context</artifactId>\r
94       </dependency>\r
95       <dependency>\r
96          <groupId>org.commscope.tr069adapter.mapper</groupId>\r
97          <artifactId>mapper</artifactId>\r
98          <version>1.0.0</version>\r
99          <classifier>lib</classifier>\r
100       </dependency>\r
101       <dependency>\r
102          <groupId>org.commscope.tr069adapter.common</groupId>\r
103          <artifactId>common</artifactId>\r
104          <version>1.0.0</version>\r
105       </dependency>\r
106       <dependency>\r
107          <groupId>org.springframework.boot</groupId>\r
108          <artifactId>spring-boot-actuator-autoconfigure</artifactId>\r
109       </dependency>\r
110       <dependency>\r
111          <groupId>org.springframework.retry</groupId>\r
112          <artifactId>spring-retry</artifactId>\r
113       </dependency>\r
114       <dependency>\r
115          <groupId>org.springframework</groupId>\r
116          <artifactId>spring-aspects</artifactId>\r
117       </dependency>\r
118       <dependency>\r
119          <groupId>org.mariadb.jdbc</groupId>\r
120          <artifactId>mariadb-java-client</artifactId>\r
121       </dependency>\r
122       <dependency>\r
123          <groupId>org.springframework.boot</groupId>\r
124          <artifactId>spring-boot-starter-data-jpa</artifactId>\r
125       </dependency>\r
126       <dependency>\r
127          <groupId>org.mockito</groupId>\r
128          <artifactId>mockito-core</artifactId>\r
129       </dependency>\r
130       <dependency>\r
131          <groupId>org.springframework.boot</groupId>\r
132          <artifactId>spring-boot-starter-test</artifactId>\r
133          <scope>test</scope>\r
134       </dependency>\r
135       <dependency>\r
136          <groupId>junit</groupId>\r
137          <artifactId>junit</artifactId>\r
138          <scope>test</scope>\r
139          <exclusions>\r
140             <exclusion>\r
141                <groupId>ch.qos.logback</groupId>\r
142                <artifactId>logback-classic</artifactId>\r
143             </exclusion>\r
144          </exclusions>\r
145       </dependency>\r
146       <dependency>\r
147          <groupId>junit</groupId>\r
148          <artifactId>junit-dep</artifactId>\r
149          <version>4.11</version>\r
150          <scope>test</scope>\r
151          <exclusions>\r
152             <exclusion>\r
153                <groupId>ch.qos.logback</groupId>\r
154                <artifactId>logback-classic</artifactId>\r
155             </exclusion>\r
156          </exclusions>\r
157       </dependency>\r
158       <dependency>\r
159          <groupId>com.h2database</groupId>\r
160          <artifactId>h2</artifactId>\r
161          <scope>test</scope>\r
162       </dependency>\r
163    </dependencies>\r
164    <build>\r
165       <plugins>\r
166          <plugin>\r
167             <groupId>org.springframework.boot</groupId>\r
168             <artifactId>spring-boot-maven-plugin</artifactId>\r
169          </plugin>\r
170          <plugin>\r
171             <groupId>net.revelc.code.formatter</groupId>\r
172             <artifactId>formatter-maven-plugin</artifactId>\r
173             <version>${formatter-maven-plugin.version}</version>\r
174             <configuration>\r
175                <configFile>${project.parent.basedir}/eclipse-formatter.xml</configFile>\r
176             </configuration>\r
177             <!-- https://code.revelc.net/formatter-maven-plugin/ use mvn formatter:format\r
178                                         spotless:apply process-sources -->\r
179          </plugin>\r
180          <plugin>\r
181             <groupId>com.diffplug.spotless</groupId>\r
182             <artifactId>spotless-maven-plugin</artifactId>\r
183             <version>${spotless-maven-plugin.version}</version>\r
184             <configuration>\r
185                <java>\r
186                   <removeUnusedImports />\r
187                   <importOrder>\r
188                      <order>com,java,javax,org</order>\r
189                   </importOrder>\r
190                </java>\r
191             </configuration>\r
192             <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven use\r
193                                         mvn spotless:apply to rewrite source files use mvn spotless:check to validate\r
194                                         source files -->\r
195          </plugin>\r
196                  <plugin>\r
197                         <groupId>org.codehaus.mojo</groupId>\r
198                         <artifactId>exec-maven-plugin</artifactId>\r
199                         <version>1.3.2</version>\r
200                         <executions>\r
201                                 <execution>\r
202                                         <id>gerrit-wiki-clone</id>\r
203                                         <goals>\r
204                                                 <goal>exec</goal>\r
205                                         </goals>\r
206                                         <phase>generate-resources</phase>\r
207                                         <configuration>\r
208                                                 <executable>git</executable>\r
209                                                 <arguments>\r
210                                                         <argument>clone</argument>\r
211                                                         <argument>-b</argument>\r
212                                                         <argument>master</argument>\r
213                                                         <argument>https://gerrit.o-ran-sc.org/r/scp/oam/modeling</argument>\r
214                                                         <argument>target/gerrit-wiki</argument>\r
215                                                 </arguments>\r
216                                         </configuration>\r
217                                 </execution>\r
218                         </executions>\r
219                 </plugin>\r
220                 <plugin>\r
221             <artifactId>maven-resources-plugin</artifactId>\r
222             <version>2.6</version>\r
223             <executions>\r
224                 <execution>\r
225                     <id>copy-commscope-yang-models</id>\r
226                     <phase>process-classes</phase>\r
227                     <goals>\r
228                         <goal>copy-resources</goal>\r
229                     </goals>\r
230                     <configuration>\r
231                         <outputDirectory>${basedir}/schemas/base/</outputDirectory>\r
232                         <resources>\r
233                             <resource>\r
234                                 <directory>${basedir}/target/gerrit-wiki/data-model/yang/published/commscope</directory>\r
235                                 <includes>\r
236                                     <include>**/*.*</include>\r
237                                 </includes>\r
238                             </resource>\r
239                         </resources>\r
240                     </configuration>\r
241                 </execution>\r
242                                 <execution>\r
243                     <id>copy-oran-yang-models</id>\r
244                     <phase>process-classes</phase>\r
245                     <goals>\r
246                         <goal>copy-resources</goal>\r
247                     </goals>\r
248                     <configuration>\r
249                         <outputDirectory>${basedir}/schemas/common/</outputDirectory>\r
250                         <resources>\r
251                             <resource>\r
252                                 <directory>${basedir}/target/gerrit-wiki/data-model/yang/published/o-ran/ru-fh/</directory>\r
253                                 <includes>\r
254                                                                         <include>**/o-ran-file-management@2019-07-03.yang</include>\r
255                                                                         <include>**/o-ran-hardware@2019-07-03.yang</include>\r
256                                                                         <include>**/o-ran-software-management@2019-07-03.yang</include>\r
257                                 </includes>\r
258                             </resource>\r
259                         </resources>\r
260                     </configuration>\r
261                 </execution>\r
262                                 <execution>\r
263                     <id>copy-ietf-yang-models</id>\r
264                     <phase>process-classes</phase>\r
265                     <goals>\r
266                         <goal>copy-resources</goal>\r
267                     </goals>\r
268                     <configuration>\r
269                         <outputDirectory>${basedir}/schemas/common/</outputDirectory>\r
270                         <resources>\r
271                             <resource>\r
272                                 <directory>${basedir}/target/gerrit-wiki/data-model/yang/published/ietf/</directory>\r
273                                 <includes>\r
274                                     <include>**/iana-hardware@2018-03-13.yang</include>\r
275                                                                         <include>**/ietf-crypto-types@2019-10-18.yang</include>\r
276                                                                         <include>**/ietf-hardware@2018-03-13.yang</include>\r
277                                                                         <include>**/ietf-inet-types@2013-07-15.yang</include>\r
278                                                                         <include>**/ietf-netconf-acm@2018-02-14.yang</include>\r
279                                                                         <include>**/ietf-yang-types@2013-07-15.yang</include>\r
280                                                                         <include>**/ietf-netconf-monitoring@2010-10-04.yang</include>\r
281                                 </includes>\r
282                             </resource>\r
283                         </resources>\r
284                     </configuration>\r
285                 </execution>\r
286             </executions>\r
287         </plugin>\r
288          <plugin>\r
289             <groupId>org.apache.maven.plugins</groupId>\r
290             <artifactId>maven-surefire-plugin</artifactId>\r
291             <configuration>\r
292                <skipTests>false</skipTests>\r
293             </configuration>\r
294          </plugin>\r
295          <plugin>\r
296             <artifactId>maven-failsafe-plugin</artifactId>\r
297          </plugin>\r
298          <plugin>\r
299             <groupId>io.fabric8</groupId>\r
300             <artifactId>docker-maven-plugin</artifactId>\r
301             <version>${docker-maven-plugin}</version>\r
302             <inherited>false</inherited>\r
303             <executions>\r
304                <execution>\r
305                   <id>generate-policy-agent-image</id>\r
306                   <phase>package</phase>\r
307                   <goals>\r
308                      <goal>build</goal>\r
309                      <goal>save</goal>\r
310                   </goals>\r
311                   <configuration>\r
312                      <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
313                      <images>\r
314                         <image>\r
315                            <name>${docker.image.name}:${build.version}</name>\r
316                            <build>\r
317                               <cleanup>try</cleanup>\r
318                               <contextDir>${basedir}</contextDir>\r
319                               <dockerFile>Dockerfile</dockerFile>\r
320                               <args>\r
321                                  <JAR>${project.build.finalName}.jar</JAR>\r
322                               </args>\r
323                               <tags>\r
324                                  <tag>${project.version}</tag>\r
325                               </tags>\r
326                            </build>\r
327                         </image>\r
328                      </images>\r
329                   </configuration>\r
330                </execution>\r
331                <execution>\r
332                   <id>push-policy-agent-image</id>\r
333                   <goals>\r
334                      <goal>build</goal>\r
335                      <goal>push</goal>\r
336                   </goals>\r
337                   <configuration>\r
338                      <pullRegistry>${env.CONTAINER_PULL_REGISTRY}</pullRegistry>\r
339                      <pushRegistry>${env.CONTAINER_PUSH_REGISTRY}</pushRegistry>\r
340                      <images>\r
341                         <image>\r
342                            <name>${docker.image.name}:${project.version}</name>\r
343                            <build>\r
344                               <contextDir>${basedir}</contextDir>\r
345                               <dockerFile>Dockerfile</dockerFile>\r
346                               <args>\r
347                                  <JAR>${project.build.finalName}.jar</JAR>\r
348                               </args>\r
349                               <tags>\r
350                                  <tag>latest</tag>\r
351                               </tags>\r
352                            </build>\r
353                         </image>\r
354                      </images>\r
355                   </configuration>\r
356                </execution>\r
357             </executions>\r
358          </plugin>\r
359          <!-- support sonar in multi-module project -->\r
360          <plugin>\r
361             <groupId>org.sonarsource.scanner.maven</groupId>\r
362             <artifactId>sonar-maven-plugin</artifactId>\r
363             <version>${sonar-maven-plugin.version}</version>\r
364          </plugin>\r
365       </plugins>\r
366    </build>\r
367     <repositories>\r
368     <repository>\r
369       <id>onap-public</id>\r
370       <url>https://nexus.onap.org/content/groups/public/</url>\r
371       <releases>\r
372         <enabled>true</enabled>\r
373         <updatePolicy>never</updatePolicy>\r
374       </releases>\r
375       <snapshots>\r
376         <enabled>true</enabled>\r
377         <updatePolicy>always</updatePolicy>\r
378       </snapshots>\r
379     </repository>\r
380     <repository>\r
381       <id>onap-staging</id>\r
382       <url>https://nexus.onap.org/content/groups/staging/</url>\r
383       <releases>\r
384         <enabled>true</enabled>\r
385         <updatePolicy>never</updatePolicy>\r
386       </releases>\r
387       <snapshots>\r
388         <enabled>true</enabled>\r
389         <updatePolicy>always</updatePolicy>\r
390       </snapshots>\r
391     </repository>\r
392     <repository>\r
393       <id>ecomp-release</id>\r
394       <name>onap-repository-releases</name>\r
395       <url>https://nexus.onap.org/content/repositories/releases/</url>\r
396       <releases>\r
397         <enabled>true</enabled>\r
398         <updatePolicy>never</updatePolicy>\r
399       </releases>\r
400       <snapshots>\r
401         <enabled>false</enabled>\r
402       </snapshots>\r
403     </repository>\r
404     <repository>\r
405       <id>ecomp-snapshot</id>\r
406       <name>onap-repository-snapshots</name>\r
407       <url>https://nexus.onap.org/content/repositories/snapshots/</url>\r
408       <releases>\r
409         <enabled>false</enabled>\r
410       </releases>\r
411       <snapshots>\r
412         <enabled>true</enabled>\r
413       </snapshots>\r
414     </repository>\r
415   </repositories>\r
416    <issueManagement>\r
417       <system>JIRA</system>\r
418       <url>https://jira.o-ran-sc.org/</url>\r
419    </issueManagement>\r
420 </project>\r