spring-ai-gigachat-parent
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>chat.giga</groupId>
<artifactId>spring-ai-gigachat-parent</artifactId>
<version>2.0.0</version>
</dependency><?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>chat.giga</groupId>
<artifactId>spring-ai-gigachat-parent</artifactId>
<version>2.0.0</version>
<packaging>pom</packaging>
<name>Spring AI model - GigaChat - Parent</name>
<description>GigaChat models support parent</description>
<url>https://github.com/ai-forever/spring-ai-gigachat</url>
<modules>
<module>spring-ai-gigachat</module>
<module>spring-ai-autoconfigure-model-gigachat</module>
<module>spring-ai-starter-model-gigachat</module>
<module>spring-ai-gigachat-example</module>
</modules>
<scm>
<url>https://github.com/ai-forever/spring-ai-gigachat</url>
<connection>git://github.com/ai-forever/spring-ai-gigachat.git</connection>
<developerConnection>git@github.com:ai-forever/spring-ai-gigachat.git</developerConnection>
</scm>
<issueManagement>
<system>Github Issues</system>
<url>https://github.com/ai-forever/spring-ai-gigachat/issues</url>
</issueManagement>
<ciManagement>
<system>Github Actions</system>
<url>https://github.com/ai-forever/spring-ai-gigachat/actions</url>
</ciManagement>
<licenses>
<license>
<name>Apache 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<name>Linar Abzaltdinov</name>
<email>abzaltdinov@gmail.com</email>
<url>https://github.com/linarkou</url>
</developer>
<developer>
<name>Artem Simeshin</name>
<email>sadnovember2@gmail.com</email>
<url>https://github.com/a-simeshin</url>
</developer>
</developers>
<properties>
<java.version>21</java.version>
<maven.compiler.release>21</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<allure-bom.version>2.32.0</allure-bom.version>
<aspectj.version>1.9.25.1</aspectj.version>
<spring-boot.version>4.0.6</spring-boot.version>
<spring-ai.version>2.0.0</spring-ai.version>
<ayza.version>10.0.3</ayza.version>
<lombok.version>1.18.42</lombok.version>
<wiremock-spring-boot.version>4.2.1</wiremock-spring-boot.version>
<commons-lang3.version>3.20.0</commons-lang3.version>
<maven.deploy.plugin.version>3.1.4</maven.deploy.plugin.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring-boot.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-bom</artifactId>
<version>${spring-ai.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-bom</artifactId>
<version>${allure-bom.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>chat.giga</groupId>
<artifactId>spring-ai-gigachat</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>chat.giga</groupId>
<artifactId>spring-ai-autoconfigure-model-gigachat</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>chat.giga</groupId>
<artifactId>spring-ai-starter-model-gigachat</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.github.hakky54</groupId>
<artifactId>ayza-for-pem</artifactId>
<version>${ayza.version}</version>
</dependency>
<dependency>
<groupId>org.wiremock.integrations</groupId>
<artifactId>wiremock-spring-boot</artifactId>
<version>${wiremock-spring-boot.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${commons-lang3.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-junit5</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.14.1</version>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</path>
</annotationProcessorPaths>
<release>${maven.compiler.release}</release>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.5.4</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<argLine>
-Dfile.encoding=${project.build.sourceEncoding}
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
<properties>
<configurationParameters>
junit.jupiter.execution.parallel.enabled = true
</configurationParameters>
</properties>
<systemPropertyVariables>
<allure.results.directory>target/allure-results</allure.results.directory>
</systemPropertyVariables>
<!-- Запускает все *Test.java, кроме *IT.java -->
<includes>
<include>**/*Test.java</include>
</includes>
<excludes>
<exclude>**/*IT.java</exclude>
</excludes>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>2.17.0</version>
<configuration>
<reportVersion>${allure-bom.version}</reportVersion>
<resultsDirectory>${project.build.directory}/allure-results</resultsDirectory>
</configuration>
</plugin>
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
<version>3.3.0</version>
<configuration>
<java>
<palantirJavaFormat/>
<forbidWildcardImports/>
</java>
<markdown>
<includes>
<include>**/*.md</include>
</includes>
<excludes>
<exclude>**/target/**/*</exclude>
</excludes>
<flexmark/>
</markdown>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
<phase>compile</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.4.0</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.12.0</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<doclint>none</doclint>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>${maven.deploy.plugin.version}</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.ossindex.maven</groupId>
<artifactId>ossindex-maven-plugin</artifactId>
<version>3.2.0</version>
<configuration>
<fail>false</fail>
<clientConfiguration>
<authConfiguration>
<username>${env.OSSINDEX_SONATYPE_USERNAME}</username>
<password>${env.OSSINDEX_SONATYPE_PASSWORD}</password>
</authConfiguration>
</clientConfiguration>
</configuration>
<executions>
<execution>
<id>audit-dependencies</id>
<phase>verify</phase>
<goals>
<goal>audit-aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-pmd-plugin</artifactId>
<version>3.28.0</version>
<configuration>
<failOnViolation>false</failOnViolation>
<rulesets>
<ruleset>${project.parent.basedir}/configs/pmd-ruleset.xml</ruleset>
</rulesets>
</configuration>
<executions>
<execution>
<id>pmd</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>integration-tests</id>
<build>
<plugins>
<!-- Переопределяем Surefire, чтобы он не исключал IT -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>3.5.4</version>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<!-- Запускает все *IT.java -->
<includes>
<include>**/*IT.java</include>
</includes>
<forkCount>1</forkCount>
<parallel>none</parallel>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.8</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-deploy-plugin</artifactId>
<version>${maven.deploy.plugin.version}</version>
<configuration>
<skip>false</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.9.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>maven-central</publishingServerId>
<autoPublish>true</autoPublish>
<waitUntil>published</waitUntil>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>