-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpom.xml
182 lines (171 loc) · 6.78 KB
/
pom.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
<?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>
<packaging>pom</packaging>
<!-- Main BOM file defines organization, licenses, developers, repositories,
shared properties, dependency management, plugin management -->
<parent>
<groupId>edu.utexas.tacc.tapis</groupId>
<artifactId>tapis-bom</artifactId>
<version>[2.0.45,3.0)</version>
<!-- Set empty relative path to avoid maven warning and -->
<!-- ensure parent is found in local repository if that -->
<!-- is the only place it exists. -->
<relativePath />
</parent>
<artifactId>tapis-client-java</artifactId>
<version>2.0.144-SNAPSHOT</version>
<name>Tapis Client</name>
<description>Top level java client</description>
<url>https://github.com/tapis-project/tapis-client-java</url>
<scm>
<connection>scm:git:[email protected]:tapis-project/tapis-client-java.git</connection>
<url>https://github.com/tapis-project/tapis-client-java</url>
<tag>HEAD</tag>
</scm>
<!-- AVOID CIRCULAR DEPENDENCY WITH TAPIS-SHARED-JAVA -->
<!-- -->
<!-- Code in this repository should not depend on -->
<!-- the Tapis shared libraries since those libraries -->
<!-- depend on client libraries defined here. -->
<properties>
<!-- Most properties set in parent tapis-bom -->
<!-- Properties can be overridden here -->
</properties>
<!-- Dependencies shared by all modules -->
<dependencies>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>logging-interceptor</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</dependency>
<dependency>
<groupId>io.gsonfire</groupId>
<artifactId>gson-fire</artifactId>
</dependency>
<dependency>
<groupId>org.threeten</groupId>
<artifactId>threetenbp</artifactId>
</dependency>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
</dependency>
</dependencies>
<profiles>
<!-- Profile for building using TACC repositories -->
<profile>
<id>tacc</id>
<activation>
<property>
<name>!skipTaccProfile</name>
</property>
</activation>
<repositories>
<repository>
<id>tapis-local-snapshots</id>
<name>Local repo for snapshots</name>
<url>https://maven03.tacc.utexas.edu/repository/maven-snapshots</url>
<releases> <enabled>false</enabled> </releases>
<snapshots> <enabled>true</enabled> </snapshots>
</repository>
<repository>
<id>tapis-local-releases</id>
<name>Local repo for releases</name>
<url>https://maven03.tacc.utexas.edu/repository/maven-releases</url>
</repository>
</repositories>
</profile>
<!-- Profile for building without using TACC repositories -->
<profile>
<id>tacc-external</id>
</profile>
</profiles>
<modules>
<module>shared-clientlib</module>
<module>auth-client</module>
<module>security-client</module>
<module>tokens-client</module>
<module>tenants-client</module>
<module>systems-client</module>
<module>files-client</module>
<module>meta-client</module>
<module>apps-client</module>
<module>jobs-client</module>
<module>notifications-client</module>
<module>globusproxy-client</module>
</modules>
<build>
<plugins>
<!-- gitflow-maven-plugin supports various git workflow steps, such as gitflow:release-start-->
<!-- gitflow:release-finish, gitflow:feature-start, gitflow:feature-finish-->
<!-- For configuration see parent pom tapis-bom.xml -->
<plugin>
<groupId>com.amashchenko.maven.plugin</groupId>
<artifactId>gitflow-maven-plugin</artifactId>
</plugin>
</plugins>
<resources>
<!-- Write the project version number to the specified file. -->
<!-- Setting the targetPath puts the file into the jar at the -->
<!-- specified root-relative directory. The the modified -->
<!-- tapis.version file is always copied to the target/classes -->
<!-- directory. Do the same for other data that we want to -->
<!-- capture. A jar and war file will contain these files -->
<!-- as long as the templated files are in the configured -->
<!-- directory in the child project. -->
<resource>
<directory>src/main/resources</directory>
<targetPath>.</targetPath>
<filtering>true</filtering>
<includes>
<include>**/tapis.version</include>
<include>**/tapis.fullversion</include>
<include>**/git.info</include>
<include>**/build.time</include>
</includes>
</resource>
<!-- For some reason, we have to tell maven, surefire or testng -->
<!-- that all main/resources need to be copied to some target -->
<!-- directory. We also have to tell them to NOT undo filtering -->
<!-- for the files that we explicitly filter above. Good stuff. -->
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/*</include>
</includes>
<excludes>
<exclude>**/tapis.version</exclude>
<exclude>**/tapis.fullversion</exclude>
<exclude>**/git.info</exclude>
<exclude>**/build.time</exclude>
</excludes>
</resource>
</resources>
</build>
</project>