blob: 7c9041ff625130d6bc35b72440c6567dd4b99d8e [file] [log] [blame]
Ian Maxona7e8dbe2018-01-05 17:13:36 -08001<!--
2 ! Licensed to the Apache Software Foundation (ASF) under one
3 ! or more contributor license agreements. See the NOTICE file
4 ! distributed with this work for additional information
5 ! regarding copyright ownership. The ASF licenses this file
6 ! to you under the Apache License, Version 2.0 (the
7 ! "License"); you may not use this file except in compliance
8 ! with the License. You may obtain a copy of the License at
9 !
10 ! http://www.apache.org/licenses/LICENSE-2.0
11 !
12 ! Unless required by applicable law or agreed to in writing,
13 ! software distributed under the License is distributed on an
14 ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15 ! KIND, either express or implied. See the License for the
16 ! specific language governing permissions and limitations
17 ! under the License.
18 !-->
19<project xmlns="http://maven.apache.org/POM/4.0.0"
20 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
21 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
22 <parent>
23 <artifactId>apache-asterixdb</artifactId>
24 <groupId>org.apache.asterix</groupId>
Ian Maxon2ce56312023-05-09 12:37:01 -070025 <version>0.9.8.2-SNAPSHOT</version>
Ian Maxona7e8dbe2018-01-05 17:13:36 -080026 </parent>
27 <modelVersion>4.0.0</modelVersion>
Ian Maxona7e8dbe2018-01-05 17:13:36 -080028 <artifactId>asterix-dashboard</artifactId>
Michael Blow4cd925c2018-01-20 17:15:38 -050029
30 <properties>
31 <root.dir>${basedir}/..</root.dir>
32 </properties>
33
Ian Maxona7e8dbe2018-01-05 17:13:36 -080034 <dependencies>
35 <dependency>
36 <groupId>org.apache.hyracks</groupId>
37 <artifactId>hyracks-http</artifactId>
38 </dependency>
39 <dependency>
40 <groupId>org.apache.asterix</groupId>
41 <artifactId>asterix-common</artifactId>
42 <version>${project.version}</version>
43 </dependency>
44 <dependency>
45 <groupId>org.apache.logging.log4j</groupId>
46 <artifactId>log4j-api</artifactId>
47 </dependency>
48 <dependency>
Ian Maxona7e8dbe2018-01-05 17:13:36 -080049 <groupId>com.fasterxml.jackson.core</groupId>
50 <artifactId>jackson-databind</artifactId>
51 </dependency>
Michael Blowe8637d02021-10-28 20:11:23 -040052 <dependency>
53 <groupId>io.netty</groupId>
54 <artifactId>netty-codec-http</artifactId>
55 </dependency>
Ian Maxona7e8dbe2018-01-05 17:13:36 -080056 </dependencies>
57
Michael Blow5c3cdb02020-04-25 11:36:45 -040058 <profiles>
59 <profile>
60 <id>include-dashboard</id>
61 <activation>
62 <activeByDefault>true</activeByDefault>
63 </activation>
64 <build>
65 <plugins>
66 <plugin>
67 <groupId>com.github.eirslett</groupId>
68 <artifactId>frontend-maven-plugin</artifactId>
ggalvizo86c18122021-06-22 11:30:58 -070069 <version>1.11.0</version>
Ian Maxon3ae6ef02018-05-24 18:32:47 -070070 <configuration>
mileshong124b3e502021-05-22 20:28:34 -070071 <nodeVersion>v14.15.4</nodeVersion>
72 <npmVersion>6.14.11</npmVersion>
Michael Blow5c3cdb02020-04-25 11:36:45 -040073 <workingDirectory>target/dashboard</workingDirectory>
74 <installDirectory>target/dashboard</installDirectory>
Ian Maxon3ae6ef02018-05-24 18:32:47 -070075 </configuration>
Michael Blow5c3cdb02020-04-25 11:36:45 -040076 <executions>
77 <execution>
78 <id>install node and yarn</id>
79 <goals>
80 <goal>install-node-and-npm</goal>
81 </goals>
82 <phase>generate-resources</phase>
83 </execution>
84 <execution>
85 <id>npm install</id>
86 <phase>process-resources</phase>
87 <goals>
88 <goal>npm</goal>
89 </goals>
90 <configuration>
91 <arguments>install --cache ${settings.localRepository}/.npm-cache --no-optional</arguments>
92 </configuration>
93 </execution>
94 <execution>
95 <id>npm run-script mavenbuild</id>
96 <phase>compile</phase>
97 <goals>
98 <goal>npm</goal>
99 </goals>
100 <configuration>
101 <arguments>run-script mavenbuild</arguments>
102 </configuration>
103 </execution>
104 </executions>
105 </plugin>
106 <plugin>
107 <artifactId>maven-resources-plugin</artifactId>
108 <executions>
109 <execution>
110 <id>copy-static</id>
111 <phase>${resource.stage}</phase>
112 <goals>
113 <goal>copy-resources</goal>
114 </goals>
115 <configuration>
116 <outputDirectory>
117 ${basedir}/target/classes/dashboard/
118 </outputDirectory>
119 <resources>
120 <resource>
121 <directory>${basedir}/target/dashboard/static/
122 </directory>
123 </resource>
124 </resources>
125 </configuration>
126 </execution>
127 <execution>
128 <id>copy-node</id>
129 <phase>validate</phase>
130 <goals>
131 <goal>copy-resources</goal>
132 </goals>
133 <configuration>
134 <outputDirectory>
135 ${basedir}/target/dashboard
136 </outputDirectory>
137 <resources>
138 <resource>
139 <directory>${basedir}/src/node
140 </directory>
141 </resource>
142 </resources>
143 </configuration>
144 </execution>
145 </executions>
146 </plugin>
147 <plugin>
148 <groupId>org.apache.hyracks</groupId>
149 <artifactId>license-automation-plugin</artifactId>
150 <executions>
151 <execution>
152 <phase>${license.stage}</phase>
153 <goals>
154 <goal>generate</goal>
155 </goals>
156 </execution>
157 </executions>
Ian Maxon3ae6ef02018-05-24 18:32:47 -0700158 <configuration>
Michael Blow5c3cdb02020-04-25 11:36:45 -0400159 <templateRootDir>${basedir}</templateRootDir>
160 <outputDir>${project.build.directory}/classes/META-INF</outputDir>
161 <generatedFiles>
162 <generatedFile>
163 <template>src/main/licenses/dashboard-license.ftl</template>
164 <outputFile>LICENSE</outputFile>
165 </generatedFile>
166 </generatedFiles>
167 <location>repo/</location>
168 <timeoutSecs>10</timeoutSecs>
169 <downloadDir>
170 ${project.build.directory}/generated-resources/license
171 </downloadDir>
172 <excludedScopes>
173 <excludedScope>test</excludedScope>
174 </excludedScopes>
175 <licenseDirectory>${basedir}/src/main/licenses/content</licenseDirectory>
Ian Maxon3ae6ef02018-05-24 18:32:47 -0700176 </configuration>
Michael Blow5c3cdb02020-04-25 11:36:45 -0400177 </plugin>
178 </plugins>
179 </build>
180 </profile>
181 <profile>
182 <id>skip-dashboard</id>
183 </profile>
184 </profiles>
Ian Maxon0bb11aa2021-07-07 14:55:59 -0700185 <build>
186 <plugins>
187 <plugin>
188 <groupId>org.apache.maven.plugins</groupId>
189 <artifactId>maven-antrun-plugin</artifactId>
190 <executions>
191 <execution>
192 <id>touch-3rdparty</id>
193 <phase>${skip-npm-touch.stage}</phase>
194 <configuration>
195 <target>
196 <touch file="${basedir}/target/dashboard/static/3rdpartylicenses.txt" mkdirs="true"/>
197 </target>
198 </configuration>
199 <goals>
200 <goal>run</goal>
201 </goals>
202 </execution>
203 </executions>
204 </plugin>
205 </plugins>
206 </build>
Michael Blow4cd925c2018-01-20 17:15:38 -0500207</project>