<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>com.mulesoft.mule.modules</groupId>
        <artifactId>mule-compatibility-ee</artifactId>
        <version>1.4.0</version>
    </parent>
    <groupId>com.mulesoft.mule.modules.tests</groupId>
    <artifactId>mule-compatibility-tests</artifactId>
    <packaging>pom</packaging>

    <properties>
        <formatterConfigPath>../formatter.xml</formatterConfigPath>
    </properties>

    <modules>
        <module>core-transports-tests</module>
        <module>functional-transports</module>
        <module>functional-transports-j11</module>
        <module>integration-transports</module>
        <module>unit-transports</module>
        <module>compatibility</module>
        <module>bti</module>
    </modules>

    <profiles>
        <profile>
            <id>release</id>
            <properties>
                <skipNoSnapshotsEnforcerPluginRule>false</skipNoSnapshotsEnforcerPluginRule>
            </properties>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-enforcer-plugin</artifactId>
                        <version>${maven.enforcer.plugin.version}</version>
                        <executions>
                            <execution>
                                <id>enforce-no-snapshots-in-deps</id>
                                <goals>
                                    <goal>enforce</goal>
                                </goals>
                                <configuration>
                                    <rules>
                                        <requireReleaseDeps>
                                            <message>No Snapshots Allowed in Deps!</message>
                                            <excludes>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-expression</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-api</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-engine</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-library</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-assistant-runner</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-contribution</exclude>
                                                <exclude>com.mulesoft.tools:mule-migration-tool-target-modules</exclude>
                                                
                                                <exclude>org.mule.weave:migrant</exclude>
                                            </excludes>
                                        </requireReleaseDeps>
                                        <requireReleaseVersion>
                                            <message>No Snapshots Allowed in Project Version!</message>
                                        </requireReleaseVersion>
                                        <requirePluginVersions>
                                            <message>Best Practice is to always define plugin versions!</message>
                                        </requirePluginVersions>
                                    </rules>
                                    <skip>${skipNoSnapshotsEnforcerPluginRule}</skip>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
