- <dependency>
- <groupId>org.testng</groupId>
- <artifactId>testng</artifactId>
- <version>6.11</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-test</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-beans</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>org.springframework</groupId>
- <artifactId>spring-context</artifactId>
- <version>${spring.version}</version>
- </dependency>
- <dependency>
- <groupId>com.att.eelf</groupId>
- <artifactId>eelf-core</artifactId>
- <version>${eelf.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.derby</groupId>
- <artifactId>derby</artifactId>
- <version>${derby.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- </dependencyManagement>
-
- <pluginRepositories>
- <pluginRepository>
- <id>onap-public</id>
- <url>${onap.nexus.public-url}</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </pluginRepository>
- <pluginRepository>
- <id>onap-staging</id>
- <url>${onap.nexus.staging-url}</url>
- <releases>
- <enabled>true</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </pluginRepository>
- <pluginRepository>
- <id>onap-snapshot</id>
- <url>${onap.nexus.snapshot-url}</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </pluginRepository>
- <pluginRepository>
- <id>opendaylight-mirror</id>
- <name>opendaylight-mirror</name>
- <url>${opendaylight.nexus.public-url}</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </pluginRepository>
- <pluginRepository>
- <id>opendaylight-snapshot</id>
- <name>opendaylight-snapshot</name>
- <url>${opendaylight.nexus.snapshot-url}</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </pluginRepository>
- <!-- Black Duck plugin dependencies -->
- <pluginRepository>
- <id>JCenter</id>
- <name>JCenter Repository</name>
- <url>http://jcenter.bintray.com</url>
- </pluginRepository>
-
- <pluginRepository>
- <id>Restlet</id>
- <name>Restlet Repository</name>
- <url>http://maven.restlet.com</url>
- </pluginRepository>
- </pluginRepositories>
-
-
- <repositories>
- <repository>
- <id>onap-public</id>
- <url>https://nexus.onap.org/content/groups/public</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>always</updatePolicy>
- </snapshots>
- </repository>
- <repository>
- <id>onap-staging</id>
- <url>https://nexus.onap.org/content/groups/staging</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- <updatePolicy>always</updatePolicy>
- </snapshots>
- </repository>
- <repository>
- <id>ecomp-release</id>
- <name>onap-repository-releases</name>
- <url>https://nexus.onap.org/content/repositories/releases</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>ecomp-snapshot</id>
- <name>onap-repository-snapshots</name>
- <url>https://nexus.onap.org/content/repositories/snapshots</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>opendaylight-mirror</id>
- <name>opendaylight-mirror</name>
- <url>https://nexus.opendaylight.org/content/repositories/public/</url>
- <releases>
- <enabled>true</enabled>
- <updatePolicy>never</updatePolicy>
- </releases>
- <snapshots>
- <enabled>false</enabled>
- </snapshots>
- </repository>
- <repository>
- <id>opendaylight-snapshot</id>
- <name>opendaylight-snapshot</name>
- <url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
- <releases>
- <enabled>false</enabled>
- </releases>
- <snapshots>
- <enabled>true</enabled>
- </snapshots>
- </repository>
-
- </repositories>
-
- <distributionManagement>
- <repository>
- <id>ecomp-releases</id>
- <url>https://nexus.onap.org/content/repositories/releases</url>
- </repository>
- <snapshotRepository>
- <id>ecomp-snapshots</id>
- <url>https://nexus.onap.org/content/repositories/snapshots</url>
- </snapshotRepository>
- </distributionManagement>
-
- <build>
- <pluginManagement>
- <plugins>
-
- <!-- Plugins from ONAP version (parent of oparent) -->
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-deploy-plugin</artifactId>
- <!-- This version supports the "deployAtEnd" parameter -->
- <version>2.8</version>
- <configuration>
- <skip />
- </configuration>
- </plugin>
- <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-enforcer-plugin</artifactId>
- <version>3.0.0-M2</version>
- <executions>
- <execution>
- <id>enforce-property</id>
- <goals>
- <goal>enforce</goal>
- </goals>
- <configuration>
- <rules>
- <requireProperty>
- <property>onap.nexus.url</property>
- <message>You must set a onap.nexus.url property in your
- ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
- </requireProperty>
- </rules>
- <fail>true</fail>
- </configuration>
- </execution>
- <execution>
- <id>enforce-no-snapshots</id>
- <goals>
- <goal>enforce</goal>
- </goals>
- <configuration>
- <rules>
- <requireReleaseDeps>
- <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
- <onlyWhenRelease>true</onlyWhenRelease>
- <level>WARN</level>
- </requireReleaseDeps>
- </rules>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
- <plugin>
- <groupId>org.sonarsource.scanner.maven</groupId>
- <artifactId>sonar-maven-plugin</artifactId>
- <version>3.2</version>
- </plugin>
- <!-- end of plugins from ONAP version (parent of oparent) -->
-
- <!-- Plugins from ONAP oparent -->
-
- <plugin>
- <groupId>org.jacoco</groupId>
- <artifactId>jacoco-maven-plugin</artifactId>
- <version>${jacoco.version}</version>
- <configuration>
- <!-- Note: This exclusion list should match <sonar.exclusions> property
- above -->
- <excludes>
- <exclude>**/gen/**</exclude>
- <exclude>**/generated-sources/**</exclude>
- <exclude>**/yang-gen/**</exclude>
- <exclude>**/pax/**</exclude>
- </excludes>
- </configuration>
- <executions>
- <!-- Prepares the property pointing to the JaCoCo runtime agent which
- is passed as VM argument when Maven the Surefire plugin is executed. -->
- <execution>
- <id>pre-unit-test</id>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- <configuration>
- <!-- Sets the path to the file which contains the execution data. -->
- <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
- <!-- Sets the name of the property containing the settings for JaCoCo
- runtime agent. -->
- <propertyName>surefireArgLine</propertyName>
- </configuration>
- </execution>
- <!-- Ensures that the code coverage report for unit tests is created
- after unit tests have been run. -->
- <execution>
- <id>post-unit-test</id>
- <phase>test</phase>
- <goals>
- <goal>report</goal>
- </goals>
- <configuration>
- <!-- Sets the path to the file which contains the execution data. -->
- <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
- <!-- Sets the output directory for the code coverage report. -->
- <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
- </configuration>
- </execution>
- <execution>
- <id>pre-integration-test</id>
- <phase>pre-integration-test</phase>
- <goals>
- <goal>prepare-agent</goal>
- </goals>
- <configuration>
- <!-- Sets the path to the file which contains the execution data. -->
- <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
- <!-- Sets the name of the property containing the settings for JaCoCo
- runtime agent. -->
- <propertyName>failsafeArgLine</propertyName>
- </configuration>
- </execution>
- <!-- Ensures that the code coverage report for integration tests after
- integration tests have been run. -->
- <execution>
- <id>post-integration-test</id>
- <phase>post-integration-test</phase>
- <goals>
- <goal>report</goal>
- </goals>
- <configuration>
- <!-- Sets the path to the file which contains the execution data. -->
- <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
- <!-- Sets the output directory for the code coverage report. -->
- <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.22.0</version>
- <configuration>
- <!-- Sets the VM argument line used when unit tests are run. -->
- <argLine>${surefireArgLine}</argLine>
- <!-- Excludes integration tests when unit tests are run. -->
- <excludes>
- <exclude>**/IT*.java</exclude>
- </excludes>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-failsafe-plugin</artifactId>
- <version>2.22.0</version>
- <executions>
- <!-- Ensures that both integration-test and verify goals of the Failsafe
- Maven plugin are executed. -->
- <execution>
- <id>integration-tests</id>
- <goals>
- <goal>integration-test</goal>
- <goal>verify</goal>
- </goals>
- <configuration>
- <!-- Sets the VM argument line used when integration tests are run. -->
- <argLine>${failsafeArgLine}</argLine>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <!-- End of plugins from ONAP oparent -->
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>properties-maven-plugin</artifactId>
- <version>1.0.0</version>
- <executions>
- <execution>
- <goals>
- <goal>set-system-properties</goal>
- </goals>
- <configuration>
- <properties>
- <property>
- <name>maven.wagon.http.ssl.allowall</name>
- <value>${ssl.allowall}</value>
- </property>
- <property>
- <name>maven.wagon.http.ssl.insecure</name>
- <value>${ssl.insecure}</value>
- </property>
- </properties>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>versions-maven-plugin</artifactId>
- <version>2.5</version>
- <configuration>
- <processAllModules>true</processAllModules>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-scm-plugin</artifactId>
- <version>1.8.1</version>
- <configuration>
- <tag>${project.artifactId}-${project.version}</tag>
- </configuration>
- </plugin>
- </plugins>
- </pluginManagement>
- <plugins>
+ <profiles>
+ <!-- Profiles from ONAP oparent -->
+ <profile>
+ <id>generate-json</id>
+ <activation>
+ <file>
+ <exists>${swagger-properties}</exists>
+ </file>
+ <property>
+ <name>swagger-sdk.generate-json</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>properties-maven-plugin</artifactId>
+ <version>1.0.0</version>
+ <executions>
+ <execution>
+ <phase>initialize</phase>
+ <goals>
+ <goal>read-project-properties</goal>
+ </goals>
+ <configuration>
+ <files>
+ <file>${basedir}/src/main/resources/swagger.properties</file>
+ </files>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>com.github.kongchen</groupId>
+ <artifactId>swagger-maven-plugin</artifactId>
+ <version>3.1.4</version>
+ <configuration>
+ <apiSources>
+ <apiSource>
+ <locations>${api-rest-package}</locations>
+ <schemes>http,https</schemes>
+ <host>${api-host-ip}:${api-host-port}</host>
+ <basePath>${api-base-path}</basePath>
+ <info>
+ <title>${api-title}</title>
+ <version>${api-version}</version>
+ <description>${api-description}</description>
+ <license>
+ <name>${api-license}</name>
+ </license>
+ </info>
+ <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
+ </apiSource>
+ </apiSources>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-install-plugin</artifactId>
+ <version>2.3.1</version>
+ <executions>
+ <execution>
+ <id>install-file-id</id>
+ <phase>install</phase>
+ <goals>
+ <goal>install-file</goal>
+ </goals>
+ <configuration>
+ <file>${basedir}/src/main/resources/swagger.json</file>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}-swagger-schema</artifactId>
+ <version>${project.version}</version>
+ <packaging>json</packaging>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>generate-sdk</id>
+ <activation>
+ <file>
+ <exists>${swagger-json}</exists>
+ </file>
+ <property>
+ <name>swagger-sdk.generate-java-sdk</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.8</version>
+ <executions>
+ <execution>
+ <phase>initialize</phase>
+ <id>ant-create-script</id>
+ <configuration>
+ <exportAntProperties>true</exportAntProperties>
+ <tasks>
+ <taskdef resource="net/sf/antcontrib/antlib.xml"
+ classpathref="maven.plugin.classpath"/>
+ <condition property="is_windows" value="true">
+ <os family="windows"/>
+ </condition>
+ <condition property="isLinux" value="true">
+ <os family="unix"/>
+ </condition>
+ <if>
+ <equals arg1="${is_windows}" arg2="true"/>
+ <then>
+ <property name="swagger.sdk.script.file"
+ value="generated-source-script.bat"/>
+ <echo
+ file="${project.build.directory}${file.separator}generated-source-script.bat"
+ append="true"
+ message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
+ <echo
+ file="${project.build.directory}${file.separator}generated-source-script.bat"
+ append="true"
+ message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
+ </then>
+ <else>
+ <property name="swagger.sdk.script.file"
+ value="generated-source-script.sh"/>
+ <echo
+ file="${project.build.directory}${file.separator}generated-source-script.sh"
+ append="true"
+ message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
+ <echo
+ file="${project.build.directory}${file.separator}generated-source-script.sh"
+ append="true"
+ message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
+ <chmod
+ file="${project.build.directory}${file.separator}generated-source-script.sh"
+ perm="755"/>
+ </else>
+ </if>
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ </plugin>
+ <plugin>
+ <groupId>io.swagger</groupId>
+ <artifactId>swagger-codegen-maven-plugin</artifactId>
+ <version>2.2.1</version>
+ <executions>
+ <execution>
+ <goals>
+ <goal>generate</goal>
+ </goals>
+ <configuration>
+ <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
+ <output>${project.build.directory}/generated-sources</output>
+ <language>java</language>
+ <configOptions>
+ <dateLibrary>joda</dateLibrary>
+ </configOptions>
+ <library>jersey2</library>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}-java-sdk</artifactId>
+ <artifactVersion>${project.version}</artifactVersion>
+ <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
+ <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
+ <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>1.5.0</version>
+ <executions>
+ <execution>
+ <id>swagger-generate-sources</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>exec</goal>
+ </goals>
+ <configuration>
+ <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>3.0.0</version>
+ <executions>
+ <execution>
+ <id>clean-generated-files</id>
+ <phase>generate-sources</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <configuration>
+ <filesets>
+ <fileset>
+ <directory>${project.build.directory}/generated-sources</directory>
+ </fileset>
+ </filesets>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ <dependencies>
+ <dependency>
+ <groupId>org.onap.msb.swagger-sdk</groupId>
+ <artifactId>swagger-sdk</artifactId>
+ <version>1.0.0</version>
+ </dependency>
+ </dependencies>
+ </profile>
+ <profile>
+ <id>sonar-jacoco-aggregate</id>
+ <activation>
+ <property>
+ <name>onap.jacoco.aggregateFile</name>
+ </property>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.jacoco</groupId>
+ <artifactId>jacoco-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>merge</id>
+ <goals>
+ <goal>merge</goal>
+ </goals>
+ <phase>generate-resources</phase>
+ <configuration>
+ <destFile>${onap.jacoco.aggregateFile}</destFile>
+ <fileSets>
+ <fileSet>
+ <directory>${project.basedir}</directory>
+ <includes>
+ <include>**/target/code-coverage/*.exec</include>
+ </includes>
+ </fileSet>
+ </fileSets>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <!-- End of profiles from ONAP oparent -->