81614f402b6855c1585ef7244023acb9a5a8137c
[sdc/sdc-workflow-designer.git] / sdc-workflow-designer-ui / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright © 2016-2018 European Support Limited
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at
8   ~
9   ~      http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   ~ Modifications copyright (c) 2019 Nokia
17 -->
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
23     <modelVersion>4.0.0</modelVersion>
24     <artifactId>sdc-workflow-designer-ui</artifactId>
25     <packaging>war</packaging>
26
27     <parent>
28         <groupId>org.onap.sdc.sdc-workflow-designer</groupId>
29         <artifactId>sdc-workflow-designer-parent</artifactId>
30         <version>1.11.1-SNAPSHOT</version>
31     </parent>
32
33     <properties>
34         <jest.command />
35         <jetty.version>9.4.45.v20220203</jetty.version>
36     </properties>
37
38
39     <dependencies>
40         <dependency>
41             <groupId>org.eclipse.jetty</groupId>
42             <artifactId>jetty-proxy</artifactId>
43             <version>${jetty.version}</version>
44             <exclusions>
45                 <exclusion>
46                     <artifactId>jetty-http</artifactId>
47                     <groupId>org.eclipse.jetty</groupId>
48                 </exclusion>
49             </exclusions>
50         </dependency>
51         <dependency>
52             <groupId>javax.servlet</groupId>
53             <artifactId>javax.servlet-api</artifactId>
54             <version>3.0.1</version>
55             <scope>provided</scope>
56         </dependency>
57         <dependency>
58             <groupId>org.eclipse.jetty</groupId>
59             <artifactId>jetty-http</artifactId>
60             <version>${jetty.version}</version>
61         </dependency>
62     </dependencies>
63
64     <build>
65         <plugins>
66             <plugin>
67                 <groupId>com.github.eirslett</groupId>
68                 <artifactId>frontend-maven-plugin</artifactId>
69                 <version>1.8.0</version>
70                 <configuration>
71                     <workingDirectory>src/main/frontend</workingDirectory>
72                     <installDirectory>target</installDirectory>
73                 </configuration>
74                 <executions>
75                     <execution>
76                         <id>install node and yarn</id>
77                         <goals>
78                             <goal>install-node-and-yarn</goal>
79                         </goals>
80                         <phase>generate-resources</phase>
81                         <configuration>
82                             <nodeVersion>v10.17.0</nodeVersion>
83                             <yarnVersion>v1.19.1</yarnVersion>
84                         </configuration>
85                     </execution>
86                     <execution>
87                         <id>yarn install</id>
88                         <goals>
89                             <goal>yarn</goal>
90                         </goals>
91                         <configuration>
92                             <arguments>install</arguments>
93                         </configuration>
94                     </execution>
95                     <execution>
96                         <id>yarn run webpack build</id>
97                         <goals>
98                             <goal>yarn</goal>
99                         </goals>
100                         <configuration>
101                             <yarnInheritsProxyConfigFromMaven>false</yarnInheritsProxyConfigFromMaven>
102                             <arguments>build</arguments>
103                         </configuration>
104                     </execution>
105                     <execution>
106                         <id>ui test</id>
107                         <goals>
108                             <goal>yarn</goal>
109                         </goals>
110                         <configuration>
111                             <yarnInheritsProxyConfigFromMaven>false</yarnInheritsProxyConfigFromMaven>
112                             <arguments>test-build ${jest.command}</arguments>
113                             <skip>${skipTests}</skip>
114                         </configuration>
115                         <phase>test</phase>
116                     </execution>
117                 </executions>
118             </plugin>
119             <plugin>
120                 <groupId>org.apache.maven.plugins</groupId>
121                 <artifactId>maven-war-plugin</artifactId>
122                 <version>3.2.2</version>
123                 <configuration>
124                     <webResources>
125                         <resource>
126                             <directory>src/main/frontend/dist</directory>
127                             <includes>
128                                 <include>*.*</include>
129                             </includes>
130                         </resource>
131                         <resource>
132                             <directory>src/main/frontend/external-resources/ping/</directory>
133                             <filtering>true</filtering>
134                             <includes>
135                                 <include>ping</include>
136                             </includes>
137                         </resource>
138                     </webResources>
139                 </configuration>
140             </plugin>
141         </plugins>
142     </build>
143     <profiles>
144         <profile>
145             <id>jest-windows-profile</id>
146             <activation>
147                 <os>
148                     <family>windows</family>
149                 </os>
150             </activation>
151             <properties>
152                 <jest.command>--runInBand</jest.command>
153             </properties>
154         </profile>
155         <profile>
156             <id>docker</id>
157             <activation>
158                 <activeByDefault>false</activeByDefault>
159             </activation>
160             <build>
161                 <plugins>
162                     <plugin>
163                         <artifactId>maven-resources-plugin</artifactId>
164                         <version>2.6</version>
165                         <executions>
166                             <execution>
167                                 <id>copy-resources-docker</id>
168                                 <phase>install</phase>
169                                 <goals>
170                                     <goal>copy-resources</goal>
171                                 </goals>
172                                 <configuration>
173                                     <outputDirectory>${basedir}/docker</outputDirectory>
174                                     <resources>
175                                         <resource>
176                                             <directory>${project.build.directory}</directory>
177                                             <include>${project.artifactId}-${project.version}.war</include>
178                                         </resource>
179                                     </resources>
180                                 </configuration>
181                             </execution>
182                         </executions>
183                     </plugin>
184                     <plugin>
185                         <groupId>io.fabric8</groupId>
186                         <artifactId>docker-maven-plugin</artifactId>
187                         <configuration>
188                             <apiVersion>${docker.api.version}</apiVersion>
189                             <images>
190                                 <image>
191                                     <name>onap/sdc-workflow-frontend</name>
192                                     <build>
193                                         <tags>
194                                             <tag>latest</tag>
195                                             <tag>${project.docker.latesttagtimestamp.version}</tag>
196                                             <tag>${project.docker.latesttag.version}</tag>
197                                         </tags>
198                                         <dockerFileDir>${project.basedir}/docker</dockerFileDir>
199                                         <args>
200                                             <ARTIFACT>${project.artifactId}-${project.version}.war</ARTIFACT>
201                                         </args>
202                                     </build>
203                                 </image>
204                             </images>
205                         </configuration>
206                     </plugin>
207                 </plugins>
208             </build>
209         </profile>
210     </profiles>
211 </project>
212