<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.agifac.lib</groupId>
	<artifactId>dbmdl-framework</artifactId>
	<version>16.0.0</version>
	<name>BizDock application framework database schema</name>
	<description>This is the database schema builder for the BizDock application framework</description>
	<packaging>pom</packaging>
	<url>https://github.com/theAgileFactory</url>

	<licenses>
		<license>
			<name>GNU General Public License, version 2</name>
			<url>http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt</url>
		</license>
	</licenses>

	<scm>
		<connection>scm:git:https://github.com/theAgileFactory/dbmdl-framework.git</connection>
		<developerConnection>scm:git:https://github.com/theAgileFactory/dbmdl-framework.git</developerConnection>
		<url>scm:git:https://github.com/theAgileFactory/dbmdl-framework.git</url>
		<tag>HEAD</tag>
	</scm>

	<developers>
		<developer>
			<id>pycloux</id>
			<name>Pierre-Yves Cloux</name>
			<email>dev@pycloux.com</email>
		</developer>
	</developers>

	<properties>
		<!-- Global properties -->
		<project.build.sourceEncoding>latin1</project.build.sourceEncoding>
		<java.source>1.8</java.source>
		<java.target>1.8</java.target>
		<!-- Dependencies properties -->
		<junit.version>4.10</junit.version>
		<mysql-connector-java.version>5.1.32</mysql-connector-java.version>
		<mybatis-migrations.version>3.2.0</mybatis-migrations.version>
		<!-- Plugin properties -->
		<maven-resources-plugin.version>2.7</maven-resources-plugin.version>
		<maven-dependency-plugin.version>2.10</maven-dependency-plugin.version>
		<maven-assembly-plugin.version>2.5.5</maven-assembly-plugin.version>
		<maven-migration-plugin.version>1.0.0</maven-migration-plugin.version>
		<maven-site-plugin.version>3.4</maven-site-plugin.version>
		<wagon-ssh.version>2.9</wagon-ssh.version>
		<maven-project-info-reports-plugin.version>2.8</maven-project-info-reports-plugin.version>
		<versions-maven-plugin.version>2.2</versions-maven-plugin.version>
	</properties>

	<pluginRepositories>
		<pluginRepository>
			<id>typesafe-plugin</id>
			<url>http://repo.typesafe.com/typesafe/repo/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
		</pluginRepository>
	</pluginRepositories>

	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
	</distributionManagement>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>${mysql-connector-java.version}</version>
		</dependency>
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-migrations</artifactId>
			<version>${mybatis-migrations.version}</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<artifactId>maven-resources-plugin</artifactId>
				<version>${maven-resources-plugin.version}</version>
				<executions>
					<execution>
						<id>copy-resources</id>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<phase>process-resources</phase>
						<configuration>
							<outputDirectory> ${project.build.directory}/classes </outputDirectory>
							<resources>
								<resource>
									<directory> ${basedir}/src/main/resources </directory>
									<excludes>
										<excludes>.git</excludes>
										<excludes>**/.git</excludes>
									</excludes>
								</resource>
							</resources>
						</configuration>
					</execution>
					<execution>
						<id>copy-properties</id>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<phase>process-resources</phase>
						<configuration>
							<outputDirectory> ${project.build.directory}/properties </outputDirectory>
							<resources>
								<resource>
									<directory> ${basedir}/src/main/properties </directory>
									<includes>
										<include>*.properties</include>
									</includes>
								</resource>
							</resources>
						</configuration>
					</execution>
					<execution>
						<id>copy-model</id>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<phase>process-resources</phase>
						<configuration>
							<outputDirectory> ${project.build.directory}/classes </outputDirectory>
							<resources>
								<resource>
									<directory> ${basedir}/src/main/model </directory>
									<includes>
										<include>*.mwb</include>
									</includes>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<version>${maven-dependency-plugin.version}</version>
				<executions>
					<execution>
						<id>copy-dependencies-lib</id>
						<phase>generate-test-sources</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/classes/lib</outputDirectory>
							<overWriteReleases>true</overWriteReleases>
							<overWriteSnapshots>true</overWriteSnapshots>
							<includeGroupIds>org.mybatis</includeGroupIds>
						</configuration>
					</execution>
					<execution>
						<id>copy-dependencies-drivers</id>
						<phase>generate-test-sources</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/classes/repo/drivers</outputDirectory>
							<overWriteReleases>true</overWriteReleases>
							<overWriteSnapshots>true</overWriteSnapshots>
							<includeGroupIds>mysql</includeGroupIds>
						</configuration>
					</execution>
				</executions>
			</plugin>


			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<version>${maven-assembly-plugin.version}</version>
				<executions>
					<execution>
						<goals>
							<goal>single</goal>
						</goals>
						<id>assembly of properties</id>
						<phase>compile</phase>
						<configuration>
							<archiveBaseDirectory> ${project.build.directory} </archiveBaseDirectory>
							<descriptors>
								<descriptor> src/main/assembly/properties.xml </descriptor>
							</descriptors>
						</configuration>
					</execution>
					<execution>
						<goals>
							<goal>single</goal>
						</goals>
						<id>assembly of resources</id>
						<phase>package</phase>
						<configuration>
							<appendAssemblyId>false</appendAssemblyId>
							<attach>true</attach>
							<archiveBaseDirectory> ${project.build.directory} </archiveBaseDirectory>
							<descriptors>
								<descriptor> src/main/assembly/resources.xml </descriptor>
							</descriptors>
						</configuration>
					</execution>
					<execution>
						<goals>
							<goal>single</goal>
						</goals>
						<id>nonregressiontest</id>
						<phase>package</phase>
						<configuration>
							<archiveBaseDirectory> ${basedir} </archiveBaseDirectory>
							<descriptors>
								<descriptor> src/main/assembly/nonregressiontests.xml </descriptor>
							</descriptors>
						</configuration>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.mybatis.maven</groupId>
				<artifactId>maven-migration-plugin</artifactId>
				<version>${maven-migration-plugin.version}</version>
				<configuration>
					<repository>${basedir}/src/main/sql</repository>
				</configuration>
				<dependencies>
					<dependency>
						<groupId>mysql</groupId>
						<artifactId>mysql-connector-java</artifactId>
						<version>${mysql-connector-java.version}</version>
					</dependency>
				</dependencies>
			</plugin>

			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<version>1.6.3</version>
				<extensions>true</extensions>
				<configuration>
					<serverId>ossrh</serverId>
					<nexusUrl>https://oss.sonatype.org/</nexusUrl>
					<autoReleaseAfterClose>true</autoReleaseAfterClose>
				</configuration>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>1.6</version>
				<executions>
					<execution>
			          <id>sign-artifacts</id>
			          <phase>verify</phase>
			          <goals>
			            <goal>sign</goal>
			          </goals>
			        </execution>
			    </executions>
			</plugin>
			
			<plugin>
		        <groupId>org.codehaus.mojo</groupId>
		        <artifactId>versions-maven-plugin</artifactId>
		        <version>2.2</version>
		    </plugin>
		    
			<plugin>
			    <groupId>org.apache.maven.plugins</groupId>
			    <artifactId>maven-antrun-plugin</artifactId>
			    <version>1.7</version>
			    <executions>
			          <execution>
			            <goals>
			              <goal>run</goal>
			            </goals>
			            <phase>generate-sources</phase>
			            <configuration>
			              <target>
			                <property name="buildtime" value="${maven.build.timestamp}" />
			                <echo message="Writing project version string to ${resources.dir}/${version.filename} ..." />
			                <echo file="${project.build.directory}/version.properties" message="${project.version}${line.separator}" />
			              </target>
			            </configuration>
			          </execution>
			        </executions>
			  </plugin>
		</plugins>
	</build>
</project>
