179 lines
7.9 KiB
XML
179 lines
7.9 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
|
|
Copyright (c) 2018-2018 Red Hat, Inc.
|
|
This program and the accompanying materials
|
|
are made available under the terms of the Eclipse Public License v2.0
|
|
which is available at http://www.eclipse.org/legal/epl-2.0.html
|
|
|
|
SPDX-License-Identifier: EPL-2.0
|
|
|
|
Contributors:
|
|
Red Hat, Inc. - initial API and implementation
|
|
|
|
-->
|
|
<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>che-parent</artifactId>
|
|
<groupId>org.eclipse.che</groupId>
|
|
<version>6.9.0-SNAPSHOT</version>
|
|
<relativePath>../pom.xml</relativePath>
|
|
</parent>
|
|
<groupId>org.eclipse.che.workspace.loader</groupId>
|
|
<artifactId>che-workspace-loader</artifactId>
|
|
<version>6.9.0-SNAPSHOT</version>
|
|
<packaging>pom</packaging>
|
|
<name>Che Workspace Loader :: Web App</name>
|
|
<inceptionYear>2018</inceptionYear>
|
|
<build>
|
|
<finalName>workspace-loader</finalName>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-assembly-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>make-assembly</id>
|
|
<phase>package</phase>
|
|
<goals>
|
|
<goal>single</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<tarLongFileMode>posix</tarLongFileMode>
|
|
<appendAssemblyId>false</appendAssemblyId>
|
|
<updateOnly>false</updateOnly>
|
|
<descriptors>
|
|
<descriptor>${project.basedir}/assembly.xml</descriptor>
|
|
</descriptors>
|
|
<finalName>workspace-loader</finalName>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-clean-plugin</artifactId>
|
|
<configuration>
|
|
<filesets>
|
|
<fileset>
|
|
<directory>${basedir}/node_modules</directory>
|
|
<followSymlinks>false</followSymlinks>
|
|
</fileset>
|
|
<fileset>
|
|
<directory>${basedir}/dist</directory>
|
|
<followSymlinks>false</followSymlinks>
|
|
</fileset>
|
|
<fileset>
|
|
<directory>${basedir}</directory>
|
|
<includes>
|
|
<include>**/package-lock.json</include>
|
|
</includes>
|
|
<followSymlinks>false</followSymlinks>
|
|
</fileset>
|
|
</filesets>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
<profiles>
|
|
<profile>
|
|
<!-- Docker build used by default. To use native build, use -Pnative -->
|
|
<id>docker</id>
|
|
<activation>
|
|
<activeByDefault>true</activeByDefault>
|
|
</activation>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>build-image</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<target>
|
|
<!-- build workspace loader with maven in docker -->
|
|
<exec dir="${basedir}" executable="docker" failonerror="true">
|
|
<arg value="build" />
|
|
<arg value="-t" />
|
|
<arg value="eclipse-che-workspace-loader" />
|
|
<arg value="." />
|
|
</exec>
|
|
</target>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>unpack-docker-build</id>
|
|
<phase>generate-sources</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<target>
|
|
<!-- extract built workspace loader -->
|
|
<exec executable="bash">
|
|
<arg value="-c" />
|
|
<arg value="docker run --rm eclipse-che-workspace-loader | tar -C target/ -xf -" />
|
|
</exec>
|
|
</target>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<profile>
|
|
<id>native</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<artifactId>maven-antrun-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<id>build-workspace-loader</id>
|
|
<phase>compile</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<target>
|
|
<!-- install node modules -->
|
|
<exec dir="${basedir}" executable="npm" failonerror="true">
|
|
<arg value="install" />
|
|
</exec>
|
|
<!-- build workspace loader -->
|
|
<exec dir="${basedir}" executable="npm" failonerror="true">
|
|
<arg value="run" />
|
|
<arg value="build" />
|
|
</exec>
|
|
</target>
|
|
</configuration>
|
|
</execution>
|
|
<execution>
|
|
<id>test-workspace-loader</id>
|
|
<phase>test</phase>
|
|
<goals>
|
|
<goal>run</goal>
|
|
</goals>
|
|
<configuration>
|
|
<target>
|
|
<!-- test workspace loader -->
|
|
<exec dir="${basedir}" executable="npm" failonerror="true">
|
|
<arg value="run" />
|
|
<arg value="test" />
|
|
</exec>
|
|
</target>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|