<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>

	<artifactId>test-apis-ci</artifactId>

	<parent>
		<groupId>org.openecomp.sdc</groupId>
		<artifactId>sdc-main</artifactId>
		<version>1.2.0-SNAPSHOT</version>
	</parent>

	<properties>
		<sonar.skip>true</sonar.skip>
	</properties>

	<dependencies>
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>${guava.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.testng</groupId>
			<artifactId>testng</artifactId>
			<version>${testng.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
  			<groupId>com.aventstack</groupId>
  			<artifactId>extentreports</artifactId>
  			<version>3.0.6</version>
  			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>com.typesafe</groupId>
			<artifactId>config</artifactId>
			<version>1.0.2</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>log4j</groupId>
			<artifactId>log4j</artifactId>
			<version>1.2.17</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>com.jcraft.jsch</groupId>
			<artifactId>com.springsource.com.jcraft.jsch</artifactId>
			<version>0.1.41</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.openecomp.sdc</groupId>
			<artifactId>common-app-api</artifactId>
			<version>${project.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.openecomp.sdc.be</groupId>
			<artifactId>common-be</artifactId>
			<version>${project.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- CHECK CATLOG MODEL -->
		<dependency>
			<groupId>org.openecomp.sdc.be</groupId>
			<artifactId>catalog-model</artifactId>
			<version>${project.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- catalog dao -->
		<dependency>
			<groupId>org.openecomp.sdc.be</groupId>
			<artifactId>catalog-dao</artifactId>
			<version>${project.version}</version>
			<scope>compile</scope>
		</dependency>
		<!-- functional java -->
		<dependency>
			<groupId>org.functionaljava</groupId>
			<artifactId>functionaljava</artifactId>
			<version>${functionaljava.version}</version>
			<scope>compile</scope>
		</dependency>
		<!-- CASSANDRA -->
		<dependency>
			<groupId>com.datastax.cassandra</groupId>
			<artifactId>cassandra-driver-core</artifactId>
			<version>${cassandra.driver.version}</version>
			<scope>compile</scope>
		</dependency>
		<!-- CASSANDRA END -->

		<!-- slf4j + logback -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
            <version>${slf4j-api.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
            <version>${logback.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-core</artifactId>
            <version>${logback.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>com.googlecode.json-simple</groupId>
			<artifactId>json-simple</artifactId>
			<version>${json-simple.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- File changes listener -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-jci-core</artifactId>
			<version>${commons-jci-core.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
            <version>${commons-codec}</version>
			<scope>compile</scope>
		</dependency>

		<!-- Gson -->
		<dependency>
			<groupId>com.google.code.gson</groupId>
			<artifactId>gson</artifactId>
			<version>${gson.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- Snake Yaml -->
		<dependency>
			<groupId>org.yaml</groupId>
			<artifactId>snakeyaml</artifactId>
			<version>${snakeyaml.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- http client -->
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpclient</artifactId>
            <version>${httpclient.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpmime</artifactId>
            <version>${httpclient.version}</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<version>2.5</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>commons-logging</groupId>
			<artifactId>commons-logging</artifactId>
            <version>${commons-logging}</version>
			<scope>compile</scope>
		</dependency>

		<!-- http core -->
		<dependency>
			<groupId>org.apache.httpcomponents</groupId>
			<artifactId>httpcore</artifactId>
			<version>${httpcore.version}</version>
			<scope>compile</scope>
		</dependency>

		<!-- TITAN -->
		<dependency>
			<groupId>com.thinkaurelius.titan</groupId>
			<artifactId>titan-core</artifactId>
			<version>${titan.version}</version>
			<scope>compile</scope>
			<exclusions>
				<exclusion>
					<artifactId>slf4j-log4j12</artifactId>
					<groupId>org.slf4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.openecomp.sdc.sdc-titan-cassandra</groupId>
  			<artifactId>sdc-titan-cassandra</artifactId>
			<version>${titan.version}</version>
			<scope>compile</scope>
			<exclusions>
				<exclusion>
					<artifactId>slf4j-log4j12</artifactId>
					<groupId>org.slf4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.codehaus.jackson</groupId>
			<artifactId>jackson-mapper-asl</artifactId>
			<version>1.9.2</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>2.3.1</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>2.3.1</version>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.openecomp.ecompsdkos</groupId>
			<artifactId>epsdk-fw</artifactId>
			<version>${ecomp.version}</version>
			<scope>compile</scope>
			<exclusions>
				<exclusion>
					<artifactId>slf4j-log4j12</artifactId>
					<groupId>org.slf4j</groupId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.json</groupId>
			<artifactId>json</artifactId>
			<version>20090211</version>
		</dependency>
		 <dependency>
		    <groupId>org.openecomp.sdc.sdc-tosca</groupId>
		    <artifactId>sdc-tosca</artifactId>
	<version>${sdc-tosca-parser.version}</version>
		    <scope>compile</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>

			<!-- ============================================= -->
			<!-- Get the next build number -->
			<!-- ============================================= -->
			<!--<plugin>-->
				<!--<groupId>org.codehaus.mojo</groupId>-->
				<!--<artifactId>properties-maven-plugin</artifactId>-->
				<!--<version>1.0-alpha-1</version>-->
				<!--<inherited>false</inherited>-->

				<!--<executions>-->
					<!--<execution>-->
						<!--<id>tests</id>-->
						<!--<phase>initialize</phase>-->
						<!--<goals>-->
							<!--<goal>read-project-properties</goal>-->
						<!--</goals>-->

						<!--<configuration>-->
							<!--<files>-->
								<!--<file>../target/FullReleaseVersion.properties</file>-->
							<!--</files>-->
						<!--</configuration>-->
					<!--</execution>-->
				<!--</executions>-->
			<!--</plugin>-->

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-deploy-plugin</artifactId>
				<version>2.7</version>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>

			<!-- ============================================= -->
			<!-- Create the JAR file with its dependencies -->
			<!-- ============================================= -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-assembly-plugin</artifactId>
				<executions>
					<execution>
						<id>create.jar.with.dependencies</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
						<configuration>
							<archive>
								<manifest>
									<mainClass>org.openecomp.sdc.ci.tests.run.StartTest</mainClass>
								</manifest>
							</archive>
							<descriptorRefs>
								<descriptorRef>jar-with-dependencies</descriptorRef>
							</descriptorRefs>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>


</project>
