Update version to 1.13.5
[sdc.git] / openecomp-ui / pom.xml
index 579e1f7..26f60fd 100644 (file)
-<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>
+<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.openecomp.sdc</groupId>
-               <artifactId>sdc-main</artifactId>
-               <version>1.0.0-SNAPSHOT</version>
-       </parent>
+  <artifactId>onboarding-fe</artifactId>
+  <name>onboarding-ui-war</name>
+  <packaging>war</packaging>
 
-       <groupId>org.openecomp.sdc.onboarding</groupId>
-       <artifactId>onboarding-fe</artifactId>
-       <name>onboarding-ui-war</name>
-       <packaging>pom</packaging>
+  <parent>
+    <groupId>org.openecomp.sdc</groupId>
+    <artifactId>sdc-onboarding</artifactId>
+    <version>1.13.5-SNAPSHOT</version>
+    <relativePath>../onboarding</relativePath>
+  </parent>
 
-       <build>
-               <plugins>
+  <properties>
+    <app.context.path>onboarding</app.context.path>
+    <jest.command/>
+  </properties>
 
+  <!-- ============================================= -->
+  <!-- Profile for windows to run jest one by the other due to current defect in node-graceful-js creating race condition -->
+  <!-- https://github.com/isaacs/node-graceful-fs/pull/119 -->
+  <!-- ============================================= -->
+  <profiles>
+    <profile>
+      <id>jest-windows-profile</id>
+      <activation>
+        <os>
+          <family>windows</family>
+        </os>
+      </activation>
+      <properties>
+        <jest.command>--runInBand</jest.command>
+      </properties>
+    </profile>
+  </profiles>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-clean-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>clean.dist.folder</id>
+            <phase>clean</phase>
+            <goals>
+              <goal>clean</goal>
+            </goals>
+            <configuration>
+              <filesets>
+                <fileset>
+                  <directory>${basedir}/dist</directory>
+                </fileset>
+                <fileset>
+                  <directory>${basedir}/coverage</directory>
+                </fileset>
+                <fileset>
+                  <directory>${basedir}/../dox-sequence-diagram-ui/dist</directory>
+                </fileset>
+              </filesets>
+            </configuration>
+          </execution>
+          <execution>
+            <id>clean.nodemodules.folder</id>
+            <phase>clean</phase>
+            <goals>
+              <goal>clean</goal>
+            </goals>
+            <configuration>
+              <skip>${skipUICleanup}</skip>
+              <filesets>
+                <fileset>
+                  <directory>${basedir}/node_modules</directory>
+                </fileset>
+                <fileset>
+                  <directory>${basedir}/../dox-sequence-diagram-ui/node_modules
+                  </directory>
+                </fileset>
+              </filesets>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
 
-                       <plugin>
-                               <groupId>io.wcm.maven.plugins</groupId>
-                               <artifactId>nodejs-maven-plugin</artifactId>
-                               <executions>
-                                       <execution>
-                                               <phase>compile</phase>
-                                               <goals>
-                                                       <goal>run</goal>
-                                               </goals>
-                                       </execution>
-                               </executions>
-                               <configuration>
-                                       <tasks>
-                                               <npmInstallTask>
-                                                       <workingDirectory>${session.executionRootDirectory}/dox-sequence-diagram-ui</workingDirectory>
-                                               </npmInstallTask>
-                                               <nodeJsTask>
-                                                       <workingDirectory>${session.executionRootDirectory}/dox-sequence-diagram-ui</workingDirectory>
-                                                       <moduleName>webpack</moduleName>
-                                               </nodeJsTask>
-                                               <npmInstallTask>
-                                                       <workingDirectory>${project.basedir}</workingDirectory>
-                                               </npmInstallTask>
-                                               <nodeJsTask>
-                                                       <workingDirectory>${project.basedir}</workingDirectory>
-                                                       <moduleName>gulp</moduleName>
-                                                       <arguments>
-                                                               <argument>build</argument>
-                                                       </arguments>
-                                               </nodeJsTask>
-                                       </tasks>
-                               </configuration>
-                       </plugin>
+      <!-- ============================================= -->
+      <!-- Build the UI module node code -->
+      <!-- ============================================= -->
+      <plugin>
+        <groupId>com.github.eirslett</groupId>
+        <artifactId>frontend-maven-plugin</artifactId>
+        <configuration>
+          <installDirectory>${project.parent.parent.basedir}</installDirectory>
+        </configuration>
 
-                       <plugin>
-        <groupId>com.coderplus.maven.plugins</groupId>
-        <artifactId>copy-rename-maven-plugin</artifactId>
-        <version>1.0</version>
         <executions>
+
+          <execution>
+            <id>install node and yarn</id>
+            <goals>
+              <goal>install-node-and-yarn</goal>
+            </goals>
+            <configuration>
+              <nodeVersion>v14.17.1</nodeVersion>
+              <yarnVersion>v1.19.1</yarnVersion>
+            </configuration>
+          </execution>
+
+          <execution>
+            <id>yarn install in dox-sequence-diagram-ui</id>
+            <goals>
+              <goal>yarn</goal>
+            </goals>
+            <configuration>
+              <workingDirectory>${project.basedir}/../dox-sequence-diagram-ui</workingDirectory>
+              <arguments>install</arguments>
+            </configuration>
+          </execution>
+          <execution>
+            <id>yarn build in dox-sequence-diagram-ui</id>
+            <goals>
+              <goal>yarn</goal>
+            </goals>
+            <configuration>
+              <workingDirectory>${project.basedir}/../dox-sequence-diagram-ui</workingDirectory>
+              <yarnInheritsProxyConfigFromMaven>false</yarnInheritsProxyConfigFromMaven>
+              <arguments>build</arguments>
+            </configuration>
+          </execution>
+
+          <execution>
+            <id>yarn install</id>
+            <goals>
+              <goal>yarn</goal>
+            </goals>
+            <configuration>
+              <arguments>install</arguments>
+            </configuration>
+          </execution>
+
           <execution>
-            <id>copy-file</id>
-            <phase>compile</phase>
+            <id>yarn build</id>
             <goals>
-              <goal>copy</goal>
+              <goal>yarn</goal>
             </goals>
             <configuration>
-              <sourceFile>${project.basedir}/dist/onboarding.war</sourceFile>
-              <destinationFile>${project.basedir}/target/onboarding-fe-${project.version}.war</destinationFile>
+              <yarnInheritsProxyConfigFromMaven>false</yarnInheritsProxyConfigFromMaven>
+              <arguments>build --version=${project.version} --env.version=${project.version} --env.language=en</arguments>
             </configuration>
           </execution>
+          <execution>
+            <id>ui test</id>
+            <goals>
+              <goal>yarn</goal>
+            </goals>
+            <configuration>
+              <yarnInheritsProxyConfigFromMaven>false</yarnInheritsProxyConfigFromMaven>
+              <arguments>test-build ${jest.command}</arguments>
+              <skip>${maven.test.skip}</skip>
+            </configuration>
+            <!-- for some reason does not fail on test phase -->
+            <phase>test</phase>
+          </execution>
         </executions>
       </plugin>
 
       <plugin>
-       <groupId>org.codehaus.mojo</groupId>
-       <artifactId>build-helper-maven-plugin</artifactId>
-       <version>1.7</version>
-       <executions>
-               <execution>
-                       <id>attach-artifacts</id>
-                       <phase>compile</phase>
-                       <goals>
-                               <goal>attach-artifact</goal>
-                       </goals>
-                       <configuration>
-                               <artifacts>
-                                       <artifact>
-                                               <file>${project.basedir}/target/onboarding-fe-${project.version}.war</file>
-                                               <type>war</type>                           
-                                       </artifact>
-                               </artifacts>
-                       </configuration>
-               </execution>
-       </executions>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-war-plugin</artifactId>
+        <configuration>
+          <webResources>
+            <resource>
+              <directory>${basedir}/dist</directory>
+              <includes>
+                <include>*.html</include>
+                <include>*.js</include>
+              </includes>
+            </resource>
+            <resource>
+              <directory>${basedir}/src</directory>
+              <includes>
+                <include>**/*.json</include>
+              </includes>
+            </resource>
+            <resource>
+              <directory>${basedir}/external-resources/healthcheck/</directory>
+              <targetPath>v1.0</targetPath>
+              <filtering>true</filtering>
+              <includes>
+                <include>healthcheck</include>
+              </includes>
+            </resource>
+            <resource>
+              <directory>${basedir}/webapp-onboarding</directory>
+              <filtering>true</filtering>
+            </resource>
+          </webResources>
+        </configuration>
       </plugin>
-
-<!--                   <plugin>
-                               <artifactId>maven-war-plugin</artifactId>
-                               <configuration>
-                                       <webXml>webapp-onboarding\WEB-INF\web.xml</webXml>
-                               </configuration>
-                       </plugin> -->
-               </plugins>
-       </build>
+    </plugins>
+  </build>
 
 </project>