hetu-core/hetu-server-rpm/pom.xml

200 lines
9.3 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>io.hetu.core</groupId>
<artifactId>presto-root</artifactId>
<version>1.8.0-SNAPSHOT</version>
</parent>
<artifactId>hetu-server-rpm</artifactId>
<name>hetu-server-rpm</name>
<packaging>rpm</packaging>
<properties>
<air.main.basedir>${project.parent.basedir}</air.main.basedir>
<air.check.skip-enforcer>true</air.check.skip-enforcer>
<air.check.skip-checkstyle>true</air.check.skip-checkstyle>
<air.check.skip-duplicate-finder>true</air.check.skip-duplicate-finder>
<air.check.skip-extended>true</air.check.skip-extended>
<server.tar.package>hetu-server-${project.version}</server.tar.package>
</properties>
<dependencies>
<dependency>
<groupId>io.hetu.core</groupId>
<artifactId>hetu-server</artifactId>
<version>${project.version}</version>
<type>tar.gz</type>
<scope>runtime</scope>
</dependency>
</dependencies>
<build>
<!-- Untar hetu-server tgz to target build folder -->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<skip>false</skip>
<artifactItems>
<artifactItem>
<groupId>io.hetu.core</groupId>
<artifactId>hetu-server</artifactId>
<version>${project.version}</version>
<type>tar.gz</type>
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<!-- Build hetu-server rpm using the untarred artifacts -->
<plugin>
<groupId>com.teradata</groupId>
<artifactId>redlinerpm-maven-plugin-td</artifactId>
<version>2.1.5</version>
<extensions>true</extensions>
<configuration>
<performCheckingForExtraFiles>false</performCheckingForExtraFiles>
<packages>
<package>
<name>hetu-server-rpm</name>
<nameOverride>hetu-server-rpm-${project.version}.x86_64.rpm</nameOverride>
<version>${project.version}</version>
<release>1</release>
<group>Applications/Databases</group>
<description>Presto Server RPM Package.</description>
<architecture>x86_64</architecture>
<preInstallScriptFile>src/main/rpm/preinstall</preInstallScriptFile>
<postInstallScriptFile>src/main/rpm/postinstall</postInstallScriptFile>
<preUninstallScriptFile>src/main/rpm/preremove</preUninstallScriptFile>
<postUninstallScriptFile>src/main/rpm/postremove</postUninstallScriptFile>
<dependencies>
<dependency>
<name>python</name>
<version>[2.4,)</version>
</dependency>
<dependency>
<name>/usr/sbin/useradd</name>
</dependency>
<dependency>
<name>/usr/sbin/groupadd</name>
</dependency>
<dependency>
<!-- Used e.g. to generate node.properties -->
<name>/usr/bin/uuidgen</name>
</dependency>
<dependency>
<!-- Used e.g. by service launcher -->
<name>/usr/bin/sudo</name>
</dependency>
</dependencies>
<links>
<link>
<path>/usr/lib/hetu/etc</path>
<target>/etc/hetu</target>
</link>
</links>
<rules>
<rule>
<destination>/usr/lib/hetu/bin</destination>
<base>${server.tar.package}/bin</base>
<!-- make sure launcher scripts are executable -->
<fileMode>0755</fileMode>
<includes>
<include>*</include>
</includes>
</rule>
<rule>
<destination>/usr/lib/hetu/bin</destination>
<base>${server.tar.package}/bin</base>
<!-- copy sub folders -->
<includes>
<include>*/**</include>
</includes>
</rule>
<rule>
<destination>/etc/init.d</destination>
<base>dist/etc/init.d</base>
<!-- make sure init.d scripts are executable -->
<fileMode>0755</fileMode>
<includes>
<include>*</include>
</includes>
</rule>
<rule>
<!-- This should go to just /usr/lib/hetu eventually. But that needs modifying
launcher.py in airlift, to have a configurable option for install_path -->
<destination>/usr/lib/hetu/lib</destination>
<base>${server.tar.package}/lib</base>
<includes>
<include>*</include>
</includes>
</rule>
<rule>
<destination>/usr/lib/hetu/lib/plugin</destination>
<base>${server.tar.package}/plugin</base>
<includes>
<include>*/*</include>
</includes>
</rule>
<rule>
<destination>/etc/hetu</destination>
<base>dist/config</base>
<includes>
<include>*</include>
</includes>
<directives>
<directive>config</directive>
<directive>noreplace</directive>
</directives>
</rule>
<rule>
<destination>/usr/shared/doc/hetu</destination>
<base>${server.tar.package}</base>
<includes>
<include>README.txt</include>
</includes>
</rule>
<!-- Add these rules so that .spec knows these dirs are to be removed too on rpm -e -->
<rule>
<destination>/usr/lib/hetu</destination>
</rule>
<rule>
<destination>/usr/lib/hetu/lib</destination>
</rule>
</rules>
</package>
</packages>
</configuration>
</plugin>
</plugins>
</build>
</project>