<?xml version="1.0"?>
<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.wyona</groupId>

    <artifactId>ollama4j</artifactId>

    <version>1.0.30-SNAPSHOT</version>


    <name>Ollama4j</name>

    <description>Java library for interacting with Ollama API.</description>

    <url>https://github.com/amithkoujalgi/ollama4j</url>


    <properties>
        <maven.compiler.source>11</maven.compiler.source>

        <maven.compiler.target>11</maven.compiler.target>

        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

        <maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>

        <maven-failsafe-plugin.version>3.0.0-M5</maven-failsafe-plugin.version>

        <lombok.version>1.18.30</lombok.version>

    </properties>


    <developers>
        <developer>
            <name>Amith Koujalgi</name>

            <email>koujalgi.amith@gmail.com</email>

            <organization>Sonatype</organization>

            <organizationUrl>https://www.sonatype.com</organizationUrl>

        </developer>

    </developers>


    <licenses>
        <license>
            <name>MIT License</name>

            <url>https://raw.githubusercontent.com/amithkoujalgi/ollama4j/main/LICENSE</url>

        </license>

    </licenses>


    <scm>
        <connection>scm:git:git@github.com:amithkoujalgi/ollama4j.git</connection>

        <developerConnection>scm:git:https://github.com/amithkoujalgi/ollama4j.git</developerConnection>

        <url>https://github.com/amithkoujalgi/ollama4j</url>

        <tag>v1.0.16</tag>

    </scm>


    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-source-plugin</artifactId>

                <version>3.3.0</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>3.5.0</version>

                <executions>
                    <execution>
                        <id>attach-javadocs</id>

                        <goals>
                            <goal>jar</goal>

                        </goals>

                    </execution>

                </executions>

            </plugin>

            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-surefire-plugin</artifactId>

                <version>${maven-surefire-plugin.version}</version>

                <configuration>
                    <skipTests>${skipUnitTests}</skipTests>

                    <includes>
                        <include>**/unittests/*.java</include>

                    </includes>

                </configuration>

            </plugin>


            
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-failsafe-plugin</artifactId>

                <version>${maven-failsafe-plugin.version}</version>

                <configuration>
                    <includes>
                        <include>**/integrationtests/*.java</include>

                    </includes>

                    <excludes>
                        <exclude>**/unittests/*.java</exclude>

                    </excludes>

                    <skipTests>${skipIntegrationTests}</skipTests>

                </configuration>

                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>

                            <goal>verify</goal>

                        </goals>

                    </execution>

                </executions>

            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>

                <artifactId>maven-release-plugin</artifactId>

                <version>3.0.1</version>

                <configuration>
                    
                    <tagNameFormat>v@{project.version}</tagNameFormat>

                </configuration>

            </plugin>

        </plugins>

    </build>


    <dependencies>
        <dependency>
            <groupId>org.projectlombok</groupId>

            <artifactId>lombok</artifactId>

            <version>${lombok.version}</version>

            <scope>provided</scope>

        </dependency>

        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>

            <artifactId>jackson-databind</artifactId>

            <version>2.15.3</version>

        </dependency>

        <dependency>
            <groupId>ch.qos.logback</groupId>

            <artifactId>logback-classic</artifactId>

            <version>1.3.11</version>

            <scope>test</scope>

        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>

            <artifactId>slf4j-api</artifactId>

            <version>2.0.9</version>

        </dependency>

        <dependency>
            <groupId>org.junit.jupiter</groupId>

            <artifactId>junit-jupiter-api</artifactId>

            <version>5.10.0</version>

            <scope>test</scope>

        </dependency>

        <dependency>
            <groupId>org.mockito</groupId>

            <artifactId>mockito-core</artifactId>

            <version>4.1.0</version>

            <scope>test</scope>

        </dependency>

    </dependencies>


    <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>


    <profiles>
        <profile>
            <id>unit-tests</id>

            <properties>
                <test.env>unit</test.env>

                <skipUnitTests>false</skipUnitTests>

                <skipIntegrationTests>true</skipIntegrationTests>

            </properties>

            <activation>
                <activeByDefault>true</activeByDefault>

            </activation>

        </profile>

        <profile>
            <id>integration-tests</id>

            <properties>
                <test.env>integration</test.env>

                <skipUnitTests>true</skipUnitTests>

                <skipIntegrationTests>false</skipIntegrationTests>

            </properties>

        </profile>

        <profile>
            <id>ci-cd</id>

            <properties>
                <test.env>unit</test.env>

                <skipUnitTests>true</skipUnitTests>

                <skipIntegrationTests>true</skipIntegrationTests>

            </properties>

            <build>
                <plugins>
                    <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>

                                <configuration>
                                    
                                    <gpgArguments>
                                        <arg>--pinentry-mode</arg>

                                        <arg>loopback</arg>

                                    </gpgArguments>

                                </configuration>

                            </execution>

                        </executions>

                    </plugin>

                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>

                        <artifactId>nexus-staging-maven-plugin</artifactId>

                        <version>1.6.13</version>

                        <extensions>true</extensions>

                        <configuration>
                            <serverId>ossrh</serverId>

                            <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>

                            <autoReleaseAfterClose>true</autoReleaseAfterClose>

                        </configuration>

                    </plugin>

                </plugins>

            </build>

        </profile>

    </profiles>


</project>
