| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ~ Licensed to the Apache Software Foundation (ASF) under one or more |
| ~ contributor license agreements. See the NOTICE file distributed with |
| ~ this work for additional information regarding copyright ownership. |
| ~ The ASF licenses this file to You under the Apache License, Version 2.0 |
| ~ (the "License"); you may not use this file except in compliance with |
| ~ the License. You may obtain a copy of the License at |
| ~ |
| ~ http://www.apache.org/licenses/LICENSE-2.0 |
| ~ |
| ~ Unless required by applicable law or agreed to in writing, software |
| ~ distributed under the License is distributed on an "AS IS" BASIS, |
| ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ~ See the License for the specific language governing permissions and |
| ~ limitations under the License. |
| --> |
| |
| <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/maven-v4_0_0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| |
| <parent> |
| <artifactId>zeppelin</artifactId> |
| <groupId>org.apache.zeppelin</groupId> |
| <version>0.8.2</version> |
| <relativePath>..</relativePath> |
| </parent> |
| |
| <groupId>org.apache.zeppelin</groupId> |
| <artifactId>zeppelin-web</artifactId> |
| <packaging>war</packaging> |
| <version>0.8.2</version> |
| <name>Zeppelin: web Application</name> |
| |
| <!-- See https://github.com/eirslett/frontend-maven-plugin/issues/229 --> |
| <prerequisites> |
| <maven>3.1.0</maven> |
| </prerequisites> |
| |
| <properties> |
| <web.e2e.disabled>true</web.e2e.disabled> |
| <web.e2e.enabled>false</web.e2e.enabled> |
| <zeppelin.daemon.package.base>../bin</zeppelin.daemon.package.base> |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| |
| <!--plugin versions--> |
| <plugin.frontend.nodeDownloadRoot>https://nodejs.org/dist/</plugin.frontend.nodeDownloadRoot> |
| <plugin.frontend.npmDownloadRoot>http://registry.npmjs.org/npm/-/</plugin.frontend.npmDownloadRoot> |
| </properties> |
| |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-war-plugin</artifactId> |
| <configuration> |
| <warSourceDirectory>dist</warSourceDirectory> |
| <webXml>dist\WEB-INF\web.xml</webXml> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>com.github.eirslett</groupId> |
| <artifactId>frontend-maven-plugin</artifactId> |
| <version>${plugin.frontend.version}</version> |
| <configuration> |
| <nodeDownloadRoot>${plugin.frontend.nodeDownloadRoot}</nodeDownloadRoot> |
| <npmDownloadRoot>${plugin.frontend.npmDownloadRoot}</npmDownloadRoot> |
| </configuration> |
| |
| <executions> |
| |
| <execution> |
| <id>install node</id> |
| <goals> |
| <goal>install-node-and-npm</goal> |
| </goals> |
| <configuration> |
| <nodeVersion>${node.version}</nodeVersion> |
| <npmVersion>${npm.version}</npmVersion> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>npm install</id> |
| <goals> |
| <goal>npm</goal> |
| </goals> |
| <configuration> |
| <skip>${web.e2e.enabled}</skip> |
| <arguments>install --no-lockfile</arguments> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>npm build</id> |
| <goals> |
| <goal>npm</goal> |
| </goals> |
| <configuration> |
| <skip>${web.e2e.enabled}</skip> |
| <arguments>${web.build.command}</arguments> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>npm test</id> |
| <goals> |
| <goal>npm</goal> |
| </goals> |
| <phase>test</phase> |
| <configuration> |
| <skip>${web.e2e.disabled}</skip> |
| <arguments>run test</arguments> |
| </configuration> |
| </execution> |
| |
| <execution> |
| <id>npm e2e</id> |
| <goals> |
| <goal>npm</goal> |
| </goals> |
| <phase>integration-test</phase> |
| <configuration> |
| <skip>${web.e2e.disabled}</skip> |
| <arguments>run e2e</arguments> |
| </configuration> |
| </execution> |
| |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>start-zeppelin</id> |
| <phase>pre-integration-test</phase> |
| <configuration> |
| <skip>${web.e2e.disabled}</skip> |
| <target unless="skipTests"> |
| <exec executable="./zeppelin-daemon.sh" dir="${zeppelin.daemon.package.base}" spawn="false"> |
| <arg value="start" /> |
| </exec> |
| </target> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| |
| <execution> |
| <id>stop-zeppelin</id> |
| <phase>post-integration-test</phase> |
| <configuration> |
| <skip>${web.e2e.disabled}</skip> |
| <target unless="skipTests"> |
| <exec executable="./zeppelin-daemon.sh" dir="${zeppelin.daemon.package.base}" spawn="false"> |
| <arg value="stop" /> |
| </exec> |
| </target> |
| </configuration> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- |
| Disabling test report generation as it forks the lifecycle |
| and results in https://issues.apache.org/jira/browse/ZEPPELIN-69 |
| |
| There is no better way to do it, as per |
| http://jira.codehaus.org/browse/MCOBERTURA-154 |
| --> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>cobertura-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>cobertura</id> |
| <phase>none</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-deploy-plugin</artifactId> |
| </plugin> |
| |
| <plugin> |
| <!-- clean task will be executed by front-end-maven plugin --> |
| <artifactId>maven-clean-plugin</artifactId> |
| <configuration> |
| <filesets> |
| <fileset> |
| <directory>bower_components</directory> |
| </fileset> |
| <fileset> |
| <directory>node</directory> |
| </fileset> |
| <fileset> |
| <directory>node_modules</directory> |
| </fileset> |
| </filesets> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <profiles> |
| <profile> |
| <id>web-dist</id> |
| <activation> |
| <activeByDefault>true</activeByDefault> |
| </activation> |
| <properties> |
| <web.build.command>run build:dist</web.build.command> |
| </properties> |
| </profile> |
| <profile> |
| <id>web-ci</id> |
| <properties> |
| <web.build.command>run build:ci</web.build.command> |
| </properties> |
| </profile> |
| |
| <profile> |
| <id>web-e2e</id> |
| <properties> |
| <web.e2e.disabled>false</web.e2e.disabled> |
| <web.e2e.enabled>true</web.e2e.enabled> |
| </properties> |
| </profile> |
| </profiles> |
| |
| </project> |