pom.xml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3. xmlns="http://maven.apache.org/POM/4.0.0"
  4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  5. <modelVersion>4.0.0</modelVersion>
  6. <parent>
  7. <groupId>org.springframework.cloud</groupId>
  8. <artifactId>spring-cloud-build</artifactId>
  9. <version>4.1.0</version>
  10. <relativePath/><!-- lookup parent from repository -->
  11. </parent>
  12. <groupId>io.awspring.cloud</groupId>
  13. <artifactId>spring-cloud-aws</artifactId>
  14. <version>3.1.1-SNAPSHOT</version>
  15. <packaging>pom</packaging>
  16. <name>Spring Cloud AWS</name>
  17. <scm>
  18. <url>https://github.com/awspring/spring-cloud-aws</url>
  19. <connection>scm:git:git://github.com/awspring/spring-cloud-aws.git
  20. </connection>
  21. <developerConnection>
  22. scm:git:ssh://git@github.com/awspring/spring-cloud-aws.git
  23. </developerConnection>
  24. <tag>HEAD</tag>
  25. </scm>
  26. <properties>
  27. <spotless.version>2.40.0</spotless.version>
  28. <jacoco.version>0.8.8</jacoco.version>
  29. <maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
  30. <testcontainers.version>1.19.3</testcontainers.version>
  31. </properties>
  32. <modules>
  33. <module>spring-cloud-aws-core</module>
  34. <module>spring-cloud-aws-autoconfigure</module>
  35. <module>spring-cloud-aws-dependencies</module>
  36. <module>spring-cloud-aws-parameter-store</module>
  37. <module>spring-cloud-aws-secrets-manager</module>
  38. <module>spring-cloud-aws-ses</module>
  39. <module>spring-cloud-aws-sns</module>
  40. <module>spring-cloud-aws-sqs</module>
  41. <module>spring-cloud-aws-dynamodb</module>
  42. <module>spring-cloud-aws-s3-parent</module>
  43. <module>spring-cloud-aws-starters/spring-cloud-aws-starter</module>
  44. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-dynamodb</module>
  45. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-metrics</module>
  46. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-parameter-store</module>
  47. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-s3</module>
  48. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-secrets-manager</module>
  49. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-ses</module>
  50. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-sns</module>
  51. <module>spring-cloud-aws-starters/spring-cloud-aws-starter-sqs</module>
  52. <module>spring-cloud-aws-samples</module>
  53. <module>spring-cloud-aws-test</module>
  54. <module>docs</module>
  55. </modules>
  56. <dependencyManagement>
  57. <dependencies>
  58. <dependency>
  59. <groupId>io.awspring.cloud</groupId>
  60. <artifactId>spring-cloud-aws-dependencies</artifactId>
  61. <version>${project.version}</version>
  62. <type>pom</type>
  63. <scope>import</scope>
  64. </dependency>
  65. <dependency>
  66. <groupId>org.testcontainers</groupId>
  67. <artifactId>testcontainers-bom</artifactId>
  68. <version>${testcontainers.version}</version>
  69. <type>pom</type>
  70. <scope>import</scope>
  71. </dependency>
  72. </dependencies>
  73. </dependencyManagement>
  74. <dependencies>
  75. <dependency>
  76. <groupId>org.slf4j</groupId>
  77. <artifactId>slf4j-api</artifactId>
  78. </dependency>
  79. <dependency>
  80. <groupId>org.springframework.boot</groupId>
  81. <artifactId>spring-boot-starter-test</artifactId>
  82. <scope>test</scope>
  83. </dependency>
  84. </dependencies>
  85. <build>
  86. <pluginManagement>
  87. <plugins>
  88. <plugin>
  89. <artifactId>maven-compiler-plugin</artifactId>
  90. <configuration>
  91. <compilerArgs>
  92. <!-- Enable all warnings -->
  93. <compilerArg>-Xlint:all</compilerArg>
  94. <!-- Disable options warning because we will have differences between the compiler and source code level-->
  95. <compilerArg>-Xlint:-options</compilerArg>
  96. <!-- Disable serialversionuid warnings -->
  97. <compilerArg>-Xlint:-serial</compilerArg>
  98. <!--compilerArg>-Werror</compilerArg-->
  99. </compilerArgs>
  100. </configuration>
  101. </plugin>
  102. <plugin>
  103. <groupId>com.diffplug.spotless</groupId>
  104. <artifactId>spotless-maven-plugin</artifactId>
  105. <version>${spotless.version}</version>
  106. <configuration>
  107. <java>
  108. <importOrder />
  109. <eclipse>
  110. <file>${maven.multiModuleProjectDirectory}/eclipse-code-formatter.xml</file>
  111. </eclipse>
  112. <removeUnusedImports/>
  113. <licenseHeader>
  114. <file>${maven.multiModuleProjectDirectory}/license-header.txt</file>
  115. </licenseHeader>
  116. </java>
  117. </configuration>
  118. </plugin>
  119. </plugins>
  120. </pluginManagement>
  121. <plugins>
  122. <plugin>
  123. <groupId>org.apache.maven.plugins</groupId>
  124. <artifactId>maven-javadoc-plugin</artifactId>
  125. <configuration>
  126. <skip>true</skip>
  127. <links>
  128. <link>https://docs.oracle.com/javase/8/docs/api/</link>
  129. <link>https://javaee.github.io/javaee-spec/javadocs/</link>
  130. <link>https://fasterxml.github.io/jackson-core/javadoc/2.8/</link>
  131. <link>https://docs.spring.io/spring/docs/5.3.x/javadoc-api/</link>
  132. </links>
  133. <author>true</author>
  134. <header>${project.name}</header>
  135. <reportOutputDirectory>${project.build.directory}/site/${project.version}/apidocs</reportOutputDirectory>
  136. <source>17</source>
  137. </configuration>
  138. </plugin>
  139. <plugin>
  140. <groupId>com.diffplug.spotless</groupId>
  141. <artifactId>spotless-maven-plugin</artifactId>
  142. <executions>
  143. <execution>
  144. <phase>validate</phase>
  145. <configuration>
  146. <skip>${disable.checks}</skip>
  147. </configuration>
  148. <goals>
  149. <goal>apply</goal>
  150. <goal>check</goal>
  151. </goals>
  152. </execution>
  153. </executions>
  154. </plugin>
  155. </plugins>
  156. </build>
  157. <profiles>
  158. <profile>
  159. <id>spring</id>
  160. <repositories>
  161. <repository>
  162. <id>spring-snapshots</id>
  163. <name>Spring Snapshots</name>
  164. <url>https://repo.spring.io/libs-snapshot-local</url>
  165. <snapshots>
  166. <enabled>true</enabled>
  167. </snapshots>
  168. <releases>
  169. <enabled>false</enabled>
  170. </releases>
  171. </repository>
  172. <repository>
  173. <id>spring-milestones</id>
  174. <name>Spring Milestones</name>
  175. <url>https://repo.spring.io/libs-milestone-local</url>
  176. <snapshots>
  177. <enabled>false</enabled>
  178. </snapshots>
  179. </repository>
  180. </repositories>
  181. <pluginRepositories>
  182. <pluginRepository>
  183. <id>spring-snapshots</id>
  184. <name>Spring Snapshots</name>
  185. <url>https://repo.spring.io/libs-snapshot-local</url>
  186. <snapshots>
  187. <enabled>true</enabled>
  188. </snapshots>
  189. <releases>
  190. <enabled>false</enabled>
  191. </releases>
  192. </pluginRepository>
  193. <pluginRepository>
  194. <id>spring-milestones</id>
  195. <name>Spring Milestones</name>
  196. <url>https://repo.spring.io/libs-milestone-local</url>
  197. <snapshots>
  198. <enabled>false</enabled>
  199. </snapshots>
  200. </pluginRepository>
  201. </pluginRepositories>
  202. </profile>
  203. <profile>
  204. <id>release</id>
  205. <build>
  206. <plugins>
  207. <plugin>
  208. <groupId>org.apache.maven.plugins</groupId>
  209. <artifactId>maven-gpg-plugin</artifactId>
  210. <version>${maven-gpg-plugin.version}</version>
  211. <configuration>
  212. <!-- Prevent gpg from using pinentry programs -->
  213. <gpgArguments>
  214. <arg>--pinentry-mode</arg>
  215. <arg>loopback</arg>
  216. </gpgArguments>
  217. </configuration>
  218. <executions>
  219. <execution>
  220. <id>sign-artifacts</id>
  221. <phase>verify</phase>
  222. <goals>
  223. <goal>sign</goal>
  224. </goals>
  225. </execution>
  226. </executions>
  227. </plugin>
  228. <plugin>
  229. <groupId>org.apache.maven.plugins</groupId>
  230. <artifactId>maven-javadoc-plugin</artifactId>
  231. <configuration>
  232. <skip>false</skip>
  233. </configuration>
  234. </plugin>
  235. </plugins>
  236. </build>
  237. </profile>
  238. <profile>
  239. <id>docs-classic</id>
  240. <build>
  241. <plugins>
  242. <plugin>
  243. <groupId>org.apache.maven.plugins</groupId>
  244. <artifactId>maven-javadoc-plugin</artifactId>
  245. <configuration>
  246. <skip>false</skip>
  247. </configuration>
  248. </plugin>
  249. </plugins>
  250. </build>
  251. </profile>
  252. <profile>
  253. <id>coverage</id>
  254. <properties>
  255. <sonar.organization>awspring</sonar.organization>
  256. <sonar.projectKey>awspring_spring-cloud-aws</sonar.projectKey>
  257. <!-- https://community.sonarsource.com/t/project-quarkusio-quarkus-cant-have-2-modules-with-the-following-key-quarkusio-quarkus/33824/6 -->
  258. <sonar.moduleKey>${project.artifactId}</sonar.moduleKey>
  259. <sonar.host.url>https://sonarcloud.io</sonar.host.url>
  260. </properties>
  261. <build>
  262. <plugins>
  263. <plugin>
  264. <groupId>org.jacoco</groupId>
  265. <artifactId>jacoco-maven-plugin</artifactId>
  266. <version>${jacoco.version}</version>
  267. <executions>
  268. <execution>
  269. <id>prepare-agent</id>
  270. <goals>
  271. <goal>prepare-agent</goal>
  272. </goals>
  273. </execution>
  274. <execution>
  275. <id>report</id>
  276. <goals>
  277. <goal>report</goal>
  278. </goals>
  279. <configuration>
  280. <formats>
  281. <format>XML</format>
  282. </formats>
  283. </configuration>
  284. </execution>
  285. </executions>
  286. </plugin>
  287. <plugin>
  288. <groupId>org.apache.maven.plugins</groupId>
  289. <artifactId>maven-surefire-plugin</artifactId>
  290. <configuration>
  291. <argLine>@{argLine} -Xms512m -Xmx512m</argLine>
  292. </configuration>
  293. </plugin>
  294. </plugins>
  295. </build>
  296. </profile>
  297. </profiles>
  298. <distributionManagement>
  299. <repository>
  300. <id>ossrh-awspring</id>
  301. <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
  302. </repository>
  303. </distributionManagement>
  304. <licenses>
  305. <license>
  306. <name>Apache License, Version 2.0</name>
  307. <url>https://www.apache.org/licenses/LICENSE-2.0</url>
  308. <comments>
  309. Copyright 2013-$YEAR the original author or authors.
  310. Licensed under the Apache License, Version 2.0 (the "License");
  311. you may not use this file except in compliance with the License.
  312. You may obtain a copy of the License at
  313. https://www.apache.org/licenses/LICENSE-2.0
  314. Unless required by applicable law or agreed to in writing, software
  315. distributed under the License is distributed on an "AS IS" BASIS,
  316. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  317. See the License for the specific language governing permissions and
  318. limitations under the License.
  319. </comments>
  320. </license>
  321. </licenses>
  322. </project>