<?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>
	<groupId>com.shopizer</groupId>
	<artifactId>shopizer-parent</artifactId>
	<name>shopizer-parent</name>
	<description>Shopizer parent BOM</description>
	<!-- version -->
	<version>3.0.1</version>
	<packaging>pom</packaging>
	<url>http://www.shopizer.com</url>


	<scm>
		<developerConnection>scm:git:git@github.com:shopizer-ecommerce/shopizer-parent.git</developerConnection>
		<url>https://github.com/shopizer-ecommerce/shopizer-parent/tree/master</url>
		<tag>v3.0.3</tag>
	</scm>

	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
		</license>
	</licenses>

	<developers>
		<developer>
			<name>Shopizer Team</name>
			<email>contact@shopizer.com</email>
			<organization>Shopizer</organization>
			<organizationUrl>http://www.shopizer.com</organizationUrl>
		</developer>
	</developers>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>


		<!-- used only in dependency management to force this version, not included 
			as a direct dependency -->
		<junit.version>4.13.2</junit.version>
		<junit-jupiter.version>5.8.1</junit-jupiter.version>
		<hamcrest.version>2.2</hamcrest.version>
		<hamcrest-all.version>1.3</hamcrest-all.version>


		<springframework.boot.version>2.5.6</springframework.boot.version>


		<!-- logging -->
		<org.slf4j.version>1.7.32</org.slf4j.version>
		<logback.version>1.2.6</logback.version>

		<!-- plugins -->
		<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
		<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
		<exec-maven-plugin.version>3.0.0</exec-maven-plugin.version>
		<java.version>11</java.version>
		<log4j.version>1.2.17</log4j.version>

		<commons-io.version>2.11.0</commons-io.version>
		<commons-lang.version>2.6</commons-lang.version>
		<commons-lang3.version>3.12.0</commons-lang3.version>
		<mockito.version>3.3.3</mockito.version>
		<swagger.version>3.0.0</swagger.version>
		<hibernate-envers.version>5.4.32.Final</hibernate-envers.version>
		<javax-validation.version>2.0.1.Final</javax-validation.version>
		<hibernate-validation.version>7.0.1.Final</hibernate-validation.version>

	</properties>


	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>${springframework.boot.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springdoc</groupId>
				<artifactId>springdoc-openapi-ui</artifactId>
				<version>1.5.12</version>
			</dependency>
			<!-- Envers auditing -->
			<dependency>
				<groupId>org.hibernate</groupId>
				<artifactId>hibernate-envers</artifactId>
				<version>${hibernate-envers.version}</version>
			</dependency>
			<!-- Validation -->
			<!-- JCR 380 -->
			<dependency>
				<groupId>javax.validation</groupId>
				<artifactId>validation-api</artifactId>
				<version>${javax-validation.version}</version>
			</dependency>
			<!-- Validation implementation -->
			<!-- https://mvnrepository.com/artifact/org.hibernate.validator/hibernate-validator -->
			<dependency>
				<groupId>org.hibernate.validator</groupId>
				<artifactId>hibernate-validator</artifactId>
				<version>${hibernate-validation.version}</version>
			</dependency>

			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${org.slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-classic</artifactId>
				<version>${logback.version}</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-core</artifactId>
				<version>${logback.version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl-over-slf4j</artifactId>
				<version>${org.slf4j.version}</version>
			</dependency>
			<!-- test -->
			<dependency>
				<groupId>org.junit.jupiter</groupId>
				<artifactId>junit-jupiter-engine</artifactId>
				<version>${junit-jupiter.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.junit.jupiter</groupId>
				<artifactId>junit-jupiter-params</artifactId>
				<version>${junit-jupiter.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.junit.jupiter</groupId>
				<artifactId>junit-jupiter-api</artifactId>
				<version>${junit-jupiter.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.junit.vintage</groupId>
				<artifactId>junit-vintage-engine</artifactId>
				<version>${junit-jupiter.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.hamcrest</groupId>
				<artifactId>hamcrest</artifactId>
				<version>${hamcrest.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.hamcrest</groupId>
				<artifactId>hamcrest-all</artifactId>
				<version>${hamcrest-all.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-core</artifactId>
				<version>${mockito.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>org.apache.maven.surefire</groupId>
				<artifactId>surefire-logger-api</artifactId>
				<version>${maven-surefire-plugin.version}</version>
				<!-- to get around bug https://github.com/junit-team/junit5/issues/801 -->
				<scope>test</scope>
				<optional>true</optional>
			</dependency>
			<dependency>
				<!-- Import dependency management from Spring Boot -->
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>${springframework.boot.version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>ossrh</id>
			<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
	</distributionManagement>

	<build>
		<plugins>
			<!-- <plugin> <artifactId>maven-release-plugin</artifactId> <version>3.0.0-M5</version> 
				<configuration> <releaseProfiles>release</releaseProfiles> <tagNameFormat>v@{project.version}</tagNameFormat> 
				</configuration> </plugin> -->
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>release</id>
			<!-- only sign during deploy phase -->
			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<version>1.6.7</version>
						<extensions>true</extensions>
						<configuration>
							<serverId>ossrh</serverId>
							<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
							<autoReleaseAfterClose>true</autoReleaseAfterClose>
						</configuration>
					</plugin>
					<plugin>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.6</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
								<configuration>
									<gpgArguments>
										<arg>--pinentry-mode</arg>
										<arg>loopback</arg>
									</gpgArguments>
								</configuration>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<version>2.2.1</version>
						<executions>
							<execution>
								<id>attach-sources</id>
								<goals>
									<goal>jar-no-fork</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.9.1</version>
						<executions>
							<execution>
								<id>attach-javadocs</id>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
			<properties>
				<gpg.passphrase>${env.GPG_PASSPHRASE}</gpg.passphrase>
			</properties>
		</profile>
	</profiles>
</project>
