<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">
	<modelVersion>4.0.0</modelVersion>

	<groupId>org.openecomp.sdc</groupId>
	<artifactId>sdc-main</artifactId>
	<version>1.2.0-SNAPSHOT</version>
	<packaging>pom</packaging>
        <name>sdc</name>	
	<properties>

		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>

		<!-- ==================== -->
		<!-- Generic properties -->
		<!-- ==================== -->
		<build.type>-SNAPSHOT</build.type>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<sprint.number>74</sprint.number>

		<!-- 3rd parties versions -->
		<lang3.version>3.3.2</lang3.version>
		<guava.version>18.0</guava.version>
		<titan.version>1.0.0</titan.version>
		<spring-boot.version>1.1.6.RELEASE</spring-boot.version>
		<spring.version>4.3.4.RELEASE</spring.version>
		<spring.security.version>3.2.3.RELEASE</spring.security.version>
		<spring.ldap.version>2.0.1.RELEASE</spring.ldap.version>
        <jersey-bom.version>2.24</jersey-bom.version>
        <servlet-api.version>2.5</servlet-api.version>

		<artifact-generator-api.version>${project.version}</artifact-generator-api.version>
		<artifact-generator-core.version>${project.version}</artifact-generator-core.version>
		<ecomp.version>1.1.0</ecomp.version>
		<dox-common-lib.version>${project.version}</dox-common-lib.version>

		<!-- Elastic Search mapper (reference the elastic search version actually). -->
		<elastic-search.version>2.1.0</elastic-search.version>
		<jetty.version>9.2.10.v20150310</jetty.version>

		<!-- JSON and YAML Parsing -->
		<jackson.version>2.6.2</jackson.version>
		<jackson.yaml.version>2.8.1</jackson.yaml.version>
		<jackson.annotations.version>2.6.0</jackson.annotations.version>

		<!-- Yaml for properties -->
		<snakeyaml.version>1.14</snakeyaml.version>
		<functionaljava.version>4.4</functionaljava.version>
		<httpclient.version>4.4.1</httpclient.version>
		<httpcore.version>4.4.1</httpcore.version>
		<json-simple.version>1.1</json-simple.version>


		<!-- Logging start -->
		<!-- logback -->
        <logback.version>1.1.2</logback.version>
        <slf4j-api.version>1.7.10</slf4j-api.version>
        <commons-codec>1.10</commons-codec>
        <commons-logging>1.2</commons-logging>
		<groovy.version>2.3.5</groovy.version>
		<janino.version>3.0.6</janino.version>

		<!-- aspects -->
		<jcabi.version>0.20.1</jcabi.version>
		<aspectjrt.version>1.8.4</aspectjrt.version>
		<aspectj.version>1.7.4</aspectj.version>
		<jcabi.plugin.version>0.13.2</jcabi.plugin.version>

		<!-- Logging end -->
		<!-- System Metrics -->
		<sigar.version>1.6.4</sigar.version>

		<regex.version>3.0.3</regex.version>

		<codehaus.jackson.core>1.9.2</codehaus.jackson.core>

		<!--GSON-->
		<gson.version>2.3.1</gson.version>

        <!--listen to file changes-->
        <commons-jci-core.version>1.1</commons-jci-core.version>

		<!--TESTING-->
		<mockito.version>2.12.0</mockito.version>
		<junit.version>4.12</junit.version>
		<testng.version>6.9.10</testng.version>
		<extentreports.version>3.0.3</extentreports.version>
		
		<!-- parser-->
		<sdc-tosca-parser.version>1.1.56-SNAPSHOT</sdc-tosca-parser.version>
		
		<!--JaCoCO -->
		<sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
		<sonar.jacoco.reportPath>${project.basedir}/target/jacoco.exec</sonar.jacoco.reportPath>
		<sonar.jacoco.itReportPath>${project.basedir}/target/it-jacoco.exec</sonar.jacoco.itReportPath>
		<sonar.language>java</sonar.language>
		<!-- Sonar properties -->
		<sonar.sourceEncoding>${project.build.sourceEncoding}</sonar.sourceEncoding>
		<sonar.projectBaseDir>${project.basedir}</sonar.projectBaseDir>
		<sonar.sources>.</sonar.sources>
		<sonar.exclusions>**/scripts/**/*</sonar.exclusions>
		<sonar.test.exclusions>**/test/**/*,**/tests/**/*</sonar.test.exclusions>
		<sonar.inclusions>app/**/*.js,server-mock/**/*.js,src/**/*.js,src/main/**/*.java</sonar.inclusions>
		<sonar.branch>${project.version}</sonar.branch>

		<assertj.version>3.8.0</assertj.version>

		<!--cassandra -->
		<cassandra.driver.version>3.0.0</cassandra.driver.version>
		<!-- maven central (Nexus) -->
		<nexus.id.release>nexus</nexus.id.release>
		<nexus.id.snapshot>nexus</nexus.id.snapshot>

		<assertj.version>3.8.0</assertj.version>

		<!--cassandra -->
		<cassandra.driver.version>3.0.0</cassandra.driver.version>
		<!-- maven central (Nexus) -->
		<nexus.id.release>nexus</nexus.id.release>
		<nexus.id.snapshot>nexus</nexus.id.snapshot>

		<!--nexus-->
		<nexus.proxy>https://nexus.onap.org</nexus.proxy>
		<sitePath>/content/sites/site/org/openecomp/sdc/${project.version}</sitePath>
		<staging.profile.id>176c31dfe190a</staging.profile.id>
		<!--maven-->
		<maven.build.timestamp.format>yyyyMMdd'T'HHmm</maven.build.timestamp.format>
	</properties>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.0.0-M1</version>
				<configuration>
					<failOnError>false</failOnError>
					<doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
					<docletArtifact>
						<groupId>org.umlgraph</groupId>
						<artifactId>umlgraph</artifactId>
						<version>5.6</version>
					</docletArtifact>
					<additionalparam>-views</additionalparam>
					<useStandardDocletOptions>true</useStandardDocletOptions>
				</configuration>
			</plugin>
		</plugins>
	</reporting>

	<build>
		<pluginManagement>
			<plugins>

				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-site-plugin</artifactId>
					<version>3.4</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-assembly-plugin</artifactId>
					<version>2.6</version>
				</plugin>

				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>exec-maven-plugin</artifactId>
					<version>1.4.0</version>
				</plugin>
				<plugin>
					<groupId>org.sonarsource.scanner.maven</groupId>
					<artifactId>sonar-maven-plugin</artifactId>
					<version>3.0.2</version>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>

			<!-- Staging Plugin -->
			<plugin>
				 <groupId>org.sonatype.plugins</groupId>
				 <artifactId>nexus-staging-maven-plugin</artifactId>
				 <version>1.6.7</version>
				 <extensions>true</extensions>
				 <configuration>
						 <nexusUrl>${nexus.proxy}</nexusUrl>
						 <stagingProfileId>${staging.profile.id}</stagingProfileId>
						 <serverId>ecomp-staging</serverId>
				 </configuration>
			</plugin>

			<plugin>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.19.1</version>
				<configuration>
					<systemPropertyVariables>
						<logback.configurationFile>src/test/resources/logback-test.xml</logback.configurationFile>
					</systemPropertyVariables>
				</configuration>
			</plugin>
			<!-- plugin for parsing the project version -->
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>1.8</version>
				<executions>
					<execution>
						<id>parse-version</id>
						<goals>
							<goal>parse-version</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Java Code Coverage -->
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>0.7.9</version>
				<configuration>
					<append>true</append>
					<destFile>${sonar.jacoco.reportPath}</destFile>
					<dataFile>${sonar.jacoco.reportPath}</dataFile>
				</configuration>
				<executions>
					<execution>
						<id>default-prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>default-report</id>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<dependencies>
					<dependency>
						<groupId>org.apache.maven.wagon</groupId>
						<artifactId>wagon-webdav-jackrabbit</artifactId>
						<version>2.10</version>
					</dependency>
				</dependencies>
			</plugin>

			<!-- Set the deployment repositories properties. -->
			<plugin>
				<groupId>org.codehaus.gmaven</groupId>
				<artifactId>gmaven-plugin</artifactId>
				<version>1.4</version>
				<executions>
					<execution>
						<inherited>false</inherited>
						<phase>integration-test</phase>
						<goals>
							<goal>execute</goal>
						</goals>
						<configuration>
							<source>
								pom.properties['deploy.url']=
								pom.version.contains('-SNAPSHOT') ?
								project.distributionManagement.snapshotRepository.url :
								project.distributionManagement.repository.url;
								pom.properties['repo.id']= pom.version.contains('-SNAPSHOT') ?
								project.distributionManagement.snapshotRepository.id :
								project.distributionManagement.repository.id;
							</source>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>all</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<modules>
				<module>build-tools</module>
				<module>onboarding</module>
				<module>security-utils</module>
				<module>common-app-api</module>
				<module>common-be</module>
				<module>catalog-dao</module>
				<module>catalog-model</module>
				<module>catalog-be</module>
				<module>asdctool</module>
				<module>catalog-ui</module>
				<module>catalog-fe</module>
				<module>asdc-tests</module>
				<module>test-apis-ci</module>
				<module>ui-ci</module>
				<module>sdc-os-chef</module>
			</modules>

		</profile>

		<profile>
			<id>catalog</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<modules>
				<module>security-utils</module>
				<module>common-app-api</module>
				<module>common-be</module>
				<module>catalog-dao</module>
				<module>catalog-model</module>
				<module>catalog-be</module>
				<module>asdctool</module>
				<module>catalog-ui</module>
				<module>catalog-fe</module>
				<module>asdc-tests</module>
				<module>test-apis-ci</module>
				<module>ui-ci</module>
			</modules>			
			
			<properties>
				<ecomp.version>1.2.7</ecomp.version>
				<artifact-generator-api.version>1710.0.0</artifact-generator-api.version>
				<artifact-generator-core.version>1710.0.0</artifact-generator-core.version>
				<dox-common-lib.version>1710.0.0</dox-common-lib.version>
				<sdc-tosca-parser.version>1.1.32</sdc-tosca-parser.version>
			</properties>
		</profile>

		<profile>
			<id>onboarding</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<modules>
				<module>build-tools</module>
				<module>onboarding</module>
			</modules>
		</profile>

		<profile>
			<id>dev-integ</id>
			<activation>
				<activeByDefault>false</activeByDefault>
			</activation>
			<dependencies>
				<dependency>
					<groupId>org.togglz</groupId>
					<artifactId>togglz-console</artifactId>
					<version>${togglz.version}</version>
				</dependency>
			</dependencies>
		</profile>
	</profiles>

	<repositories>
		<!-- LF repositories -->
		<repository>
			<id>ecomp-releases</id>
			<name>Release Repository</name>
			<url>${nexus.proxy}/content/repositories/releases/</url>
		</repository>
		<repository>
			<id>ecomp-staging</id>
			<name>Staging Repository</name>
			<url>${nexus.proxy}/content/repositories/staging/</url>
		</repository>
		<repository>
			<id>ecomp-snapshots</id>
			<name>Snapshots Repository</name>
			<url>${nexus.proxy}/content/repositories/snapshots/</url>
		</repository>
		<repository>
			<id>ecomp-public</id>
			<name>Public Repository</name>
			<url>${nexus.proxy}/content/repositories/public/</url>
		</repository>
		<!-- LF repositories END-->
	</repositories>

	<distributionManagement>

		<repository>
			<id>ecomp-releases</id>
			<name>Release Repository</name>
			<url>${nexus.proxy}/content/repositories/releases/</url>
		</repository>
		<snapshotRepository>
			<id>ecomp-snapshots</id>
			<name>Snapshot Repository</name>
			<url>${nexus.proxy}/content/repositories/snapshots/</url>
		</snapshotRepository>
		<site>
			<id>ecomp-site</id>
			<url>dav:${nexus.proxy}${sitePath}</url>
		</site>
	</distributionManagement>
</project>

