<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one or more
  ~ contributor license agreements.  See the NOTICE file distributed with
  ~ this work for additional information regarding copyright ownership.
  ~ The ASF licenses this file to You under the Apache License, Version 2.0
  ~ (the "License"); you may not use this file except in compliance with
  ~  he License.  You may obtain a copy of the License at
  ~
  ~      http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~  Unless required by applicable law or agreed to in writing, software
  ~  distributed under the License is distributed on an "AS IS" BASIS,
  ~  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~  See the License for the specific language governing permissions and
  ~  limitations under the License.
  -->
<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.apache.dubbo</groupId>
	<artifactId>dubbo-admin</artifactId>
	<version>${revision}</version>
    <modules>
        <module>dubbo-admin-ui</module>
        <module>dubbo-admin-server</module>
        <module>dubbo-admin-distribution</module>
        <module>dubbo-admin-test</module>
    </modules>
	<packaging>pom</packaging>

	<name>dubbo-admin</name>
	<description>Dubbo admin front and back end</description>

	<parent>
		<groupId>org.apache</groupId>
		<artifactId>apache</artifactId>
		<version>19</version>
	</parent>

	<repositories>
		<repository>
			<id>apache.snapshots.https</id>
			<name>Apache Development Snapshot Repository</name>
			<url>https://repository.apache.org/content/repositories/snapshots</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</repository>
	</repositories>

	<properties>
		<revision>0.3.0-SNAPSHOT</revision>
		<main.basedir>${project.basedir}</main.basedir>
		<commons-lang3-version>3.7</commons-lang3-version>
		<dubbo-version>2.7.12</dubbo-version>
		<curator-version>2.12.0</curator-version>
		<curator-test-version>4.1.0</curator-test-version>
		<fastjson-version>1.2.67</fastjson-version>
		<springfox-swagger-version>2.9.2</springfox-swagger-version>
		<netty-version>4.1.42.Final</netty-version>
		<jacoco-version>0.8.2</jacoco-version>
		<jedis-version>2.9.0</jedis-version>
		<apollo-version>1.2.0</apollo-version>
		<consul-version>1.4.2</consul-version>
		<consul-embedded-version>2.0.0</consul-embedded-version>
		<nacos-version>1.2.0</nacos-version>
		<guava-version>20.0</guava-version>
		<snakeyaml-version>1.24</snakeyaml-version>
		<maven-checkstyle-plugin-version>3.0.0</maven-checkstyle-plugin-version>
		<spring-boot-version>2.1.4.RELEASE</spring-boot-version>
		<maven_compiler_version>3.6.0</maven_compiler_version>
		<maven-flatten-version>1.1.0</maven-flatten-version>

		<java_source_version>1.8</java_source_version>
		<java_target_version>1.8</java_target_version>
		<file_encoding>UTF-8</file_encoding>
		<checkstyle.skip>true</checkstyle.skip>
		<rat.skip>true</rat.skip>
	</properties>

	<dependencyManagement>
        <dependencies>
			<dependency>
				<groupId>org.yaml</groupId>
				<artifactId>snakeyaml</artifactId>
				<version>${snakeyaml-version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-starter-parent</artifactId>
				<version>${spring-boot-version}</version>
				<scope>import</scope>
				<type>pom</type>
			</dependency>
			<dependency>
				<groupId>redis.clients</groupId>
				<artifactId>jedis</artifactId>
				<version>${jedis-version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
				<version>${commons-lang3-version}</version>
			</dependency>

			<dependency>
				<groupId>com.ctrip.framework.apollo</groupId>
				<artifactId>apollo-openapi</artifactId>
				<version>${apollo-version}</version>
			</dependency>

			<dependency>
				<groupId>com.alibaba.nacos</groupId>
				<artifactId>nacos-client</artifactId>
				<version>${nacos-version}</version>
			</dependency>

			<dependency>
				<groupId>org.apache.dubbo</groupId>
				<artifactId>dubbo</artifactId>
				<version>${dubbo-version}</version>
			</dependency>

			<dependency>
				<groupId>org.apache.dubbo</groupId>
				<artifactId>dubbo-serialization-kryo</artifactId>
				<version>${dubbo-version}</version>
			</dependency>

			<dependency>
				<groupId>org.apache.curator</groupId>
				<artifactId>curator-framework</artifactId>
				<version>${curator-version}</version>
			</dependency>

			<dependency>
				<groupId>org.apache.curator</groupId>
				<artifactId>curator-test</artifactId>
				<version>${curator-test-version}</version>
			</dependency>

			<dependency>
				<groupId>org.apache.curator</groupId>
				<artifactId>curator-recipes</artifactId>
				<version>${curator-version}</version>
				<exclusions>
					<exclusion>
						<groupId>org.apache.zookeeper</groupId>
						<artifactId>zookeeper</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>fastjson</artifactId>
				<version>${fastjson-version}</version>
			</dependency>

			<dependency>
				<groupId>io.springfox</groupId>
				<artifactId>springfox-swagger2</artifactId>
				<version>${springfox-swagger-version}</version>
			</dependency>
			<dependency>
				<groupId>io.springfox</groupId>
				<artifactId>springfox-swagger-ui</artifactId>
				<version>${springfox-swagger-version}</version>
			</dependency>
			<dependency>
				<groupId>io.netty</groupId>
				<artifactId>netty-all</artifactId>
				<version>${netty-version}</version>
			</dependency>

			<dependency>
				<groupId>com.ecwid.consul</groupId>
				<artifactId>consul-api</artifactId>
				<version>${consul-version}</version>
			</dependency>
			<dependency>
				<groupId>com.pszymczyk.consul</groupId>
				<artifactId>embedded-consul</artifactId>
				<version>${consul-embedded-version}</version>
			</dependency>

 			<dependency>
				<groupId>com.google.guava</groupId>
				<artifactId>guava</artifactId>
				<version>${guava-version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<profiles>
		<profile>
			<id>checkstyle</id>
			<activation>
				<jdk>[1.8,)</jdk>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-checkstyle-plugin</artifactId>
						<version>${maven-checkstyle-plugin-version}</version>
						<dependencies>
							<dependency>
								<groupId>com.puppycrawl.tools</groupId>
								<artifactId>checkstyle</artifactId>
								<version>8.18</version>
							</dependency>
						</dependencies>
						<executions>
							<execution>
								<id>checkstyle-validation</id>
								<phase>validate</phase>
								<configuration>
									<configLocation>codestyle/checkstyle.xml</configLocation>
									<encoding>UTF-8</encoding>
									<consoleOutput>true</consoleOutput>
									<failOnViolation>true</failOnViolation>
								</configuration>
								<goals>
									<goal>check</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.rat</groupId>
						<artifactId>apache-rat-plugin</artifactId>
						<version>0.12</version>
						<executions>
							<execution>
								<id>verify.rat</id>
								<phase>verify</phase>
								<goals>
									<goal>check</goal>
								</goals>
								<configuration>
									<excludes>
										<exclude>**/*.versionsBackup</exclude>
										<exclude>**/.idea/</exclude>
										<exclude>**/*.iml</exclude>
										<exclude>**/*.txt</exclude>
										<exclude>**/*.sh</exclude>
										<exclude>**/*.bat</exclude>
										<exclude>**/*.md</exclude>
										<exclude>.git/</exclude>
										<exclude>**/*.git*</exclude>
										<exclude>.gitignore</exclude>
										<exclude>**/.settings/*</exclude>
										<exclude>**/.classpath</exclude>
										<exclude>**/*.properties</exclude>
										<exclude>**/.project</exclude>
										<exclude>**/target/**</exclude>
										<exclude>**/*.log</exclude>
										<exclude>CODE_OF_CONDUCT.md</exclude>
										<exclude>.codecov.yml</exclude>
										<exclude>.travis.yml</exclude>
										<exclude>PULL_REQUEST_TEMPLATE.md</exclude>
										<exclude>CONTRIBUTING.md</exclude>
										<exclude>**/codestyle/*</exclude>
										<exclude>**/node_modules/**</exclude>
										<exclude>**/.babelrc</exclude>
										<exclude>**/.editorconfig</exclude>
										<exclude>**/package-lock.json</exclude>
										<exclude>**/package.json</exclude>
										<exclude>**/OpenSans.css</exclude>
										<exclude>**/.eslintignore</exclude>
										<exclude>**/.browserslistrc</exclude>
										<exclude>**/resources/META-INF/**</exclude>
										<exclude>**/src/main/resources/public/**</exclude>
										<exclude>**/src/licenses/**</exclude>
										<exclude>.github/**</exclude>
										<exclude>**/assets/**</exclude>
										<exclude>**/yarn.lock</exclude>
										<exclude>**/node/**</exclude>
									</excludes>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

	<build>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>flatten-maven-plugin</artifactId>
				<version>${maven-flatten-version}</version>
				<configuration>
					<updatePomFile>true</updatePomFile>
					<flattenMode>resolveCiFriendliesOnly</flattenMode>
					<pomElements>
						<dependencies>expand</dependencies>
					</pomElements>
				</configuration>
				<executions>
					<execution>
						<id>flatten</id>
						<phase>process-resources</phase>
						<goals>
							<goal>flatten</goal>
						</goals>
					</execution>
					<execution>
						<id>flatten.clean</id>
						<phase>clean</phase>
						<goals>
							<goal>clean</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
                <version>${jacoco-version}</version>
				<executions>
					<execution>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
					<execution>
						<id>report</id>
						<phase>test</phase>
						<goals>
							<goal>report</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${maven_compiler_version}</version>
				<configuration>
					<source>${java_source_version}</source>
					<target>${java_target_version}</target>
					<encoding>${file_encoding}</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.21.0</version>
			</plugin>
		</plugins>
	</build>


</project>
