Fix for Penetration test _ Session and cookie management
[vid.git] / vid-webpack-master / pom.xml
1 <?xml version="1.0"?>
2 <project
3   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
4   xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
5   <modelVersion>4.0.0</modelVersion>
6
7   <!-- This is the Maven project object model (POM) file for VID web application
8       based on the ECOMP SDK distribution. This file stands alone; it does not
9       inherit from a parent maven module. -->
10   <groupId>org.onap.vid</groupId>
11   <artifactId>vid-webpack-master</artifactId>
12   <version>8.0.2-SNAPSHOT</version>
13   <packaging>war</packaging>
14   <name>VID UI</name>
15   <description>VID UI</description>
16
17   <properties>
18     <encoding>UTF-8</encoding>
19     <!--<springframework.version>5.1.6.RELEASE</springframework.version>-->
20     <!--<hibernate.version>4.3.11.Final</hibernate.version>-->
21     <!-- Skip assembling the zip by default -->
22     <skipassembly>true</skipassembly>
23     <!-- Tests usually require some setup that maven cannot do, so skip. -->
24     <skiptests>false</skiptests>
25     <!-- this should be commented for local debugging -->
26     <!-- <deployenv>local</deployenv> -->
27     <nexusproxy>https://nexus.onap.org</nexusproxy>
28     <stagingNexusPath>content/repositories/staging/</stagingNexusPath>
29     <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
30     <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
31
32     <eirslett.version>1.9.1</eirslett.version>
33     <node.version>v10.19.0</node.version>
34     <npm.version>6.14.4</npm.version>
35
36     <NPM_CMD>ci</NPM_CMD>
37   </properties>
38
39
40   <repositories>
41     <repository>
42       <id>onap-staging</id>
43       <name>ONAP - Staging Repository</name>
44       <url>${nexusproxy}/${stagingNexusPath}</url>
45     </repository>
46     <repository>
47       <id>ecomp-releases</id>
48       <name>OpenECOMP - Release Repository</name>
49       <url>${nexusproxy}/${releaseNexusPath}</url>
50     </repository>
51     <repository>
52       <id>ecomp-snapshots</id>
53       <name>OpenECOMP - Snapshot Repository</name>
54       <url>${nexusproxy}/${snapshotNexusPath}</url>
55     </repository>
56     <repository>
57       <id>ecomp-public</id>
58       <name>ecomp onap public Repository</name>
59       <url>https://nexus.onap.org/content/groups/public</url>
60     </repository>
61   </repositories>
62
63   <distributionManagement>
64     <repository>
65       <id>ecomp-releases</id>
66       <name>VID Release Repository</name>
67       <url>${nexusproxy}/${releaseNexusPath}</url>
68     </repository>
69     <snapshotRepository>
70       <id>ecomp-snapshots</id>
71       <name>VID Snapshot Repository</name>
72       <url>${nexusproxy}/${snapshotNexusPath}</url>
73     </snapshotRepository>
74
75   </distributionManagement>
76
77   <profiles>
78
79     <profile>
80       <id>if-not-webpack</id>
81       <activation>
82         <property>
83           <name>skipModernUi</name>
84           <value>true</value>
85         </property>
86       </activation>
87       <build>
88         <plugins>
89           <plugin>
90             <groupId>org.apache.maven.plugins</groupId>
91             <artifactId>maven-antrun-plugin</artifactId>
92             <version>1.8</version>
93             <executions>
94               <execution>
95                 <id>make-empty-dist</id>
96                 <phase>validate</phase>
97                 <configuration>
98                   <target>
99                     <mkdir dir="${project.basedir}/dist/"/>
100                     <echo file="${project.basedir}/dist/NO-WEBPACK.txt" append="false">
101                       Note: 'webpack' profile was not selected while mvn build. This 'dist' folder was created to make
102                       the war creation through.
103                     </echo>
104                   </target>
105                 </configuration>
106                 <goals>
107                   <goal>run</goal>
108                 </goals>
109               </execution>
110             </executions>
111           </plugin>
112
113         </plugins>
114       </build>
115     </profile>
116
117     <profile>
118       <id>webpack-npm</id>
119       <activation>
120         <property>
121           <name>skipModernUi</name>
122           <value>!true</value>
123         </property>
124         <activeByDefault>true</activeByDefault>
125       </activation>
126       <build>
127         <plugins>
128           <plugin>
129             <groupId>com.github.eirslett</groupId>
130             <artifactId>frontend-maven-plugin</artifactId>
131             <!-- NB! Set <version> to the latest released version of frontend-maven-plugin, like in README.md -->
132             <version>${eirslett.version}</version>
133
134             <executions>
135
136               <execution>
137                 <id>install node and npm</id>
138                 <goals>
139                   <goal>install-node-and-npm</goal>
140                 </goals>
141                 <configuration>
142                   <!-- See https://nodejs.org/en/download/ for latest node and npm (lts) versions -->
143                   <npmVersion>${npm.version}</npmVersion>
144                   <nodeVersion>${node.version}</nodeVersion>
145                 </configuration>
146               </execution>
147
148               <execution>
149                 <id>npm install</id>
150                 <goals>
151                   <goal>npm</goal>
152                 </goals>
153                 <!-- Optional configuration which provides for running any npm command -->
154                 <configuration>
155                   <arguments>install</arguments>
156                   <environmentVariables>
157                     <CYPRESS_INSTALL_BINARY>0</CYPRESS_INSTALL_BINARY>
158                   </environmentVariables>
159                 </configuration>
160               </execution>
161
162               <execution>
163                 <id>npm run</id>
164                 <goals>
165                   <goal>npm</goal>
166                 </goals>
167                 <configuration>
168                   <arguments>run ${NPM_CMD}</arguments>
169                 </configuration>
170               </execution>
171             </executions>
172           </plugin>
173         </plugins>
174       </build>
175     </profile>
176
177     <profile>
178       <id>cypress</id>
179       <build>
180         <plugins>
181           <plugin>
182             <groupId>com.github.eirslett</groupId>
183             <artifactId>frontend-maven-plugin</artifactId>
184             <!-- NB! Set <version> to the latest released version of frontend-maven-plugin, like in README.md -->
185             <version>${eirslett.version}</version>
186
187             <executions>
188
189               <execution>
190                 <id>install node and npm</id>
191                 <goals>
192                   <goal>install-node-and-npm</goal>
193                 </goals>
194                 <configuration>
195                   <!-- See https://nodejs.org/en/download/ for latest node and npm (lts) versions -->
196                   <npmVersion>${npm.version}</npmVersion>
197                   <nodeVersion>${node.version}</nodeVersion>
198                 </configuration>
199               </execution>
200
201               <execution>
202                 <id>npm install cypress</id>
203                 <goals>
204                   <goal>npm</goal>
205                 </goals>
206                 <!-- Optional configuration which provides for running any npm command -->
207                 <configuration>
208                   <arguments>install --verbose cypress @bahmutov/add-typescript-to-cypress</arguments>
209                 </configuration>
210               </execution>
211
212               <execution>
213                 <id>npm run cypress</id>
214                 <goals>
215                   <goal>npm</goal>
216                 </goals>
217                 <configuration>
218                   <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven>
219                   <arguments>run cypress:run -- --config baseUrl=http://${VID_HOST}:8080/vid</arguments>
220                 </configuration>
221               </execution>
222
223             </executions>
224           </plugin>
225         </plugins>
226       </build>
227     </profile>
228   </profiles>
229
230   <build>
231     <finalName>vid-webpack-master</finalName>
232     <plugins>
233
234       <plugin>
235         <groupId>org.apache.maven.plugins</groupId>
236         <artifactId>maven-war-plugin</artifactId>
237         <version>3.2.3</version>
238         <configuration>
239           <webResources>
240             <resource>
241               <!-- this is relative to the pom.xml directory -->
242               <directory>dist</directory>
243               <targetPath>app/ui</targetPath>
244             </resource>
245           </webResources>
246           <webXml>src/WEB-INF/web.xml</webXml>
247         </configuration>
248       </plugin>
249     <plugin>
250       <artifactId>maven-clean-plugin</artifactId>
251       <configuration>
252         <filesets>
253           <fileset>
254             <directory>dist</directory>
255           </fileset>
256         </filesets>
257       </configuration>
258     </plugin>
259     </plugins>
260   </build>
261   <dependencies>
262   </dependencies>
263 </project>