pom.xml 10 KB

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