1 <?xml version="1.0" encoding="UTF-8"?>
3 ~ Copyright (c) 2016 Cisco and/or its affiliates.
5 ~ Licensed under the Apache License, Version 2.0 (the "License");
6 ~ you may not use this file except in compliance with the License.
7 ~ You may obtain a copy of the License at:
9 ~ http://www.apache.org/licenses/LICENSE-2.0
11 ~ Unless required by applicable law or agreed to in writing, software
12 ~ distributed under the License is distributed on an "AS IS" BASIS,
13 ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ~ See the License for the specific language governing permissions and
15 ~ limitations under the License.
17 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
18 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
21 <groupId>io.fd.honeycomb.common</groupId>
22 <artifactId>impl-parent</artifactId>
23 <version>1.19.01</version>
24 <relativePath>../impl-parent</relativePath>
27 <modelVersion>4.0.0</modelVersion>
28 <artifactId>minimal-distribution-parent</artifactId>
29 <name>${project.artifactId}</name>
30 <version>1.19.01</version>
31 <packaging>pom</packaging>
34 <exec.parameters>-Xms32m -Xmn90m -Xmx128m -XX:MetaspaceSize=32m -XX:MaxMetaspaceSize=128m</exec.parameters>
35 <exec.parameters.minimal>-client -Xms20m -Xmx32m -XX:MetaspaceSize=5m -XX:MaxMetaspaceSize=32m -XX:MaxMetaspaceExpansion=1m -Xss512k -XX:+UseSerialGC -Djava.compiler=NONE -Xverify:none -noverify</exec.parameters.minimal>
37 <!-- Use /dev/urandom instead of /dev/random during tests to speed up execution
38 http://stackoverflow.com/questions/137212/how-to-solve-performance-problem-with-java-securerandom
40 <random.seed.file>/dev/./urandom</random.seed.file>
43 <!-- Generate executable shell script -->
48 <groupId>org.apache.maven.plugins</groupId>
49 <artifactId>maven-jar-plugin</artifactId>
50 <version>2.6</version>
54 <mainClass>${main.class}</mainClass>
55 <addClasspath>true</addClasspath>
56 <classpathPrefix>lib/</classpathPrefix>
57 <useUniqueVersions>false</useUniqueVersions>
58 <classpathMavenRepositoryLayout>true</classpathMavenRepositoryLayout>
61 <Class-Path>config/ cert/ modules/ yang-mapping/</Class-Path>
68 <groupId>org.apache.maven.plugins</groupId>
69 <artifactId>maven-dependency-plugin</artifactId>
70 <version>2.10</version>
72 <!-- Dependencies are copied by parent project -->
74 <id>unpack-configuration</id>
75 <phase>prepare-package</phase>
77 <goal>unpack-dependencies</goal>
80 <includes>**/honeycomb-minimal-resources/</includes>
81 <outputDirectory>${project.build.outputDirectory}/</outputDirectory>
87 <!-- Generate shell script -->
88 <!-- Extract modules started by distribution -->
90 <groupId>org.codehaus.gmaven</groupId>
91 <artifactId>groovy-maven-plugin</artifactId>
94 <id>start-scripts-generation</id>
95 <phase>package</phase>
101 io.fd.honeycomb.common.scripts.StartupScriptGenerator.generate(project, properties, log)
106 <id>distribution-module-assembly</id>
107 <!-- phase changed from package to earlier phase to generate module descriptor before distribution jar is created,
108 to include descriptor in the jar,to be accessible to children distributions-->
109 <phase>prepare-package</phase>
115 io.fd.honeycomb.common.scripts.ModulesListGenerator.generate(project, properties, log)
120 <id>generate-module-to-yang-index</id>
121 <phase>prepare-package</phase>
127 io.fd.honeycomb.common.scripts.ModuleYangIndexGenerator.pairDistributionModulesWithYangModules(project, log)
134 <groupId>io.fd.honeycomb.common</groupId>
135 <artifactId>common-scripts</artifactId>
136 <version>1.19.01</version>
141 <!-- Build archives -->
143 <artifactId>maven-assembly-plugin</artifactId>
144 <version>2.5.3</version>
147 <groupId>io.fd.honeycomb.common</groupId>
148 <artifactId>minimal-assembly-descriptor</artifactId>
149 <version>1.19.01</version>
154 <id>create-archive</id>
155 <phase>package</phase>
161 <descriptorRef>honeycomb-minimal</descriptorRef>
169 <artifactId>maven-surefire-plugin</artifactId>
171 <!--http://stackoverflow.com/questions/18107375/getting-skipping-jacoco-execution-due-to-missing-execution-data-file-upon-exec-->
172 <argLine>${argLine} -Djava.security.egd=file:${random.seed.file}</argLine>
179 <groupId>org.codehaus.gmaven</groupId>
180 <artifactId>groovy-maven-plugin</artifactId>
183 <groupId>org.apache.maven.plugins</groupId>
184 <artifactId>maven-jar-plugin</artifactId>
187 <groupId>org.apache.maven.plugins</groupId>
188 <artifactId>maven-dependency-plugin</artifactId>
191 <artifactId>maven-assembly-plugin</artifactId>