409 lines
15 KiB
XML
409 lines
15 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>
|
|
<prerequisites>
|
|
<maven>3.0.0</maven>
|
|
</prerequisites>
|
|
|
|
<groupId>org.whispersystems.textsecure</groupId>
|
|
<artifactId>TextSecureServer</artifactId>
|
|
<version>2.28</version>
|
|
|
|
<properties>
|
|
<dropwizard.version>1.3.8</dropwizard.version>
|
|
<jackson.api.version>2.9.8</jackson.api.version>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<!--suppress UnresolvedMavenProperty -->
|
|
<ecr.repository>${env.ECR_REPOSITORY}</ecr.repository>
|
|
|
|
</properties>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-core</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-jdbi</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-auth</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-client</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-migrations</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-testing</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.dropwizard</groupId>
|
|
<artifactId>dropwizard-metrics-graphite</artifactId>
|
|
<version>${dropwizard.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.bouncycastle</groupId>
|
|
<artifactId>bcprov-jdk16</artifactId>
|
|
<version>1.46</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.syslog4j</groupId>
|
|
<artifactId>syslog4j</artifactId>
|
|
<version>0.9.30</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-s3</artifactId>
|
|
<version>1.11.366</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.amazonaws</groupId>
|
|
<artifactId>aws-java-sdk-sqs</artifactId>
|
|
<version>1.11.362</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
<version>2.6.1</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>redis.clients</groupId>
|
|
<artifactId>jedis</artifactId>
|
|
<version>2.9.0</version>
|
|
<type>jar</type>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.twilio.sdk</groupId>
|
|
<artifactId>twilio-java-sdk</artifactId>
|
|
<version>4.4.4</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.postgresql</groupId>
|
|
<artifactId>postgresql</artifactId>
|
|
<version>9.4-1201-jdbc41</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.whispersystems</groupId>
|
|
<artifactId>websocket-resources</artifactId>
|
|
<version>0.5.9</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.whispersystems</groupId>
|
|
<artifactId>curve25519-java</artifactId>
|
|
<version>0.5.0</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.relayrides</groupId>
|
|
<artifactId>pushy</artifactId>
|
|
<version>0.9.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.relayrides</groupId>
|
|
<artifactId>pushy-dropwizard-metrics-listener</artifactId>
|
|
<version>0.9.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.whispersystems</groupId>
|
|
<artifactId>gcm-sender-async</artifactId>
|
|
<version>0.1.6</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.googlecode.libphonenumber</groupId>
|
|
<artifactId>libphonenumber</artifactId>
|
|
<version>8.10.2</version>
|
|
</dependency>
|
|
|
|
|
|
<dependency>
|
|
<groupId>org.glassfish.jersey.test-framework.providers</groupId>
|
|
<artifactId>jersey-test-framework-provider-grizzly2</artifactId>
|
|
<version>2.19</version>
|
|
<scope>test</scope>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>javax.servlet</groupId>
|
|
<artifactId>javax.servlet-api</artifactId>
|
|
</exclusion>
|
|
<exclusion>
|
|
<groupId>junit</groupId>
|
|
<artifactId>junit</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>org.mockito</groupId>
|
|
<artifactId>mockito-core</artifactId>
|
|
<version>2.7.22</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
|
|
|
|
</dependencies>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.apache.httpcomponents</groupId>
|
|
<artifactId>httpclient</artifactId>
|
|
<version>4.4.1</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.httpcomponents</groupId>
|
|
<artifactId>httpcore</artifactId>
|
|
<version>4.4.1</version>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson.core</groupId>
|
|
<artifactId>jackson-databind</artifactId>
|
|
<version>${jackson.api.version}</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>3.8.0</version>
|
|
<configuration>
|
|
<source>1.8</source>
|
|
<target>1.8</target>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-source-plugin</artifactId>
|
|
<version>2.2.1</version>
|
|
<executions>
|
|
<execution>
|
|
<id>attach-sources</id>
|
|
<goals>
|
|
<goal>jar</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-jar-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
<configuration>
|
|
<archive>
|
|
<manifest>
|
|
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
|
|
</manifest>
|
|
</archive>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-shade-plugin</artifactId>
|
|
<version>1.6</version>
|
|
<configuration>
|
|
<createDependencyReducedPom>true</createDependencyReducedPom>
|
|
<filters>
|
|
<filter>
|
|
<artifact>*:*</artifact>
|
|
<excludes>
|
|
<exclude>META-INF/*.SF</exclude>
|
|
<exclude>META-INF/*.DSA</exclude>
|
|
<exclude>META-INF/*.RSA</exclude>
|
|
</excludes>
|
|
</filter>
|
|
</filters>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>shade</goal>
|
|
</goals>
|
|
<configuration>
|
|
<transformers>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
|
|
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
|
|
<mainClass>org.whispersystems.textsecuregcm.WhisperServerService</mainClass>
|
|
</transformer>
|
|
</transformers>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.0.0-M1</version>
|
|
</plugin>
|
|
|
|
<plugin>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<version>2.4</version>
|
|
<configuration>
|
|
<descriptors>
|
|
<descriptor>assembly.xml</descriptor>
|
|
</descriptors>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>make-assembly</id> <!-- this is used for inheritance merges -->
|
|
<phase>package</phase> <!-- bind to the packaging phase -->
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>3.1.1</version>
|
|
<executions>
|
|
<execution>
|
|
<phase>initialize</phase>
|
|
<goals>
|
|
<goal>copy-dependencies</goal>
|
|
</goals>
|
|
<configuration>
|
|
<overWriteReleases>false</overWriteReleases>
|
|
<includeScope>runtime</includeScope>
|
|
<outputDirectory>${project.build.directory}/lib</outputDirectory>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.spotify</groupId>
|
|
<artifactId>dockerfile-maven-plugin</artifactId>
|
|
<version>1.4.8</version>
|
|
<executions>
|
|
<execution>
|
|
<id>production</id>
|
|
<goals>
|
|
<goal>build</goal>
|
|
<goal>push</goal>
|
|
</goals>
|
|
<configuration>
|
|
<repository>${ecr.repository}/signal-service</repository>
|
|
<pullNewerImage>false</pullNewerImage>
|
|
<tag>${project.version}-production</tag>
|
|
<buildArgs>
|
|
<JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
|
|
<CONFIG_FILE>production.yml</CONFIG_FILE>
|
|
</buildArgs>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>staging</id>
|
|
<goals>
|
|
<goal>build</goal>
|
|
<goal>push</goal>
|
|
</goals>
|
|
<configuration>
|
|
<repository>${ecr.repository}/signal-service</repository>
|
|
<pullNewerImage>false</pullNewerImage>
|
|
<tag>${project.version}-staging</tag>
|
|
<buildArgs>
|
|
<JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
|
|
<CONFIG_FILE>staging.yml</CONFIG_FILE>
|
|
</buildArgs>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.signal</groupId>
|
|
<artifactId>ecs-maven-plugin</artifactId>
|
|
<version>1.0-SNAPSHOT</version>
|
|
<configuration>
|
|
<awsRegion>US_EAST_1</awsRegion>
|
|
<taskFamily>signal-service</taskFamily>
|
|
<environment>staging</environment>
|
|
<version>${project.version}-staging</version>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<id>staging</id>
|
|
<goals>
|
|
<goal>create-task-revision</goal>
|
|
</goals>
|
|
<configuration>
|
|
<environment>staging</environment>
|
|
<version>${project.version}-staging</version>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>production</id>
|
|
<goals>
|
|
<goal>create-task-revision</goal>
|
|
</goals>
|
|
<configuration>
|
|
<environment>production</environment>
|
|
<version>${project.version}-production</version>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-deploy-plugin</artifactId>
|
|
<version>3.0.0-M1</version>
|
|
<configuration>
|
|
<skip>true</skip>
|
|
</configuration>
|
|
</plugin>
|
|
|
|
</plugins>
|
|
|
|
<extensions>
|
|
<extension>
|
|
<groupId>com.gkatzioura.maven.cloud</groupId>
|
|
<artifactId>s3-storage-wagon</artifactId>
|
|
<version>1.6</version>
|
|
</extension>
|
|
</extensions>
|
|
</build>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>maven-staging-repo-snapshot</id>
|
|
<url>s3://maven-staging-repo.signal.org/snapshot</url>
|
|
<releases>
|
|
<enabled>false</enabled>
|
|
</releases>
|
|
<snapshots>
|
|
<enabled>true</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
<repository>
|
|
<id>gcm-server-repository</id>
|
|
<url>https://raw.github.com/whispersystems/maven/master/gcm-server/releases/</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
</project>
|