<?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>

    <groupId>org.openecomp.sdc</groupId>
    <artifactId>build-data-helper</artifactId>

    <parent>
        <artifactId>sdc-onboarding</artifactId>
        <groupId>org.openecomp.sdc</groupId>
        <version>1.2.0-SNAPSHOT</version>
        <relativePath>../../../onboarding</relativePath>
    </parent>
    <properties>
        <skipPMD>true</skipPMD>
        <artifactPathToCopy>${project.groupId}/${project.artifactId}/${project.version}/${project.artifactId}-${project.version}.jar</artifactPathToCopy>
    </properties>
<build>
    <plugins>
        <plugin>
            <groupId>org.openecomp.sdc.onboarding</groupId>
            <artifactId>artifact-copy-plugin</artifactId>
            <version>${project.version}</version>
            <executions>
                <execution>
                    <id>id3</id>
                    <goals>
                        <goal>copy-helper</goal>
                        <goal>calibrate-artifact-helper</goal>
                    </goals>
                    <phase>install</phase>
                </execution>
                <execution>
                    <id>id4</id>
                    <goals>
                        <goal>init-artifact-helper</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <groupId>org.openecomp.sdc</groupId>
                <artifactId>build-data-installer</artifactId>
                <version>${project.version}</version>
                <targetLocation>build-data-helper</targetLocation>
                <name>build-data-helper-${project.version}.jar</name>
                <artifactHelper>
                    <project>${project}</project>
                </artifactHelper>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>${maven.dependency.version}</version>
            <executions>
                <execution>
                    <id>id1</id>
                    <goals>
                        <goal>get</goal>
                    </goals>
                    <phase>clean</phase>
                    <configuration>
                        <artifactId>build-data-helper</artifactId>
                    </configuration>
                </execution>
                <execution>
                    <id>id2</id>
                    <goals>
                        <goal>get</goal>
                    </goals>
                    <phase>clean</phase>
                    <configuration>
                        <artifactId>build-data-installer</artifactId>
                    </configuration>
                </execution>
            </executions>
            <configuration>
                <groupId>org.openecomp.sdc</groupId>
                <version>${project.version}</version>
                <skip>${skipGet}</skip>
            </configuration>
        </plugin>
    </plugins>
</build>

</project>