Change of the parent project to aai-parent
[aai/babel.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3
4     ============LICENSE_START=======================================================
5     org.onap.aai
6     ================================================================================
7     Copyright (c) 2017-2019 AT&T Intellectual Property. All rights reserved.
8     Copyright (c) 2017-2019 European Software Marketing Ltd.
9     ================================================================================
10     Licensed under the Apache License, Version 2.0 (the "License");
11     you may not use this file except in compliance with the License.
12     You may obtain a copy of the License at
13
14           http://www.apache.org/licenses/LICENSE-2.0
15
16     Unless required by applicable law or agreed to in writing, software
17     distributed under the License is distributed on an "AS IS" BASIS,
18     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19     See the License for the specific language governing permissions and
20     limitations under the License.
21     ============LICENSE_END=========================================================
22
23 -->
24 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
25         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
26         <modelVersion>4.0.0</modelVersion>
27
28         <parent>
29                 <groupId>org.onap.aai.aai-common</groupId>
30                 <artifactId>aai-parent</artifactId>
31                 <version>1.7.3</version>
32         </parent>
33
34         <groupId>org.onap.aai</groupId>
35         <artifactId>babel</artifactId>
36         <version>1.8.0-SNAPSHOT</version>
37         <packaging>jar</packaging>
38
39         <name>aai-babel</name>
40         <description>ONAP AAI Babel Microservice</description>
41
42         <properties>
43                 <!-- Spring boot version -->
44
45                 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
46                 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
47
48                 <aai.schema.source.folder>onap/aai_schema</aai.schema.source.folder>
49                 <aai.schema.target.folder>${project.build.directory}/aai-schema</aai.schema.target.folder>
50
51                 <sonar.jacoco.reportPath />
52                 <sonar.jacoco.itReportPath />
53                 <sonar.jacoco.reportMissing.force.zero />
54                 
55                 <jacoco.line.coverage.limit>0.90</jacoco.line.coverage.limit>
56
57                 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
58                 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
59                 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
60
61                 <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
62
63         <!-- docker related properties -->
64                 <docker.fabric.version>0.28.0</docker.fabric.version>
65                 <aai.docker.version>1.0.0</aai.docker.version>
66                 <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
67                 </aai.build.directory>
68                 <aai.docker.namespace>onap</aai.docker.namespace>
69                 <aai.base.image>alpine</aai.base.image>
70                 <aai.base.image.version>1.6.0</aai.base.image.version>
71
72                 <!-- Dependency Versions -->
73                 <sdc.tosca.version>1.5.1</sdc.tosca.version>
74
75                 <javax.ws.rs.version>2.1</javax.ws.rs.version>
76                 <mvn.jaxb2.version>0.13.2</mvn.jaxb2.version>
77                 <aai-schema.group.id>org.onap.aai.schema-service</aai-schema.group.id>
78                 <aai-schema.version>1.7.6</aai-schema.version>
79
80                 <sdc.distribution.client.version>1.3.0</sdc.distribution.client.version>
81                 <xmlunit.version>1.6</xmlunit.version>
82
83                 <antrun.version>1.8</antrun.version>
84
85                 <javax.activation.version>1.1.1</javax.activation.version>
86         <!-- This will be used for the docker images as the default format of maven build has issues -->
87                 <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
88
89         </properties>
90
91         <profiles>
92         <!-- Docker profile to be used for building docker image and pushing to nexus -->
93                 <profile>
94                         <id>docker</id>
95                         <build>
96                                 <plugins>
97                                         <plugin>
98                                                 <groupId>org.codehaus.mojo</groupId>
99                                                 <artifactId>build-helper-maven-plugin</artifactId>
100                                                 <version>3.0.0</version>
101                                                 <executions>
102                                                         <execution>
103                                                                 <phase>pre-clean</phase>
104                                                                 <id>parse-version</id>
105                                                                 <goals>
106                                                                         <goal>parse-version</goal>
107                                                                 </goals>
108                                                         </execution>
109                                                 </executions>
110                                         </plugin>
111                                         <plugin>
112                                                 <groupId>org.codehaus.groovy.maven</groupId>
113                                                 <artifactId>gmaven-plugin</artifactId>
114                                                 <version>1.0</version>
115                                                 <executions>
116                                                         <execution>
117                                                                 <phase>pre-clean</phase>
118                                                                 <goals>
119                                                                         <goal>execute</goal>
120                                                                 </goals>
121                                                                 <configuration>
122                                                                         <source>
123                                                                                 def userAaiBaseImage = session.userProperties['aai.base.image'];
124                                                                                 def userAaiCommonVersion = session.userProperties['aai.base.image.version'];
125                                                                                 if (userAaiCommonVersion != null) {
126                                                                                 project.properties['aai.base.image.version'] = userAaiCommonVersion;
127                                                                                 }
128                                                                                 if (userAaiBaseImage != null) {
129                                                                                 project.properties['aai.base.image'] = userAaiBaseImage;
130                                                                                 }
131                                                                                 log.info 'Base image flavour: ' + project.properties['aai.base.image'];
132                                                                                 log.info 'Base image version: ' + project.properties['aai.base.image.version'];
133                                                                         </source>
134                                                                 </configuration>
135                                                         </execution>
136                                                 </executions>
137                                         </plugin>
138                                         <plugin>
139                                                 <groupId>io.fabric8</groupId>
140                                                 <artifactId>docker-maven-plugin</artifactId>
141                                                 <version>${docker.fabric.version}</version>
142                                                 <configuration>
143                                                         <verbose>true</verbose>
144                                                         <apiVersion>1.23</apiVersion>
145                                                         <images>
146                                                                 <image>
147                                                                         <name>${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l
148                                                                         </name>
149                                                                         <build>
150                                                                                 <filter>@</filter>
151                                                                                 <tags>
152                                                                                         <tag>latest</tag>
153                                                                                         <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
154                                                                                         <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-${maven.build.timestamp}</tag>
155                                                                                 </tags>
156                                                                                 <cleanup>try</cleanup>
157                                                                                 <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
158                                                                                 <assembly>
159                                                                                         <inline>
160                                                                                                 <fileSets>
161                                                                                                         <fileSet>
162                                                                                                                 <directory>${aai.build.directory}</directory>
163                                                                                                                 <outputDirectory>/${project.artifactId}</outputDirectory>
164                                                                                                         </fileSet>
165                                                                                                 </fileSets>
166                                                                                         </inline>
167                                                                                 </assembly>
168                                                                         </build>
169                                                                 </image>
170                                                         </images>
171                                                 </configuration>
172                                                 <executions>
173                                                         <execution>
174                                                                 <id>clean-images</id>
175                                                                 <phase>pre-clean</phase>
176                                                                 <goals>
177                                                                         <goal>remove</goal>
178                                                                 </goals>
179                                                                 <configuration>
180                                                                         <removeAll>true</removeAll>
181                                                                 </configuration>
182                                                         </execution>
183                                                         <execution>
184                                                                 <id>generate-images</id>
185                                                                 <phase>package</phase>
186                                                                 <goals>
187                                                                         <goal>build</goal>
188                                                                 </goals>
189                                                         </execution>
190                                                         <execution>
191                                                                 <id>push-images</id>
192                                                                 <phase>deploy</phase>
193                                                                 <goals>
194                                                                         <goal>push</goal>
195                                                                 </goals>
196                                                         </execution>
197                                                 </executions>
198                                         </plugin>
199                                 </plugins>
200                         </build>
201                 </profile>
202         </profiles>
203         <dependencies>
204                 <dependency>
205                         <groupId>org.springframework.boot</groupId>
206                         <artifactId>spring-boot-starter-jetty</artifactId>
207                 </dependency>
208                 <dependency>
209                         <groupId>org.springframework.boot</groupId>
210                         <artifactId>spring-boot-starter-jersey</artifactId>
211                         <exclusions>
212                                 <exclusion>
213                                         <groupId>org.springframework.boot</groupId>
214                                         <artifactId>spring-boot-starter-tomcat</artifactId>
215                                 </exclusion>
216                         </exclusions>
217                 </dependency>
218                 <dependency>
219                         <groupId>org.onap.aai.logging-service</groupId>
220                         <artifactId>common-logging</artifactId>
221                 </dependency>
222                 <dependency>
223                         <groupId>ch.qos.logback</groupId>
224                         <artifactId>logback-classic</artifactId>
225                 </dependency>
226                 <dependency>
227                         <groupId>ch.qos.logback</groupId>
228                         <artifactId>logback-core</artifactId>
229                 </dependency>
230                 <dependency>
231                         <groupId>commons-codec</groupId>
232                         <artifactId>commons-codec</artifactId>
233                 </dependency>
234                 <dependency>
235                         <groupId>org.apache.commons</groupId>
236                         <artifactId>commons-compress</artifactId>
237                 </dependency>
238                 <dependency>
239                         <groupId>org.apache.commons</groupId>
240                         <artifactId>commons-lang3</artifactId>
241                 </dependency>
242                 <dependency>
243                         <groupId>javax.ws.rs</groupId>
244                         <artifactId>javax.ws.rs-api</artifactId>
245                         <version>2.1</version>
246                 </dependency>
247                 <dependency>
248                         <groupId>org.codehaus.groovy</groupId>
249                         <artifactId>groovy</artifactId>
250                 </dependency>
251                 <dependency>
252                         <groupId>org.onap.sdc.sdc-tosca</groupId>
253                         <artifactId>sdc-tosca</artifactId>
254                         <version>${sdc.tosca.version}</version>
255                 </dependency>
256                 <dependency>
257                         <groupId>org.onap.aai</groupId>
258                         <artifactId>rest-client</artifactId>
259                 </dependency>
260                 
261                 <!-- Testing -->
262                 <dependency>
263                         <groupId>org.springframework.boot</groupId>
264                         <artifactId>spring-boot-starter-test</artifactId>
265                         <scope>test</scope>
266                 </dependency>
267                 <dependency>
268                         <groupId>org.onap.sdc.sdc-distribution-client</groupId>
269                         <artifactId>sdc-distribution-client</artifactId>
270                         <version>${sdc.distribution.client.version}</version>
271                         <scope>test</scope>
272                 </dependency>
273                 <dependency>
274                         <groupId>xmlunit</groupId>
275                         <artifactId>xmlunit</artifactId>
276                         <version>${xmlunit.version}</version>
277                         <scope>test</scope>
278                 </dependency>
279                 <dependency>
280                         <groupId>javax.xml.bind</groupId>
281                         <artifactId>jaxb-api</artifactId>
282                 </dependency>
283                 <dependency>
284                         <groupId>com.sun.xml.bind</groupId>
285                         <artifactId>jaxb-core</artifactId>
286                 </dependency>
287                 <dependency>
288                         <groupId>com.sun.xml.bind</groupId>
289                         <artifactId>jaxb-impl</artifactId>
290                 </dependency>
291                 <dependency>
292                         <groupId>javax.activation</groupId>
293                         <artifactId>activation</artifactId>
294                         <version>${javax.activation.version}</version>
295                 </dependency>
296         </dependencies>
297
298         <build>
299                 <plugins>
300                         <plugin>
301                                 <groupId>org.springframework.boot</groupId>
302                                 <artifactId>spring-boot-maven-plugin</artifactId>
303                                 <version>${spring.boot.version}</version>
304                                 <configuration>
305                                         <jvmArguments>
306                                                 -DCONFIG_HOME=./appconfig-local
307                                                 -DAPP_HOME=.
308                                                 -Dtosca.mappings.config=./appconfig-local/tosca-mappings.json
309                                                 -DKEY_STORE_PASSWORD=${KEY_STORE_PASSWORD}
310                                         </jvmArguments>
311                                 </configuration>
312                                 <executions>
313                                         <execution>
314                                                 <goals>
315                                                         <goal>repackage</goal>
316                                                 </goals>
317                                         </execution>
318                                 </executions>
319                         </plugin>
320                         <plugin>
321                                 <groupId>org.apache.maven.plugins</groupId>
322                                 <artifactId>maven-dependency-plugin</artifactId>
323                                 <executions>
324                                         <execution>
325                                                 <id>unpack</id>
326                                                 <phase>initialize</phase>
327                                                 <goals>
328                                                         <goal>unpack</goal>
329                                                 </goals>
330                                                 <configuration>
331                                                         <artifactItems>
332                                                                 <artifactItem>
333                                                                         <groupId>${aai-schema.group.id}</groupId>
334                                                                         <artifactId>aai-schema</artifactId>
335                                                                         <version>${aai-schema.version}</version>
336                                                                         <type>jar</type>
337                                                                         <includes>${aai.schema.source.folder}/aai_schema_v**.xsd</includes>
338                                                                         <outputDirectory>${project.build.directory}/tmp</outputDirectory>
339                                                                 </artifactItem>
340                                                         </artifactItems>
341                                                 </configuration>
342                                         </execution>
343                                 </executions>
344                         </plugin>
345                         <plugin>
346                                 <groupId>org.apache.maven.plugins</groupId>
347                                 <artifactId>maven-antrun-plugin</artifactId>
348                                 <version>${antrun.version}</version>
349                                 <executions>
350                                         <execution>
351                                                 <id>Flatten XSDs</id>
352                                                 <phase>initialize</phase>
353                                                 <goals>
354                                                         <goal>run</goal>
355                                                 </goals>
356                                                 <configuration>
357                                                         <target>
358                                                                 <copy todir="${aai.schema.target.folder}" flatten="true">
359                                                                         <fileset dir="${project.build.directory}/tmp">
360                                                                                 <include name="**/*.xsd" />
361                                                                         </fileset>
362                                                                 </copy>
363                                                         </target>
364                                                 </configuration>
365                                         </execution>
366                                 </executions>
367                         </plugin>
368                         <plugin>
369                                 <groupId>org.jvnet.jaxb2.maven2</groupId>
370                                 <artifactId>maven-jaxb2-plugin</artifactId>
371                                 <version>${mvn.jaxb2.version}</version>
372                                 <executions>
373                                         <execution>
374                                                 <phase>process-sources</phase>
375                                                 <goals>
376                                                         <goal>generate</goal>
377                                                 </goals>
378                                         </execution>
379                                 </executions>
380                                 <configuration>
381                                         <schemaDirectory>${aai.schema.target.folder}</schemaDirectory>
382                                         <generatePackage>org.onap.aai.babel.xml.generator.xsd</generatePackage>
383                                         <generateDirectory>${project.build.directory}/generated-sources</generateDirectory>
384                                         <schemaIncludes>
385                                                 <include>aai_schema_latest.xsd</include>
386                                         </schemaIncludes>
387                                         <extension>true</extension>
388                                         <args>
389                                                 <arg>-Xannotate</arg>
390                                         </args>
391                                         <plugins>
392                                                 <plugin>
393                                                         <groupId>org.jvnet.jaxb2_commons</groupId>
394                                                         <artifactId>jaxb2-basics-annotate</artifactId>
395                                                         <version>0.6.4</version>
396                                                 </plugin>
397                                                 <!-- Add the dependencies with your annotations as 'plugins' below -->
398                                                 <plugin>
399                                                         <groupId>org.jvnet.jaxb2_commons</groupId>
400                                                         <artifactId>jaxb2-annotate-plugin-test-annox-annotations</artifactId>
401                                                         <version>1.0.0</version>
402                                                 </plugin>
403                                         </plugins>
404                                 </configuration>
405                         </plugin>
406                         <plugin>
407                                 <artifactId>exec-maven-plugin</artifactId>
408                                 <groupId>org.codehaus.mojo</groupId>
409                                 <version>1.5.0</version>
410                                 <executions>
411                                         <execution><!-- Run our script to get latest xsd version -->
412                                                 <id>Get latest xsd version</id>
413                                                 <phase>generate-sources</phase>
414                                                 <goals>
415                                                         <goal>exec</goal>
416                                                 </goals>
417                                                 <configuration>
418                                                         <workingDirectory>${basedir}/scripts</workingDirectory>
419                                                         <executable>bash</executable>
420                                                         <commandlineArgs>get-latest-xsd-version.sh ${basedir}</commandlineArgs>
421                                                 </configuration>
422                                         </execution>
423                                 </executions>
424                         </plugin>
425                         <plugin>
426                                 <artifactId>maven-assembly-plugin</artifactId>
427                                 <configuration>
428                                         <descriptors>
429                                                 <descriptor>src/main/assembly/descriptor.xml</descriptor>
430                                         </descriptors>
431                                 </configuration>
432                                 <executions>
433                                         <execution>
434                                                 <id>make-assembly</id>
435                                                 <phase>package</phase>
436                                                 <goals>
437                                                         <goal>single</goal>
438                                                 </goals>
439                                         </execution>
440                                 </executions>
441                         </plugin>
442                         <plugin>
443                                 <groupId>com.mycila</groupId>
444                                 <artifactId>license-maven-plugin</artifactId>
445                                 <version>3.0</version>
446                                 <configuration>
447                                         <header>License.txt</header>
448                                         <includes>
449                                                 <include>src/main/java/**</include>
450                                                 <include>src/test/java/**</include>
451                                                 <include>pom.xml</include>
452                                         </includes>
453                                         <skipExistingHeaders>true</skipExistingHeaders>
454                                 </configuration>
455                                 <executions>
456                                         <execution>
457                                                 <goals>
458                                                         <!-- Set goal from "check" to "format" to auto update license headers -->
459                                                         <goal>check</goal>
460                                                 </goals>
461                                                 <phase>validate</phase>
462                                         </execution>
463                                 </executions>
464                         </plugin>
465                         <plugin>
466                                 <groupId>org.apache.maven.plugins</groupId>
467                                 <artifactId>maven-surefire-plugin</artifactId>
468                                 <configuration>
469                                         <reuseForks>false</reuseForks>
470                                         <forkCount>1</forkCount>
471                                         <environmentVariables>
472                                                 <APP_HOME>.</APP_HOME>
473                                                 <CONFIG_HOME>src/test/resources</CONFIG_HOME>
474                                         </environmentVariables>
475                                 </configuration>
476                         </plugin>
477                         <plugin>
478                                 <groupId>org.apache.maven.plugins</groupId>
479                                 <artifactId>maven-jar-plugin</artifactId>
480                                 <version>3.0.2</version>
481                                 <executions>
482                                         <execution>
483                                                 <phase>package</phase>
484                                                 <goals>
485                                                         <goal>jar</goal>
486                                                 </goals>
487                                                 <configuration>
488                                                         <classifier>client</classifier>
489                                                         <includes>
490                                                                 <include>**/babel/service/data/*</include>
491                                                         </includes>
492                                                 </configuration>
493                                         </execution>
494                                 </executions>
495                         </plugin>
496                         <plugin>
497                                 <groupId>org.apache.maven.plugins</groupId>
498                                 <artifactId>maven-deploy-plugin</artifactId>
499                                 <configuration>
500                                         <classifier>client</classifier>
501                                 </configuration>
502                         </plugin>
503
504
505                         <!-- once we connect aai-parent or oparent 3.0+ we can take out this 
506                              whole section -->
507
508                         <plugin>
509                           <groupId>org.jacoco</groupId>
510                           <artifactId>jacoco-maven-plugin</artifactId>
511                           <version>${jacoco.version}</version>
512                           <configuration>
513                             <!-- Note: This exclusion list should match <sonar.exclusions> property 
514                                  above -->
515                             <excludes>
516                               <exclude>**/gen/**</exclude>
517                               <exclude>**/generated-sources/**</exclude>
518                               <exclude>**/yang-gen/**</exclude>
519                               <exclude>**/pax/**</exclude>
520                               <exclude>org/onap/aai/babel/xml/generator/xsd/*</exclude>
521                             </excludes>
522                           </configuration>
523                           <executions>
524                             <!-- Prepares the property pointing to the JaCoCo runtime agent which 
525                                  is passed as VM argument when Maven the Surefire plugin is executed. -->
526                             <execution>
527                               <id>pre-unit-test</id>
528                               <goals>
529                                 <goal>prepare-agent</goal>
530                               </goals>
531                               <configuration>
532                                 <!-- Sets the path to the file which contains the execution data 
533                                      . -->
534                                 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
535                                 <!-- Sets the name of the property containing the settings for JaCoCo 
536                                      runtime agent. -->
537                                 <propertyName>surefireArgLine</propertyName>
538                               </configuration>
539                             </execution>
540                             <!-- Ensures that the code coverage report for unit tests is created 
541                                  after unit tests have been run. -->
542                             <execution>
543                               <id>post-unit-test</id>
544                               <phase>test</phase>
545                               <goals>
546                                 <goal>report</goal>
547                               </goals>
548                               <configuration>
549                                 <!-- Sets the path to the file which contains the execution data 
550                                      . -->
551                                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
552                                 <!-- Sets the output directory for the code coverage report. -->
553                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
554                               </configuration>
555                             </execution>
556                             <execution>
557                               <id>pre-integration-test</id>
558                               <phase>pre-integration-test</phase>
559                               <goals>
560                                 <goal>prepare-agent</goal>
561                               </goals>
562                               <configuration>
563                                 <!-- Sets the path to the file which contains the execution data 
564                                      . -->
565                                 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
566                                 <!-- Sets the name of the property containing the settings for JaCoCo 
567                                      runtime agent. -->
568                                 <propertyName>failsafeArgLine</propertyName>
569                               </configuration>
570                             </execution>
571                             <!-- Ensures that the code coverage report for integration tests after 
572                                  integration tests have been run. -->
573                             <execution>
574                               <id>post-integration-test</id>
575                               <phase>post-integration-test</phase>
576                               <goals>
577                                 <goal>report</goal>
578                               </goals>
579                               <configuration>
580                                 <!-- Sets the path to the file which contains the execution data 
581                                      . -->
582                                 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
583                                 <!-- Sets the output directory for the code coverage report. -->
584                                 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
585                               </configuration>
586                             </execution>
587                             <execution>
588                               <id>default-check</id>
589                               <goals>
590                                 <goal>check</goal>
591                               </goals>
592                               <configuration>
593                                 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
594                                 <rules>
595                                   <rule implementation="org.jacoco.maven.RuleConfiguration">
596                                     <element>BUNDLE</element>
597                                     <limits>
598                                       <limit implementation="org.jacoco.report.check.Limit">
599                                         <counter>LINE</counter>
600                                         <value>COVEREDRATIO</value>
601                                         <minimum>${jacoco.line.coverage.limit}</minimum>
602                                       </limit>
603                                     </limits>
604                                   </rule>
605                                 </rules>
606                               </configuration>
607                             </execution>
608                           </executions>
609                         </plugin>
610                         <plugin>
611                           <groupId>org.apache.maven.plugins</groupId>
612                           <artifactId>maven-surefire-plugin</artifactId>
613                           <version>3.0.0-M4</version>
614                           <configuration>
615                             <!-- Sets the VM argument line used when unit tests are run. -->
616                             <argLine>${surefireArgLine}</argLine>
617                             <!-- Excludes integration tests when unit tests are run. -->
618                             <excludes>
619                               <exclude>**/IT*.java</exclude>
620                             </excludes>
621                           </configuration>
622                         </plugin>
623                         <plugin>
624                           <groupId>org.apache.maven.plugins</groupId>
625                           <artifactId>maven-failsafe-plugin</artifactId>
626                           <version>3.0.0-M4</version>
627                           <executions>
628                             <!-- Ensures that both integration-test and verify goals of the Failsafe 
629                                  Maven plugin are executed. -->
630                             <execution>
631                               <id>integration-tests</id>
632                               <goals>
633                                 <goal>integration-test</goal>
634                                 <goal>verify</goal>
635                               </goals>
636                               <configuration>
637                                 <!-- Sets the VM argument line used when integration tests are run. -->
638                                 <argLine>${failsafeArgLine}</argLine>
639                               </configuration>
640                             </execution>
641                           </executions>
642                         </plugin>
643                         <plugin>
644                           <groupId>org.sonarsource.scanner.maven</groupId>
645                           <artifactId>sonar-maven-plugin</artifactId>
646                           <version>${sonar.scanner.version}</version>
647                         </plugin>
648                         <!-- end removable sonar config, note the additional exclusion for babel above
649                              -->
650                 </plugins>
651         </build>
652
653 </project>