<?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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<artifactId>spring-cloud-dataflow-parent</artifactId>
	<version>2.0.0.RELEASE</version>
	<packaging>pom</packaging>
	<url>http://cloud.spring.io/spring-cloud-dataflow/</url>
	<organization>
		<name>Pivotal Software, Inc.</name>
		<url>http://www.spring.io</url>
	</organization>
	<parent>
		<!-- Note: Make sure to update `spring-cloud-build` version and `spring-cloud-dependencies` version (spring-cloud.version)
		     are in sync with the https://github.com/spring-cloud/spring-cloud-release/blob/master/pom.xml updates for the respective
		     release versions -->
		<!-- Note: Also make sure the parent pom version in spring-cloud-dataflow-dependencies/pom.xml is in sync -->
		<groupId>org.springframework.cloud</groupId>
		<artifactId>spring-cloud-build</artifactId>
		<version>2.1.2.RELEASE</version>
		<relativePath />
	</parent>
	<scm>
		<url>https://github.com/spring-cloud/spring-cloud-dataflow</url>
		<connection>scm:git:git://github.com/spring-cloud/spring-cloud-dataflow.git</connection>
		<developerConnection>scm:git:ssh://git@github.com/spring-cloud/spring-cloud-dataflow.git</developerConnection>
		<tag>HEAD</tag>
	</scm>
	<properties>
		<java.version>1.8</java.version>
		<javadoc.opts>-Xdoclint:none</javadoc.opts>

		<spring-cloud-dataflow-ui.version>2.0.0.RELEASE</spring-cloud-dataflow-ui.version>

		<spring-cloud-deployer.version>2.0.0.RELEASE</spring-cloud-deployer.version>
		<spring-cloud-deployer-local.version>2.0.0.RELEASE</spring-cloud-deployer-local.version>

		<!-- note - check version of reactor at deployer-cf/cf-java-client uses -->
		<spring-cloud-deployer-cloudfoundry.version>2.0.0.RELEASE</spring-cloud-deployer-cloudfoundry.version>
		<reactor.version>3.2.0.RELEASE</reactor.version>
		<spring-cloud-deployer-kubernetes.version>2.0.0.RELEASE</spring-cloud-deployer-kubernetes.version>
		<kubernetes-client.version>4.0.4</kubernetes-client.version>
		<spring-cloud-kubernetes.version>0.3.0.RELEASE</spring-cloud-kubernetes.version>

		<spring-cloud-skipper.version>2.0.0.RELEASE</spring-cloud-skipper.version>

		<spring-cloud-task.version>2.1.1.RELEASE</spring-cloud-task.version>

		<!-- Note: Make sure to update `spring-cloud-build` version and `spring-cloud-dependencies` version (spring-cloud.version)
		     are in sync with the https://github.com/spring-cloud/spring-cloud-release/blob/master/pom.xml updates for the respective
		     release versions -->
		<spring-cloud.version>Greenwich.RELEASE</spring-cloud.version>
		<java-cfenv-boot.version>1.0.1.RELEASE</java-cfenv-boot.version>

		<spring-cloud-scheduler-spi.version>1.0.2.RELEASE</spring-cloud-scheduler-spi.version>
		<spring-cloud-scheduler-kubernetes.version>1.0.0.RELEASE</spring-cloud-scheduler-kubernetes.version>
		<spring-cloud-scheduler-cloudfoundry>1.0.1.RELEASE</spring-cloud-scheduler-cloudfoundry>

		<spring-cloud-common-security-config.version>1.1.2.RELEASE</spring-cloud-common-security-config.version>

		<spring-shell.version>1.2.0.RELEASE</spring-shell.version>
		<commons-io.version>2.4</commons-io.version>
		<commons-lang.version>2.4</commons-lang.version>

		<jacoco-maven-plugin.version>0.7.9</jacoco-maven-plugin.version>
		<sonar-maven-plugin.version>3.0.2</sonar-maven-plugin.version>
		<checkstyle.config.location>src/checkstyle/checkstyle.xml</checkstyle.config.location>
		<semver.version>2.2.0</semver.version>
	</properties>
	<modules>
		<module>spring-cloud-dataflow-configuration-metadata</module>
		<module>spring-cloud-dataflow-core</module>
		<module>spring-cloud-dataflow-registry</module>
		<module>spring-cloud-dataflow-rest-resource</module>
		<module>spring-cloud-dataflow-server-core</module>
		<module>spring-cloud-dataflow-autoconfigure</module>
		<module>spring-cloud-dataflow-server</module>
		<module>spring-cloud-dataflow-rest-client</module>
		<module>spring-cloud-dataflow-shell</module>
		<module>spring-cloud-dataflow-shell-core</module>
		<module>spring-cloud-dataflow-classic-docs</module>
		<module>spring-cloud-dataflow-docs</module>

		<module>spring-cloud-dataflow-completion</module>
		<module>spring-cloud-dataflow-dependencies</module>
		<module>spring-cloud-dataflow-platform-kubernetes</module>
		<module>spring-cloud-dataflow-platform-cloudfoundry</module>
		<module>spring-cloud-starter-dataflow-server</module>
		<module>spring-cloud-dataflow-audit</module>
	</modules>
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-task-dependencies</artifactId>
				<version>${spring-cloud-task.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>${spring-cloud.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dataflow-dependencies</artifactId>
				<version>2.0.0.RELEASE</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dataflow-ui</artifactId>
				<version>${spring-cloud-dataflow-ui.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-deployer-spi</artifactId>
				<version>${spring-cloud-deployer.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-deployer-resource-support</artifactId>
				<version>${spring-cloud-deployer.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-deployer-resource-maven</artifactId>
				<version>${spring-cloud-deployer.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-deployer-resource-docker</artifactId>
				<version>${spring-cloud-deployer.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-deployer-local</artifactId>
				<version>${spring-cloud-deployer-local.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.shell</groupId>
				<artifactId>spring-shell</artifactId>
				<version>${spring-shell.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-starter-common-security-config-web</artifactId>
				<version>${spring-cloud-common-security-config.version}</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>${commons-io.version}</version>
			</dependency>
			<dependency>
				<groupId>commons-lang</groupId>
				<artifactId>commons-lang</artifactId>
				<version>${commons-lang.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-scheduler-spi</artifactId>
				<version>${spring-cloud-scheduler-spi.version}</version>
			</dependency>
			<!-- Required to override the spring-cloud-sso-connector versions. Related to
			https://github.com/spring-cloud/spring-cloud-skipper/issues/750 -->
			<dependency>
				<groupId>org.springframework.security.oauth.boot</groupId>
				<artifactId>spring-security-oauth2-autoconfigure</artifactId>
				<version>${spring-boot.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.22.0</version>
				<configuration>
					<includes>
						<include>**/*Tests.java</include>
						<include>**/*Test.java</include>
					</includes>
					<excludes>
						<exclude>**/Abstract*.java</exclude>
					</excludes>
					<!-- see http://stackoverflow.com/questions/18107375/getting-skipping-jacoco-execution-due-to-missing-execution-data-file-upon-exec -->
					<argLine>${argLine}</argLine>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>report</id>
						<phase>test</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<!-- Note: Change ./spring-cloud-dataflow-server-local/pom.xml to match changes here -->
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<executions>
					<execution>
						<id>checkstyle-validation</id>
						<phase>validate</phase>
						<configuration>
							<encoding>UTF-8</encoding>
							<!--<failsOnError>true</failsOnError>-->
							<failOnViolation>true</failOnViolation>
							<violationSeverity>warning</violationSeverity>
							<includeTestSourceDirectory>true</includeTestSourceDirectory>
							<configLocation>${checkstyle.config.location}</configLocation>
						</configuration>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-maven-plugin</artifactId>
					<version>${spring-boot.version}</version>
				</plugin>
				<plugin>
					<groupId>org.sonarsource.scanner.maven</groupId>
					<artifactId>sonar-maven-plugin</artifactId>
					<version>${sonar-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>${jacoco-maven-plugin.version}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<version>3.0.2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>3.0.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>2.10.4</version>
					<executions>
						<execution>
							<id>attach-javadocs</id>
							<goals>
								<goal>jar</goal>
							</goals>
							<configuration>
								<additionalparam>${javadoc.opts}</additionalparam>
							</configuration>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<!-- Note: Change ./spring-cloud-dataflow-server-local/pom.xml to match changes here -->
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-checkstyle-plugin</artifactId>
					<version>2.17</version>
					<dependencies>
						<dependency>
							<groupId>com.puppycrawl.tools</groupId>
							<artifactId>checkstyle</artifactId>
							<version>7.6.1</version>
						</dependency>
					</dependencies>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jxr-plugin</artifactId>
				<version>2.5</version>
			</plugin>
		</plugins>
	</reporting>
	<profiles>
		<profile>
			<id>spring</id>
			<repositories>
				<repository>
					<id>spring-snapshots</id>
					<name>Spring Snapshots</name>
					<url>http://repo.spring.io/libs-snapshot</url>
					<snapshots>
						<enabled>true</enabled>
					</snapshots>
				</repository>
				<repository>
					<id>spring-milestones</id>
					<name>Spring Milestones</name>
					<url>http://repo.spring.io/libs-milestone-local</url>
					<snapshots>
						<enabled>false</enabled>
					</snapshots>
				</repository>
				<repository>
					<id>spring-releases</id>
					<name>Spring Releases</name>
					<url>http://repo.spring.io/release</url>
					<snapshots>
						<enabled>false</enabled>
					</snapshots>
				</repository>
			</repositories>
			<pluginRepositories>
				<pluginRepository>
					<id>spring-snapshots</id>
					<name>Spring Snapshots</name>
					<url>http://repo.spring.io/libs-snapshot-local</url>
					<snapshots>
						<enabled>true</enabled>
					</snapshots>
				</pluginRepository>
				<pluginRepository>
					<id>spring-milestones</id>
					<name>Spring Milestones</name>
					<url>http://repo.spring.io/libs-milestone-local</url>
					<snapshots>
						<enabled>false</enabled>
					</snapshots>
				</pluginRepository>
			</pluginRepositories>
		</profile>
	</profiles>
</project>
