pom.xml 7.28 KB
Newer Older
1
2
3
4
5
6
7
<?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>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
Sonia Zorba's avatar
Sonia Zorba committed
8
        <version>2.2.7.RELEASE</version>
9
10
11
12
13
14
15
16
17
18
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>it.inaf.ia2</groupId>
    <artifactId>gms</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>gms</name>
    <description>Group Membership Service</description>

    <properties>
        <java.version>1.8</java.version>
19
        <show.user_id_in_search>true</show.user_id_in_search>
20
21
22
23
24
25
26
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
Sonia Zorba's avatar
Sonia Zorba committed
27
28
29
30
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>
31
32
33
34
35
        <dependency>
            <groupId>org.springframework.security.oauth.boot</groupId>
            <artifactId>spring-security-oauth2-autoconfigure</artifactId>
            <version>${project.parent.version}</version>
        </dependency>
36
37
        <dependency>
            <groupId>org.springframework.boot</groupId>
38
            <artifactId>spring-boot-starter-jdbc</artifactId>
39
40
        </dependency>
        <dependency>
41
42
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
43
44
            <scope>runtime</scope>
        </dependency>
Sonia Zorba's avatar
Sonia Zorba committed
45
46
47
48
49
        <dependency>
            <groupId>com.opencsv</groupId>
            <artifactId>opencsv</artifactId>
            <version>3.8</version>
        </dependency>
50
51
52
53
54
55
56
57
58
59
60
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
Sonia Zorba's avatar
Sonia Zorba committed
61
        <!-- Embedded PostgreSQL: -->
62
        <dependency>
Sonia Zorba's avatar
Sonia Zorba committed
63
64
65
            <groupId>com.opentable.components</groupId>
            <artifactId>otj-pg-embedded</artifactId>
            <version>0.13.1</version>
66
67
            <scope>test</scope>
        </dependency>
68
69
70
    </dependencies>

    <build>
71
        <finalName>gms</finalName>
72
        <plugins>
Sonia Zorba's avatar
Sonia Zorba committed
73
74
75
76
77
78
            <plugin>
                <groupId>com.github.eirslett</groupId>
                <artifactId>frontend-maven-plugin</artifactId>
                <version>1.7.6</version>
                <configuration>
                    <nodeVersion>v12.6.0</nodeVersion>
79
80
81
                    <environmentVariables>
                        <VUE_APP_SHOW_USER_ID_IN_SEARCH>${show.user_id_in_search}</VUE_APP_SHOW_USER_ID_IN_SEARCH>
                    </environmentVariables>
Sonia Zorba's avatar
Sonia Zorba committed
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>install-node-and-npm</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>npm install</id>
                        <goals>
                            <goal>npm</goal>
                        </goals>
                        <configuration>
                            <arguments>run build --prefix ../gms-ui</arguments>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.1.0</version>
                <executions>
                    <execution>
                        <id>copy-resources</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${basedir}/target/classes/static</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>../gms-ui/dist</directory>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>3.1.2</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                        <phase>package</phase>
                        <configuration>
                            <!-- creates a gms-lib jar that can be included as dependency in other projects -->
                            <classifier>lib</classifier>
                            <includes>
                                <include>**/**</include>
                            </includes>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
Sonia Zorba's avatar
Sonia Zorba committed
141
142
143
144
145
146
147
148
149
150
151
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>dockerfile-maven-plugin</artifactId>
                <version>1.4.10</version>
                <configuration>
                    <repository>${project.artifactId}</repository>
                    <buildArgs>
                        <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
                    </buildArgs>
                </configuration>
            </plugin>
152
153
154
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
Sonia Zorba's avatar
Sonia Zorba committed
155
156
                <configuration>
                    <executable>true</executable>
157
158
                    <!-- layout ZIP is necessary for loading external jar using PropertiesLauncher (used for hooks) -->
                    <layout>ZIP</layout>
Sonia Zorba's avatar
Sonia Zorba committed
159
                </configuration>
160
            </plugin>
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
            <plugin>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.2</version>
            </plugin>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.8.4</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>report</id>
                        <phase>test</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
184
185
186
        </plugins>
    </build>
</project>