aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-ui/build_catalog_ui.sh
blob: 36f798513ac9acb5834e88a1a14d331565cd4d98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/sh



### Set the node environment.
NODE_VERSION="v6.10.0"



### Set the NVM root dir
NVM_DIR=/home/${USER}/.nvm



echo "Set the node environment."
. "${NVM_DIR}/nvm.sh"
echo "OK."
echo ""



### Add newer c++ compiler.
if [ -f /opt/rh/devtoolset-4/enable ]; then
  . /opt/rh/devtoolset-4/enable
fi



### Set the node version manager version.
echo "Set the node version manager version."
nvm use ${NODE_VERSION}
echo "OK."
echo ""



### Run the Node package manager (NPM).
echo "Run the Node package manager (NPM)."
npm install
echo "OK."
echo ""



### Build the application.
echo "Build the application."
npm run build:prod
echo "OK."
echo ""
nv { color: #336699 } /* Name.Variable */ .highlight .ow { color: #008800 } /* Operator.Word */ .highlight .w { color: #bbbbbb } /* Text.Whitespace */ .highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ .highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ .highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ .highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
<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>org.openecomp.sdc</groupId>
    <artifactId>onboarding-fe</artifactId>
    <name>onboarding-ui-war</name>
    <packaging>war</packaging>

    <parent>
        <groupId>org.openecomp.sdc</groupId>
        <artifactId>sdc-onboarding</artifactId>
        <version>1.5.1-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>
                    <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>
        </plugins>
    </build>

</project>