<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">

	<modelVersion>4.0.0</modelVersion>
	<packaging>pom</packaging>
	<groupId>org.onap.ccsdk.sli.core</groupId>
	<artifactId>sdnc-core</artifactId>

	<name>SDN-C Core Components</name>
	<url>https://wiki.onap.org</url>
	<description>The SDN-C core components contains the SLI, dblib and root pom</description>

	<parent>
		<groupId>org.onap.ccsdk.parent</groupId>
		<artifactId>odlparent-boron-sr3</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>

	<issueManagement>
		<system>JIRA</system>
		<url>http://jira.onap.org/</url>
	</issueManagement>


	<scm>
		<connection>scm:git:ssh://git@${onap.git.host}/sdnc-code.git</connection>
		<developerConnection>scm:git:ssh://${onap.git.host}:${onap.git.port}/${onap.git.project}/sdnc-core.git</developerConnection>
		<url>${onap.git.protocol}://${onap.git.host}/projects/${onap.git.project}/repos/sdnc-core/browse</url>
		<tag>sdnc-core-1.1.0</tag>
	</scm>

	<ciManagement>
		<system>Jenkins</system>
		<url>https://jenkins.onap.org/</url>
	</ciManagement>


	<distributionManagement>
		<repository>
			<id>ecomp-releases</id>
			<name>onap-repository-releases</name>
			<url>${onap.nexus.release-url}</url>
		</repository>
		<snapshotRepository>
			<id>ecomp-snapshots</id>
			<name>onap-repository-snapshots</name>
			<url>${onap.nexus.snapshot-url}</url>
		</snapshotRepository>
		<site>
			<id>ecomp-site</id>
			<url>dav:https://${onap.nexus.host}/content/sites/site/org/onap/sdnc/core/${project.artifactId}/${project.version}</url>
		</site>
	</distributionManagement>


	<profiles>
		<profile>
			<id>blackduck</id>
			<activation>
				<property>
					<name>blackduck-scan</name>
				</property>
			</activation>
			<build>
					<plugins>
						<plugin>
							<groupId>com.blackducksoftware.integration</groupId>
							<artifactId>hub-maven-plugin</artifactId>
							<version>1.4.0</version>
							<inherited>false</inherited>
							<configuration>
								<hubProjectName>${project.name}</hubProjectName>
								<outputDirectory>${project.basedir}</outputDirectory>
							</configuration>
							<executions>
								<execution>
									<id>create-bdio-file</id>
									<phase>package</phase>
									<goals>
										<goal>createHubOutput</goal>
									</goals>
								</execution>
							</executions>
						</plugin>
					</plugins>



			</build>

		</profile>

	</profiles>

	<build>
		<plugins>
			<!-- license plugin -->

			<plugin>

				<groupId>org.codehaus.mojo</groupId>

				<artifactId>license-maven-plugin</artifactId>

				<version>1.10</version>

				<configuration>

					<addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>

					<processStartTag>============LICENSE_START=======================================================</processStartTag>

					<processEndTag>============LICENSE_END=========================================================</processEndTag>

					<sectionDelimiter>================================================================================</sectionDelimiter>

					<licenseName>apache_v2</licenseName>

					<inceptionYear>2017</inceptionYear>

					<organizationName>ONAP</organizationName>

					<projectName>ONAP : CCSDK</projectName>

					<canUpdateCopyright>true</canUpdateCopyright>

					<canUpdateDescription>true</canUpdateDescription>

					<canUpdateLicense>true</canUpdateLicense>

					<emptyLineAfterHeader>true</emptyLineAfterHeader>

				</configuration>

				<executions>

					<execution>

						<id>first</id>

						<goals>

							<goal>update-file-header</goal>

						</goals>

						<phase>process-sources</phase>

					</execution>

				</executions>

			</plugin>


			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.17</version>
				<configuration>
					<skipTests>true</skipTests>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<version>1.6.7</version>
				<extensions>true</extensions>
				<configuration>
					<nexusUrl>https://${onap.nexus.host}</nexusUrl>
					<stagingProfileId>${onap.nexus.staging.profile-id}</stagingProfileId>
					<serverId>${onap.nexus.staging.server-id}</serverId>
				</configuration>
			</plugin>

		</plugins>

	</build>
	<modules>
		<module>dblib</module>
		<module>sli</module>
		<module>filters</module>
		<module>sliPluginUtils</module>
		<module>sliapi</module>
	</modules>
	<organization>
		<name>OpenECOMP</name>
	</organization>
	<version>0.0.1-SNAPSHOT</version>


</project>
