<?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>org.opencdmp</groupId>
    <artifactId>evaluator-base</artifactId>
    <version>1.1.0</version>
	<packaging>jar</packaging>
	
	<name>OpenCDMP Evaluator Base</name>
	<description>evaluator-base is a Maven package that provides the base interfaces and configuration classes required to implement custom evaluator services for the OpenCDMP platform. Each evaluator is developed as a separate microservice and can be registered with OpenCDMP to support custom evaluation operations for Plans and Descriptions.</description>
	<url>https://github.com/OpenCDMP/evaluator-base</url>
	<licenses>
		<license>
			<name>EUPL-1.2 license</name>
			<url>https://github.com/OpenCDMP/evaluator-base/blob/main/LICENSE</url>
			<distribution>repo</distribution>
		</license>
	</licenses>
	<developers>
		<developer>
			<name>CITE S.A.</name>
			<email>maven-central@cite.gr</email>
			<organization>CITE S.A.</organization>
			<organizationUrl>https://www.cite.gr</organizationUrl>
		</developer>
	</developers>
	<scm>
		<connection>scm:git:https://github.com/OpenCDMP/evaluator-base</connection>
		<developerConnection>scm:git:https://github.com/OpenCDMP/evaluator-base</developerConnection>
		<url>https://github.com/OpenCDMP/evaluator-base</url>
	</scm>

    <properties>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <maven.compiler.release>21</maven.compiler.release>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

    

    <dependencies>
		<dependency>
			<groupId>org.opencdmp</groupId>
			<artifactId>common-models</artifactId>
			<version>1.1.0</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>2.17.0</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>6.1.13</version>
		</dependency>
    </dependencies>

    <build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.13.0</version>
				<configuration>
					<source>21</source>
					<target>21</target>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>release</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.central</groupId>
						<artifactId>central-publishing-maven-plugin</artifactId>
						<version>0.4.0</version>
						<extensions>true</extensions>
						<configuration>
							<publishingServerId>central</publishingServerId>
							<tokenAuth>true</tokenAuth>
							<autoPublish>true</autoPublish>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<version>3.3.0</version>
						<executions>
							<execution>
								<id>attach-sources</id>
								<phase>verify</phase>
								<goals>
									<goal>jar-no-fork</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>3.6.3</version>
						<executions>
							<execution>
								<id>attach-javadoc</id>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
						<configuration>
							<stylesheet>java</stylesheet>
							<doclint>none</doclint>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>3.1.0</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
							</execution>
						</executions>
						<configuration>
							<gpgArguments>
								<arg>--pinentry-mode</arg>
								<arg>loopback</arg>
							</gpgArguments>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

</project>