mirror of
https://github.com/valitydev/scrooge.git
synced 2024-11-06 01:55:19 +00:00
21e20c518a
* IMP-123: implement terminal balance service * IMP-123: add tests * IMP-123: fix checkstyle violations * IMP-123: add NPE test * IMP-123: add getTerminalBalancesTest * IMP-123: add getTerminalBalancesTest * IMP-123: bump scrooge-proto, set balance as optional * IMP-123: fix TerminalBalanceMapper * IMP-123: rename TerminalBalance -> AccountBalance
353 lines
14 KiB
XML
353 lines
14 KiB
XML
<?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>
|
|
|
|
<parent>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>service-parent-pom</artifactId>
|
|
<version>1.0.18</version>
|
|
</parent>
|
|
|
|
<artifactId>scrooge</artifactId>
|
|
<version>0.0.1-SNAPSHOT</version>
|
|
<packaging>jar</packaging>
|
|
|
|
<name>scrooge</name>
|
|
<description>Account balance survey service</description>
|
|
|
|
<properties>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<java.version>15</java.version>
|
|
<server.port>8022</server.port>
|
|
<management.port>8023</management.port>
|
|
<exposed.ports>${server.port} ${management.port}</exposed.ports>
|
|
<dockerfile.registry>${env.REGISTRY}</dockerfile.registry>
|
|
<db.name>scrooge</db.name>
|
|
<db.port>5432</db.port>
|
|
<db.url>jdbc:postgresql://localhost:${db.port}/${db.name}</db.url>
|
|
<db.user>postgres</db.user>
|
|
<db.password>postgres</db.password>
|
|
<db.schema>scrooge</db.schema>
|
|
<scrooge.proto.version>1.25-9ce7fc6</scrooge.proto.version>
|
|
<testcontainers.annotations.version>1.4.3</testcontainers.annotations.version>
|
|
<fistful-proto.version>1.134-cfaaf3d</fistful-proto.version>
|
|
<machinegun-proto.version>1.24-f533965</machinegun-proto.version>
|
|
<sink-common-lib.version>0.0.1</sink-common-lib.version>
|
|
<damsel.version>1.553-25dfce3</damsel.version>
|
|
<shedlock-provider-jdbc-template.version>4.34.0</shedlock-provider-jdbc-template.version>
|
|
</properties>
|
|
|
|
<dependencies>
|
|
|
|
<!--dev.vality-->
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>scrooge-proto</artifactId>
|
|
<version>${scrooge.proto.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality.woody</groupId>
|
|
<artifactId>woody-thrift</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>shared-resources</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>db-common-lib</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>fistful-proto</artifactId>
|
|
<version>${fistful-proto.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>kafka-common-lib</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>machinegun-proto</artifactId>
|
|
<version>${machinegun-proto.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>sink-common-lib</artifactId>
|
|
<version>${sink-common-lib.version}</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>machinegun-proto</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>damsel</artifactId>
|
|
<version>${damsel.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality.geck</groupId>
|
|
<artifactId>common</artifactId>
|
|
<version>0.0.1</version>
|
|
</dependency>
|
|
|
|
<!--spring-->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-web</artifactId>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.hibernate</groupId>
|
|
<artifactId>hibernate-validator</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-configuration-processor</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.kafka</groupId>
|
|
<artifactId>spring-kafka</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-cache</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-jooq</artifactId>
|
|
</dependency>
|
|
|
|
<!--third party-->
|
|
<dependency>
|
|
<groupId>io.micrometer</groupId>
|
|
<artifactId>micrometer-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.micrometer</groupId>
|
|
<artifactId>micrometer-registry-prometheus</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>javax.servlet-api</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-core</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.zaxxer</groupId>
|
|
<artifactId>HikariCP</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.ben-manes.caffeine</groupId>
|
|
<artifactId>caffeine</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.javacrumbs.shedlock</groupId>
|
|
<artifactId>shedlock-provider-jdbc-template</artifactId>
|
|
<version>${shedlock-provider-jdbc-template.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>net.javacrumbs.shedlock</groupId>
|
|
<artifactId>shedlock-spring</artifactId>
|
|
<version>${shedlock-provider-jdbc-template.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>software.amazon.msk</groupId>
|
|
<artifactId>aws-msk-iam-auth</artifactId>
|
|
</dependency>
|
|
|
|
<!--test-->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.junit.vintage</groupId>
|
|
<artifactId>junit-vintage-engine</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>dev.vality</groupId>
|
|
<artifactId>testcontainers-annotations</artifactId>
|
|
<version>${testcontainers.annotations.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
|
|
<testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory>
|
|
<resources>
|
|
<resource>
|
|
<directory>${project.build.directory}/maven-shared-archive-resources</directory>
|
|
<targetPath>${project.build.directory}</targetPath>
|
|
<includes>
|
|
<include>Dockerfile</include>
|
|
</includes>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
<resource>
|
|
<directory>${project.build.directory}/maven-shared-archive-resources</directory>
|
|
<filtering>true</filtering>
|
|
<excludes>
|
|
<exclude>Dockerfile</exclude>
|
|
</excludes>
|
|
</resource>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
<filtering>true</filtering>
|
|
</resource>
|
|
</resources>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-maven-plugin</artifactId>
|
|
<configuration>
|
|
<url>${db.url}</url>
|
|
<user>${db.user}</user>
|
|
<password>${db.password}</password>
|
|
<schemas>
|
|
<schema>${db.schema}</schema>
|
|
</schemas>
|
|
<locations>
|
|
<location>filesystem:${project.basedir}/src/main/resources/db/migration</location>
|
|
</locations>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>migrate</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>migrate</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.jooq</groupId>
|
|
<artifactId>jooq-codegen-maven</artifactId>
|
|
<configuration>
|
|
<jdbc>
|
|
<driver>org.postgresql.Driver</driver>
|
|
<url>${db.url}</url>
|
|
<user>${db.user}</user>
|
|
<password>${db.password}</password>
|
|
</jdbc>
|
|
<generator>
|
|
<generate>
|
|
<javaTimeTypes>true</javaTimeTypes>
|
|
<pojos>true</pojos>
|
|
<pojosEqualsAndHashCode>true</pojosEqualsAndHashCode>
|
|
<pojosToString>true</pojosToString>
|
|
</generate>
|
|
<database>
|
|
<name>org.jooq.meta.postgres.PostgresDatabase</name>
|
|
<includes>.*</includes>
|
|
<excludes>schema_version|flyway_schema_history</excludes>
|
|
<inputSchema>${db.schema}</inputSchema>
|
|
</database>
|
|
<target>
|
|
<packageName>dev.vality.scrooge.dao.domain</packageName>
|
|
<directory>target/generated-sources/jooq</directory>
|
|
</target>
|
|
</generator>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>gen-src</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>generate</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>dev.vality.maven.plugins</groupId>
|
|
<artifactId>pg-embedded-plugin</artifactId>
|
|
<version>1.0.1</version>
|
|
<configuration>
|
|
<port>${db.port}</port>
|
|
<dbName>${db.name}</dbName>
|
|
<schemas>
|
|
<schema>${db.schema}</schema>
|
|
</schemas>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>PG_server_start</id>
|
|
<phase>initialize</phase>
|
|
<goals>
|
|
<goal>start</goal>
|
|
</goals>
|
|
</execution>
|
|
<execution>
|
|
<id>PG_server_stop</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>stop</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-remote-resources-plugin</artifactId>
|
|
<version>1.6.0</version>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.maven.shared</groupId>
|
|
<artifactId>maven-filtering</artifactId>
|
|
<version>1.3</version>
|
|
</dependency>
|
|
</dependencies>
|
|
<configuration>
|
|
<resourceBundles>
|
|
<resourceBundle>dev.vality:shared-resources:${shared-resources.version}</resourceBundle>
|
|
</resourceBundles>
|
|
<attachToMain>false</attachToMain>
|
|
<attachToTest>false</attachToTest>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>process</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</project>
|