Alligned operation ui model
[sdc.git] / openecomp-ui / pom.xml
index 609cc91..515b91d 100644 (file)
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<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>
 
-    <groupId>com.att.asdc.onboarding</groupId>
+    <groupId>org.openecomp.sdc</groupId>
     <artifactId>onboarding-fe</artifactId>
     <name>onboarding-ui-war</name>
-    <version>1.0-SNAPSHOT</version>
     <packaging>war</packaging>
 
+    <parent>
+        <groupId>org.openecomp.sdc</groupId>
+        <artifactId>sdc-onboarding</artifactId>
+        <version>1.3.0-SNAPSHOT</version>
+        <relativePath>../onboarding</relativePath>
+    </parent>
+
+    <properties>
+        <maven.war.plugin.version>3.0.0</maven.war.plugin.version>
+        <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>
+                <artifactId>maven-clean-plugin</artifactId>
+                <version>2.6.1</version>
+                <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>
+
+            <!-- ============================================= -->
+            <!-- Build the UI module node code -->
+            <!-- ============================================= -->
+            <plugin>
+                <groupId>com.github.eirslett</groupId>
+                <artifactId>frontend-maven-plugin</artifactId>
+                <version>1.6</version>
+
+                <configuration>
+                    <installDirectory>${project.parent.parent.basedir}</installDirectory>
+                </configuration>
+
+                <executions>
+
+                    <execution>
+                        <id>install node and yarn</id>
+                        <goals>
+                            <goal>install-node-and-yarn</goal>
+                        </goals>
+                        <configuration>
+                            <nodeVersion>v9.4.0</nodeVersion>
+                            <yarnVersion>v1.7.0</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>yarn build</id>
+                        <goals>
+                            <goal>yarn</goal>
+                        </goals>
+                        <configuration>
+                            <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>${skipTests}</skip>
+                        </configuration>
+                        <!-- for some reason does not fail on test phase -->
+                        <phase>test</phase>
+                    </execution>
+                </executions>
+            </plugin>
+
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-war-plugin</artifactId>
+                <version>${maven.war.plugin.version}</version>
                 <configuration>
-                    <webXml>webapp-onboarding\WEB-INF\web.xml</webXml>
                     <webResources>
                         <resource>
-                            <directory>external-resources/healthcheck</directory>
+                            <directory>${basedir}/dist</directory>
+                            <includes>
+                                <include>*.html</include>
+                                <include>*.js</include>
+                            </includes>
+                        </resource>
+                        <resource>
+                            <directory>${basedir}/src</directory>
                             <includes>
-                                <include>v1.0/healthcheck</include>
+                                <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>
         </plugins>
     </build>
 
-
-    <profiles>
-
-        <profile>
-            <id>dox</id>
-            <activation>
-                <activeByDefault>true</activeByDefault>
-            </activation>
-
-            <properties>
-                <amdocs.repository.host>10.147.3.4</amdocs.repository.host>
-                <amdocs.repository.port>8081</amdocs.repository.port>
-                <amdocs.repository.address>${amdocs.repository.host}:${amdocs.repository.port}</amdocs.repository.address>
-                <amdocs.repository.updatePolicy.default>daily</amdocs.repository.updatePolicy.default>
-            </properties>
-            <repositories>
-
-                <repository>
-                    <id>Amdocs</id>
-                    <name>Amdocs public</name>
-                    <url>http://${amdocs.repository.address}:${amdocs.repository.port}/nexus/content/groups/public/</url>
-                    <releases>
-                        <enabled>true</enabled>
-                        <updatePolicy>${amdocs.repository.updatePolicy.default}</updatePolicy>
-                        <checksumPolicy>ignore</checksumPolicy>
-                    </releases>
-                    <snapshots>
-                        <enabled>false</enabled>
-                        <updatePolicy>${amdocs.repository.updatePolicy.default}</updatePolicy>
-                        <checksumPolicy>ignore</checksumPolicy>
-                    </snapshots>
-                </repository>
-
-                <repository>
-                    <id>snapshots</id>
-                    <name>Maven Snapshot Repository</name>
-                    <url>http://${amdocs.repository.address}/nexus/content/repositories/snapshots/</url>
-                    <releases>
-                        <enabled>false</enabled>
-                        <updatePolicy>${amdocs.repository.updatePolicy.default}</updatePolicy>
-                        <checksumPolicy>ignore</checksumPolicy>
-                    </releases>
-                    <snapshots>
-                        <enabled>true</enabled>
-                        <updatePolicy>${amdocs.repository.updatePolicy.default}</updatePolicy>
-                        <checksumPolicy>ignore</checksumPolicy>
-                    </snapshots>
-                </repository>
-
-            </repositories>
-
-            <distributionManagement>
-                <repository>
-                    <id>ASDC</id>
-                    <url>http://${amdocs.repository.address}/nexus/repository/D2-tlv-release</url>
-                </repository>
-                <snapshotRepository>
-                    <id>snapshots</id>
-                    <url>http://${amdocs.repository.address}/nexus/content/repositories/snapshots</url>
-                    <uniqueVersion>false</uniqueVersion>
-                </snapshotRepository>
-            </distributionManagement>
-
-        </profile>
-
-        <profile>
-            <id>att</id>
-            <activation>
-                <activeByDefault>false</activeByDefault>
-            </activation>
-
-            <properties>
-                <nexusServerName>mavencentral.it.att.com</nexusServerName>
-                <nexusServerPort>8084</nexusServerPort>
-                <nexus.release.repository>att-repository-releases</nexus.release.repository>
-                <nexus.snapshot.repository>att-repository-snapshots</nexus.snapshot.repository>
-                <nexus.id.release>nexus</nexus.id.release>
-                <nexus.id.snapshot>nexus</nexus.id.snapshot>
-            </properties>
-
-            <repositories>
-                <repository>
-                    <id>2020</id>
-                    <name>2020</name>
-                    <url>http://${nexusServerName}:${nexusServerPort}/nexus/content/groups/2020SAPC/</url>
-                    <layout>default</layout>
-                </repository>
-
-                <repository>
-                    <id>ATT public</id>
-                    <name>ATT public</name>
-                    <url>http://${nexusServerName}:${nexusServerPort}/nexus/content/groups/att-public-group/</url>
-                    <layout>default</layout>
-                </repository>
-
-            </repositories>
-
-            <pluginRepositories>
-                <pluginRepository>
-                    <id>nexus</id>
-                    <name>Nexus repository</name>
-                    <url>http://${nexusServerName}:${nexusServerPort}/nexus/content/repositories/att-public-group</url>
-                    <layout>default</layout>
-                </pluginRepository>
-            </pluginRepositories>
-
-
-            <distributionManagement>
-                <snapshotRepository>
-                    <id>${nexus.id.snapshot}</id>
-                    <name>att-repository-snapshots</name>
-                    <url>http://${nexusServerName}:${nexusServerPort}/nexus/content/repositories/${nexus.snapshot.repository}/</url>
-                </snapshotRepository>
-
-                <repository>
-                    <id>${nexus.id.release}</id>
-                    <name>att-repository-releases</name>
-                    <url>http://${nexusServerName}:${nexusServerPort}/nexus/content/repositories/${nexus.release.repository}/</url>
-                </repository>
-            </distributionManagement>
-
-        </profile>
-    </profiles>
-
 </project>