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

    Copyright (c) 1997, 2021 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<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>org.glassfish.main</groupId>
        <artifactId>glassfish-nucleus-parent</artifactId>
        <version>6.2.2</version>
    </parent>

    <groupId>org.glassfish.main.distributions</groupId>
    <artifactId>nucleus-distributions</artifactId>
    <packaging>pom</packaging>

    <name>Nucleus distributions</name>

    <developers>
        <developer>
            <id>snjezana</id>
            <name>Snjezana Sevo-Zenzerovic</name>
            <url>http://blogs.sun.com/snjezana</url>
            <organization>Oracle, Inc.</organization>
            <roles>
                <role>developer</role>
            </roles>
        </developer>
        <developer>
            <id>romain_grecourt</id>
            <name>Romain Grecourt</name>
            <organization>Oracle, Inc</organization>
            <roles>
                <role>developer</role>
            </roles>
        </developer>
    </developers>

    <modules>
        <module>nucleus-common</module>
        <module>atomic</module>
        <module>nucleus</module>
    </modules>

    <properties>
        <findbugs.skip>true</findbugs.skip>
        <stage.dir.name>stage</stage.dir.name>
        <stage.dir>${project.build.directory}/${stage.dir.name}</stage.dir>
        <temp.dir>${project.build.directory}/dependency</temp.dir>
        <include.group.ids>org.glassfish.main.packager</include.group.ids>
        <install.dir.name>${nucleus.install.dir.name}</install.dir.name>
        <create-domain.args>--user admin create-domain --nopassword --savelogin=true --checkports=false --adminport 4848
            --instanceport 8080 --keytooloptions CN=localhost domain1</create-domain.args>
    </properties>

    <build>
        <outputDirectory>${temp.dir}</outputDirectory>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.glassfish.build</groupId>
                    <artifactId>glassfishbuild-maven-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>default-featuresets-dependencies</id>
                            <phase>process-resources</phase>
                            <configuration>
                                <featureSetGroupIdIncludes>org.glassfish.main.featuresets</featureSetGroupIdIncludes>
                                <stageDirectory>${temp.dir}</stageDirectory>
                                <excludes>META-INF/**</excludes>
                                <mappings>
                                    <mapping>
                                        <artifactId>org.apache.felix.main</artifactId>
                                        <name>felix</name>
                                    </mapping>
                                </mappings>
                            </configuration>
                        </execution>

                        <execution>
                            <id>create-domain</id>
                            <phase>process-resources</phase>
                            <configuration>
                                <executable>${stage.dir}/${nucleus.install.dir.name}/bin/nadmin</executable>
                                <commandlineArgs>${create-domain.args}</commandlineArgs>
                            </configuration>
                        </execution>

                        <execution>
                            <id>default-zip</id>
                            <phase>package</phase>
                            <configuration>
                                <excludes>**/.gitkeep_empty_dir</excludes>
                                <duplicate>preserve</duplicate>
                                <filesets>
                                    <fileset>
                                        <dir>${stage.dir}</dir>
                                        <fileMode>755</fileMode>
                                        <includes>**/bin/*</includes>
                                        <includes>**/bin/*.bat</includes>
                                        <includes>**/lib/nadmin*</includes>
                                    </fileset>
                                    <fileset>
                                        <dir>${stage.dir}</dir>
                                        <excludes>**/bin/*</excludes>
                                        <excludes>**/bin/*.bat</excludes>
                                        <excludes>**/lib/nadmin*</excludes>
                                    </fileset>
                                </filesets>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>default-single</id>
                            <phase>process-resources</phase>
                            <goals>
                                <goal>single</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <descriptors>
                            <descriptor>${basedir}/src/main/assembly/${project.artifactId}.xml</descriptor>
                        </descriptors>
                        <ignoreMissingDescriptor>false</ignoreMissingDescriptor>
                        <finalName>${stage.dir.name}</finalName>
                        <attach>false</attach>
                        <appendAssemblyId>false</appendAssemblyId>
                        <useProjectArtifact>false</useProjectArtifact>
                    </configuration>
                </plugin>

                <plugin>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <configuration>
                        <skip>true</skip>
                    </configuration>
                </plugin>

                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <includeEmptyDirs>true</includeEmptyDirs>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>
