pom.xml

386 lines | 19.577 kB Blame History Raw Download
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <parent>
        <groupId>org.keycloak.testsuite</groupId>
        <artifactId>integration-arquillian-tests</artifactId>
        <version>1.8.0.Final</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>integration-arquillian-tests-adapters</artifactId>
    <packaging>pom</packaging>
    <name>Adapter Tests</name>
    
    <properties>
        <app.server.port.offset>200</app.server.port.offset>
        <app.server.http.port>8280</app.server.http.port>
        <app.server.https.port>8643</app.server.https.port>
        <app.server.management.port>10190</app.server.management.port>
        <app.server.management.port.jmx>10199</app.server.management.port.jmx>
        <app.server.ssl.required>false</app.server.ssl.required>
        <adapter.test.props>-Dapp.server.base.url=http://localhost:${app.server.http.port} -Dmy.host.name=localhost</adapter.test.props>
        <exclude.adapters>-</exclude.adapters>
        
        <arquillian.xml.stylesheet>src/main/xslt/arquillian.xsl</arquillian.xml.stylesheet>
    </properties>
    
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>unpack-common-arquillian-xml</id>
                            <phase>generate-resources</phase>
                            <goals>
                                <goal>unpack</goal>
                            </goals>
                            <configuration>
                                <artifactItems>
                                    <artifactItem>
                                        <groupId>org.keycloak.testsuite</groupId>
                                        <artifactId>integration-arquillian-tests-base</artifactId>
                                        <version>${project.version}</version>
                                        <type>test-jar</type>
                                        <includes>**/arquillian.xml</includes>
                                    </artifactItem>
                                </artifactItems>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>            
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>xml-maven-plugin</artifactId>
                    <version>1.0</version>
                    <executions>
                        <execution>
                            <id>add-app-server-to-arquillian-xml</id>
                            <phase>process-resources</phase>
                            <goals>
                                <goal>transform</goal>
                            </goals>
                            <configuration>
                                <transformationSets>
                                    <transformationSet>
                                        <dir>${project.build.directory}/dependency</dir>
                                        <includes>
                                            <include>arquillian.xml</include>
                                        </includes>
                                        <stylesheet>${arquillian.xml.stylesheet}</stylesheet>
                                        <parameters>
                                            <parameter>
                                                <name>keycloak.version</name>
                                                <value>${project.version}</value>
                                            </parameter>
                                        </parameters>
                                        <outputDir>${project.build.directory}/dependency</outputDir>
                                    </transformationSet>
                                </transformationSets>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <systemPropertyVariables>
                            <arquillian.xml>${project.build.directory}/dependency/arquillian.xml</arquillian.xml>

                            <app.server.port.offset>${app.server.port.offset}</app.server.port.offset>
                            <app.server.http.port>${app.server.http.port}</app.server.http.port>
                            <app.server.https.port>${app.server.https.port}</app.server.https.port>
                            <app.server.management.port>${app.server.management.port}</app.server.management.port>
                            <app.server.management.port.jmx>${app.server.management.port.jmx}</app.server.management.port.jmx>
                            <app.server.ssl.required>${app.server.ssl.required}</app.server.ssl.required>

                            <adapter.test.props>${adapter.test.props}</adapter.test.props>

                            <adapter.libs.mode>bundled</adapter.libs.mode>
                            <adapter.config.mode>provided</adapter.config.mode>
                            
                        </systemPropertyVariables>
                        <excludes>
                            <exclude>${exclude.adapters}</exclude>
                        </excludes>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>        
    </build>
    
    <profiles>

        <profile>
            <id>common-for-adapter-tests</id>
            <activation>
                <file>
                    <exists>src</exists>
                </file>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.keycloak.testsuite</groupId>
                    <artifactId>integration-arquillian-tests-base</artifactId>
                    <version>${project.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.keycloak.testsuite</groupId>
                    <artifactId>integration-arquillian-tests-base</artifactId>
                    <version>${project.version}</version>
                    <type>test-jar</type>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-dependency-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>xml-maven-plugin</artifactId>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                    </plugin>
                </plugins>
            </build>
        </profile>
        
        <profile>
            <id>adapter-libs-provided</id>
            <activation>    
                <property>
                    <name>!adapter.libs.bundled</name>
                </property>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <configuration>
                                <systemPropertyVariables>
                                    <adapter.libs.mode>provided</adapter.libs.mode>
                                </systemPropertyVariables>
                            </configuration>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        
        <profile>
            <id>examples</id>
            <activation>
                <property>
                    <name>!skipTests</name>
                </property>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <version>2.10</version>
                            <executions>
                                <execution>
                                    <id>example-wars</id>
                                    <phase>generate-test-resources</phase>
                                    <goals>
                                        <goal>copy</goal>
                                    </goals>
                                    <configuration>
                                        <artifactItems>
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>product-portal-example</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>customer-portal-example</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>                                        
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>database-service</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>       
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>js-console</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>examples-multitenant</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>                    
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>examples-basicauth</artifactId>        
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>cors-angular-product-example</artifactId>
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak.example.demo</groupId>
                                                <artifactId>cors-database-service</artifactId>
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>saml-post-signatures</artifactId>
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>saml-post-encryption</artifactId>
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>saml-redirect-signatures</artifactId>
                                                <version>${project.version}</version>
                                                <type>war</type>
                                            </artifactItem>
                                        </artifactItems>
                                        <outputDirectory>${examples.home}</outputDirectory>
                                        <overWriteIfNewer>true</overWriteIfNewer>
                                    </configuration>
                                </execution>                            
                                <execution>
                                    <id>example-realms</id>
                                    <phase>generate-test-resources</phase>
                                    <goals>
                                        <goal>unpack</goal>
                                    </goals>
                                    <configuration>
                                        <artifactItems>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>keycloak-examples-dist</artifactId>        
                                                <version>${project.version}</version>
                                                <type>zip</type>
                                                <includes>**/*realm.json</includes>
                                            </artifactItem>
                                            <artifactItem>
                                                <groupId>org.keycloak</groupId>
                                                <artifactId>keycloak-examples-dist</artifactId>
                                                <version>${project.version}</version>
                                                <type>zip</type>
                                                <includes>**/testsaml.json</includes>
                                            </artifactItem>
                                        </artifactItems>
                                        <outputDirectory>${examples.home}</outputDirectory>
                                        <overWriteIfNewer>true</overWriteIfNewer>
                                    </configuration>
                                </execution>                            
                            </executions>
                        </plugin>            
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <configuration>
                                <systemPropertyVariables>
                                    <examples.home>${examples.home}</examples.home>
                                    <examples.version.suffix>${project.version}</examples.version.suffix>
                                </systemPropertyVariables>
                            </configuration>
                        </plugin>
                        <plugin>
                            <artifactId>maven-resources-plugin</artifactId>
                            <executions>
                                <execution>
                                    <id>copy-resources</id>
                                    <phase>validate</phase>
                                    <goals>
                                        <goal>copy-resources</goal>
                                    </goals>
                                    <configuration>
                                        <outputDirectory>${examples.home}</outputDirectory>
                                        <resources>
                                            <resource>
                                                <directory>${basedir}/src/test/resources</directory>
                                                <filtering>true</filtering>
                                            </resource>
                                        </resources>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
        
        <profile>
            <id>auth-server-wildfly</id>
            <modules>
                <module>wildfly-relative</module>
            </modules>
        </profile>
        <profile>
            <id>app-server-wildfly</id>
            <modules>
                <module>wildfly</module>
            </modules>
        </profile>
        <profile>
            <id>app-server-wildfly8</id>
            <modules>
                <module>wildfly8</module>
            </modules>
        </profile>
        <profile>
            <id>app-server-as7</id>
            <modules>
                <module>as7</module>
            </modules>
        </profile>
        <profile>
            <id>app-server-tomcat</id>
            <modules>
                <module>tomcat</module>
            </modules>
        </profile>
        <profile>
            <id>app-server-karaf</id>
            <modules>
                <module>karaf</module>
            </modules>
        </profile>
        <profile>
            <id>no-adapter-tests</id>
            <properties>
                <!-- Exclude all adapters tests. -->
                <exclude.adapters>**/adapter/**/*Test.java</exclude.adapters>
            </properties>
        </profile>
        
    </profiles>

</project>