Release 1.13.4
[sdc.git] / cucumber-js-test-apis-ci / pom.xml
1 <?xml version="1.0"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5     <modelVersion>4.0.0</modelVersion>
6     <parent>
7         <groupId>org.openecomp.sdc</groupId>
8         <artifactId>sdc-main</artifactId>
9         <version>1.7.0-SNAPSHOT</version>
10     </parent>
11     <artifactId>cucumber-bdd</artifactId>
12     <name>cucumber-bdd</name>
13     <version>1.7.0-SNAPSHOT</version>
14     <packaging>jar</packaging>
15     <build>
16         <plugins>
17             <plugin>
18                 <groupId>org.apache.maven.plugins</groupId>
19                 <artifactId>maven-clean-plugin</artifactId>
20                 <executions>
21                     <execution>
22                         <id>clean.dist.folder</id>
23                         <phase>clean</phase>
24                         <goals>
25                             <goal>clean</goal>
26                         </goals>
27                         <configuration>
28                             <filesets>
29                                 <fileset>
30                                     <directory>${basedir}/node_modules</directory>
31                                     <includes>
32                                         <include>**/*</include>
33                                     </includes>
34                                 </fileset>
35                                 <fileset>
36                                     <directory>${basedir}/report</directory>
37                                     <includes>
38                                         <include>**/*</include>
39                                     </includes>
40                                 </fileset>
41                                 <fileset>
42                                     <directory>${basedir}/resources/downloads</directory>
43                                     <includes>
44                                         <include>**/*</include>
45                                     </includes>
46                                 </fileset>
47                                 <fileset>
48                                     <directory>${basedir}/docs</directory>
49                                     <includes>
50                                         <include>**/*</include>
51                                     </includes>
52                                 </fileset>
53                                 <fileset>
54                                     <directory>${basedir}</directory>
55                                     <includes>
56                                         <include>jenkinsConfig.json</include>
57                                     </includes>
58                                 </fileset>
59                             </filesets>
60                         </configuration>
61                     </execution>
62                 </executions>
63             </plugin>
64             <plugin>
65                 <artifactId>maven-resources-plugin</artifactId>
66                 <version>2.7</version>
67                 <configuration>
68                 </configuration>
69             </plugin>
70             <plugin>
71                 <groupId>com.github.eirslett</groupId>
72                 <artifactId>frontend-maven-plugin</artifactId>
73
74                 <configuration>
75                     <installDirectory>${project.parent.parent.basedir}</installDirectory>
76                 </configuration>
77
78                 <executions>
79                     <execution>
80                         <id>install node and npm</id>
81                         <goals>
82                             <goal>install-node-and-npm</goal>
83                         </goals>
84                         <phase>generate-resources</phase>
85                         <configuration>
86                             <nodeVersion>v14.17.1</nodeVersion>
87                             <npmVersion>6.14.13</npmVersion>
88                         </configuration>
89                     </execution>
90                     <execution>
91                         <id>npm run install</id>
92                         <goals>
93                             <goal>npm</goal>
94                         </goals>
95                         <configuration>
96                             <arguments>install</arguments>
97                         </configuration>
98                     </execution>
99                 </executions>
100             </plugin>
101         </plugins>
102         <resources>
103             <resource>
104                 <directory>${basedir}/docker</directory>
105                 <targetPath>${project.build.directory}/docker_assembly</targetPath>
106                 <filtering>false</filtering>
107             </resource>
108         </resources>
109     </build>
110     <profiles>
111         <profile>
112             <id>dev</id>
113             <activation>
114                 <activeByDefault>false</activeByDefault>
115             </activation>
116             <build>
117                 <plugins>
118                     <plugin>
119                         <groupId>org.apache.maven.plugins</groupId>
120                         <artifactId>maven-antrun-plugin</artifactId>
121                         <version>${maven-antrun-plugin.version}</version>
122                         <executions>
123                             <execution>
124                                 <id>create-reporting-folders</id>
125                                 <phase>initialize</phase>
126                                 <configuration>
127                                     <target>
128                                         <echo message="Generate reports and downloads folders"/>
129                                         <mkdir dir="${basedir}/report"/>
130                                         <mkdir dir="${basedir}/resources/downloads"/>
131                                     </target>
132                                 </configuration>
133                             </execution>
134                         </executions>
135                     </plugin>
136                     <plugin>
137                         <groupId>com.github.eirslett</groupId>
138                         <artifactId>frontend-maven-plugin</artifactId>
139
140                         <configuration>
141                             <workingDirectory>${project.basedir}</workingDirectory>
142                             <installDirectory>${project.parent.parent.basedir}</installDirectory>
143                         </configuration>
144
145                         <executions>
146
147                             <execution>
148                                 <id>npm run install</id>
149                                 <goals>
150                                     <goal>npm</goal>
151                                 </goals>
152                                 <configuration>
153                                     <arguments>install</arguments>
154                                 </configuration>
155                             </execution>
156
157                             <execution>
158                                 <id>npm run cucumber test</id>
159                                 <goals>
160                                     <goal>npm</goal>
161                                 </goals>
162                                 <configuration>
163                                     <npmInheritsProxyConfigFromMaven>false
164                                     </npmInheritsProxyConfigFromMaven>
165                                     <arguments>run test-and-report</arguments>
166                                 </configuration>
167                                 <phase>test</phase>
168                             </execution>
169
170                             <execution>
171                                 <id>npm run documentation</id>
172                                 <goals>
173                                     <goal>npm</goal>
174                                 </goals>
175                                 <configuration>
176                                     <npmInheritsProxyConfigFromMaven>false
177                                     </npmInheritsProxyConfigFromMaven>
178                                     <arguments>run cucumber-docs</arguments>
179                                 </configuration>
180                                 <phase>install</phase>
181                             </execution>
182
183                         </executions>
184                     </plugin>
185                 </plugins>
186             </build>
187         </profile>
188         <profile>
189             <id>docker</id>
190             <activation>
191                 <activeByDefault>false</activeByDefault>
192             </activation>
193             <build>
194                 <plugins>
195                     <plugin>
196                         <artifactId>maven-resources-plugin</artifactId>
197                         <version>3.0.2</version>
198                         <executions>
199                             <execution>
200                                 <id>copy-resources</id>
201                                 <phase>package</phase>
202                                 <goals>
203                                     <goal>copy-resources</goal>
204                                 </goals>
205                                 <configuration>
206                                     <outputDirectory>
207                                         ${project.build.directory}/docker_assembly/cucumber
208                                     </outputDirectory>
209                                     <resources>
210                                         <resource>
211                                             <directory>${basedir}</directory>
212                                             <includes>
213                                                 <include>features/**/*</include>
214                                                 <include>stepDefinitions/**/*</include>
215                                                 <include>plugins/**/*</include>
216                                                 <include>resources/**/*</include>
217                                                 <include>node_modules/**/*</include>
218                                                 <include>cucumber-common/**/*</include>
219                                                 <include>*.js*</include>
220                                             </includes>
221                                             <filtering>false</filtering>
222                                         </resource>
223                                     </resources>
224                                 </configuration>
225                             </execution>
226                         </executions>
227                     </plugin>
228                     <plugin>
229                         <groupId>io.fabric8</groupId>
230                         <artifactId>docker-maven-plugin</artifactId>
231                         <configuration>
232                             <verbose>true</verbose>
233                             <apiVersion>${docker.api.version}</apiVersion>
234                             <registry>${docker.registry}</registry>
235                             <authConfig>
236                                 <pull>
237                                     <username>docker</username>
238                                     <password>docker</password>
239                                 </pull>
240                             </authConfig>
241                             <images>
242                                 <!-- Build sanity image -->
243                                 <image>
244                                     <name>${docker.namespace}/cucumber-sdc-api-tests</name>
245                                     <alias>cucumber-sdc-api-tests</alias>
246                                     <build>
247                                         <cleanup>try</cleanup>
248                                         <dockerFileDir>${project.build.directory}/docker_assembly
249                                         </dockerFileDir>
250                                         <tags>
251                                             <tag>latest</tag>
252                                             <tag>
253                                                 ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest
254                                             </tag>
255                                             <tag>
256                                                 ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-${maven.build.timestamp}
257                                             </tag>
258                                         </tags>
259                                     </build>
260                                 </image>
261                             </images>
262                         </configuration>
263                         <executions>
264                             <execution>
265                                 <id>clean-images</id>
266                                 <phase>pre-clean</phase>
267                                 <goals>
268                                     <goal>remove</goal>
269                                 </goals>
270                                 <configuration>
271                                     <removeAll>true</removeAll>
272                                     <image>${docker.namespace}/cucumber-sdc-api-tests</image>
273                                 </configuration>
274                             </execution>
275                             <execution>
276                                 <id>generate-images</id>
277                                 <phase>install</phase>
278                                 <goals>
279                                     <goal>build</goal>
280                                 </goals>
281                             </execution>
282                             <execution>
283                                 <id>push-images</id>
284                                 <phase>deploy</phase>
285                                 <goals>
286                                     <goal>push</goal>
287                                 </goals>
288                                 <configuration>
289                                     <image>${docker.namespace}/cucumber-sdc-api-tests</image>
290                                 </configuration>
291                             </execution>
292                         </executions>
293                     </plugin>
294                 </plugins>
295             </build>
296         </profile>
297     </profiles>
298 </project>