<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>
        <artifactId>mvn-defaults</artifactId>
        <groupId>io.nosqlbench</groupId>
        <version>3.12.21</version>
        <relativePath>../mvn-defaults</relativePath>
    </parent>

    <artifactId>nb</artifactId>
    <packaging>jar</packaging>
    <name>${project.artifactId}</name>
    <description>CLI for nosqlbench.</description>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <javadoc.name>nosqlbench Command Line</javadoc.name>
    </properties>

    <dependencies>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>engine-cli</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>engine-docs</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>engine-core</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>engine-extensions</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-stdout</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-diag</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-tcp</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-http</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-cql</artifactId>
            <version>3.12.21</version>
        </dependency>

        <dependency>
            <groupId>io.nosqlbench</groupId>
            <artifactId>activitytype-cqlverify</artifactId>
            <version>3.12.21</version>
        </dependency>


        <!--        <dependency>-->
<!--            <groupId>io.nosqlbench</groupId>-->
<!--            <artifactId>nb-runtime</artifactId>-->
<!--            <version>2.12.51-SNAPSHOT</version>-->
<!--        </dependency>-->


        <!--        <dependency>-->
        <!--            <groupId>io.nosqlbench</groupId>-->
        <!--            <artifactId>engine-vis</artifactId>-->
        <!--            <version>2.11.31-SNAPSHOT</version>-->
        <!--        </dependency>-->

        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>6.13.1</version>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.assertj</groupId>
            <artifactId>assertj-core-java8</artifactId>
            <version>1.0.0m1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>1.2.3</version>
        </dependency>

        <dependency>
            <groupId>javax.activation</groupId>
            <artifactId>activation</artifactId>
            <version>1.1.1</version>
        </dependency>

        <dependency>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
            <version>2.2.11</version>
        </dependency>

        <dependency>
            <groupId>com.github.docker-java</groupId>
            <artifactId>docker-java-api</artifactId>
            <version>3.2.0-rc1</version>
        </dependency>

        <dependency>
            <groupId>com.github.docker-java</groupId>
            <artifactId>docker-java-core</artifactId>
            <version>3.2.0-rc1</version>
        </dependency>

    </dependencies>

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>

        <plugins>
            <plugin>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.2.0</version>
                <executions>
                    <execution>
                        <id>shade-nb-jar</id>
                        <phase>package</phase>
                        <goals><goal>shade</goal></goals>
                    </execution>
                </executions>
                <configuration>
                    <transformers combine.children="append">
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                            <mainClass>io.nosqlbench.engine.cli.NBCLI</mainClass>
                        </transformer>
                    </transformers>
                    <finalName>${project.artifactId}</finalName>

                    <filters>
                        <filter>
                            <artifact>*:*</artifact>
                            <excludes>
                                <exclude>META-INF/*.SF</exclude>
                                <exclude>META-INF/*.DSA</exclude>
                                <exclude>META-INF/*.RSA</exclude>
                            </excludes>
                        </filter>
                    </filters>
                </configuration>
            </plugin>
            <plugin>
                 <groupId>org.codehaus.mojo</groupId>
                 <artifactId>exec-maven-plugin</artifactId>
                 <version>1.6.0</version>
                 <executions>
                     <execution>
                         <id>build-nb-appimage</id>
                         <phase>package</phase>
                         <goals><goal>exec</goal></goals>
                         <configuration>
                             <basedir>${project.basedir}/appimage</basedir>
                             <executable>${project.basedir}/appimage/build</executable>
                         </configuration>
                     </execution>
                     <execution>
                         <id>build-static-guidebook</id>
                         <phase>package</phase>
                         <goals><goal>exec</goal></goals>
                         <configuration>
                             <basedir>${project.basedir}</basedir>
			     <executable>${project.basedir}/gendocs.sh</executable>
                         </configuration>
                     </execution>
                  </executions>
             </plugin>

        </plugins>
    </build>

    <profiles>

        <profile>
            <id>enforce</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <executions>
                            <execution>
                                <goals><goal>enforce</goal></goals>
                            </execution>
                        </executions>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-enforcer-plugin</artifactId>
                        <version>3.0.0-M3</version>
                        <configuration>
                            <rules><dependencyConvergence /></rules>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>


    </profiles>


</project>
