view distribution/pom.xml @ 282:ca400f9fdbde

Add jvm-classstat service API This patch adds the /jvm-classstat/0.0.1 service. The DELETE method is implemented simply because all other services also implement it. Reviewed-by: neugens Review-thread: http://icedtea.classpath.org/pipermail/thermostat/2017-October/025422.html
author Simon Tooke <stooke@redhat.com>
date Wed, 18 Oct 2017 13:50:21 -0400
parents 262f254b0ac0
children 1738c834713c
line wrap: on
line source

<?xml version="1.0" encoding="UTF-8"?>
<!--

 Copyright 2012-2017 Red Hat, Inc.

 This file is part of Thermostat.

 Thermostat is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published
 by the Free Software Foundation; either version 2, or (at your
 option) any later version.

 Thermostat is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with Thermostat; see the file COPYING.  If not see
 <http://www.gnu.org/licenses/>.

 Linking this code with other modules is making a combined work
 based on this code.  Thus, the terms and conditions of the GNU
 General Public License cover the whole combination.

 As a special exception, the copyright holders of this code give
 you permission to link this code with independent modules to
 produce an executable, regardless of the license terms of these
 independent modules, and to copy and distribute the resulting
 executable under terms of your choice, provided that you also
 meet, for each linked independent module, the terms and conditions
 of the license of that module.  An independent module is a module
 which is not derived from or based on this code.  If you modify
 this code, you may extend this exception to your version of the
 library, but you are not obligated to do so.  If you do not wish
 to do so, delete this exception statement from your version.

-->
<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">
    <parent>
        <artifactId>thermostat-web-gateway</artifactId>
        <groupId>com.redhat.thermostat</groupId>
        <version>1.99.12-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>thermostat-web-gateway-distribution</artifactId>
    <name>Thermostat Web Gateway Distribution</name>

    <packaging>pom</packaging>

    <profiles>

        <profile>
            <id>windows</id>
            <activation>
                <os><family>Windows</family></os>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-resources-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>copy-windows-scripts</id>
                                <phase>prepare-package</phase>
                                <goals>
                                    <goal>copy-resources</goal>
                                </goals>
                                <configuration>
                                    <outputDirectory>${project.build.directory}</outputDirectory>
                                    <resources>
                                        <resource>
                                            <directory>src/windows/bin</directory>
                                            <targetPath>image/bin</targetPath>
                                            <filtering>true</filtering>
                                        </resource>
                                    </resources>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <execution>
                        <configuration>
                            <finalName>image/libs</finalName>
                            <descriptors>
                                <descriptor>src/assembly/distribution-assembly.xml</descriptor>
                            </descriptors>
                            <appendAssemblyId>false</appendAssemblyId>
                        </configuration>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>plugin-assembly</id>
                        <configuration>
                            <finalName>image</finalName>
                            <descriptors>
                                <descriptor>src/assembly/plugin-assembly.xml</descriptor>
                            </descriptors>
                            <appendAssemblyId>false</appendAssemblyId>
                        </configuration>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>3.0.2</version>
                <executions>
                    <execution>
                        <id>copy-bin</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/image/bin</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/bin</directory>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                    <execution>
                        <!-- Certificate is generated with buildfiles/certs/generate_self_signed_cert.sh -->
                        <id>copy-cert</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/image</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/cert</directory>
                                    <filtering>false</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                    <execution>
                        <id>copy-etc</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>${project.build.directory}/image/etc</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>src/etc</directory>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.8</version>
                <executions>
                    <execution>
                        <id>chmod</id>
                        <phase>package</phase>
                        <configuration>
                            <target>
                                <chmod file="${project.build.directory}/image/bin/thermostat-web-gateway.sh" perm="755" />
                                <chmod file="${project.build.directory}/image/bin/thermostat-web-gateway-debug.sh" perm="755" />
                                <chmod file="${project.build.directory}/image/bin/thermostat-mongodb.sh" perm="755" />
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <execution>
                        <id>copy</id>
                        <phase>package</phase>
                        <goals>
                            <goal>copy</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <artifactItems>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-commands</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-byteman</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-cpu</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-compiler</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-gc</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-classstat</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvms</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jcmd</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-memory</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-jvm-io</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-systems</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-system-cpu</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-system-memory</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                        <artifactItem>
                            <groupId>com.redhat.thermostat</groupId>
                            <artifactId>thermostat-web-gateway-service-system-network</artifactId>
                            <version>${project.version}</version>
                            <type>war</type>
                            <overWrite>false</overWrite>
                        </artifactItem>
                    </artifactItems>
                    <outputDirectory>${project.build.directory}/image/services</outputDirectory>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
        <!-- anything not marked as provided gets copied to target/image/libs -->
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-common-mongodb</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-server</artifactId>
            <version>${project.version}</version>
        </dependency>

        <!-- MongoDB dependencies -->
        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongo-java-driver</artifactId>
            <version>${mongo-java-driver.version}</version>
        </dependency>

        <!-- all services are marked provided, because they get copied to the services directory -->
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-byteman</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-cpu</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-classstat</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-gc</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-io</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jcmd</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-memory</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvms</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-systems</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-system-cpu</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-jvm-compiler</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-system-memory</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-system-network</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-commands</artifactId>
            <version>${project.version}</version>
            <type>war</type>
            <scope>provided</scope>
        </dependency>

        <!-- src/etc/ dependencies from other services -->
        <dependency>
            <groupId>com.redhat.thermostat</groupId>
            <artifactId>thermostat-web-gateway-service-commands</artifactId>
            <version>${project.version}</version>
            <classifier>config</classifier>
            <type>zip</type>
        </dependency>
    </dependencies>
</project>