
    <!--
        Licensed to the Apache Software Foundation (ASF) under one or
        more contributor license agreements. See the NOTICE file
        distributed with this work for additional information regarding
        copyright ownership. The ASF licenses this file to you under the
        Apache License, Version 2.0 (the "License"); you may not use
        this file except in compliance with the License. You may obtain
        a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0 Unless required by
        applicable law or agreed to in writing, software distributed
        under the License is distributed on an "AS IS" BASIS, WITHOUT
        WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions
        and limitations under the License.
    -->
<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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.apache.aries</groupId>
        <artifactId>parent</artifactId>
        <version>2.0.0</version>
        <relativePath>../../parent/pom.xml</relativePath>
    </parent>

    <groupId>org.apache.aries.subsystem</groupId>
    <artifactId>org.apache.aries.subsystem.scope.itests</artifactId>
    <version>0.1-SNAPSHOT</version>
    <name>Apache Aries Subsystem Scope iTests</name>
    <description>
        Integration tests using the subsystem scope api, impl for the implementation
        and subsystem-example helloIsolation and helloIsolationRef for the subsysem to be tested.
    </description>
    
    <properties>
        <exam.version>3.4.0</exam.version>
        <url.version>1.6.0</url.version>
    </properties>
	
    <dependencies>
        <dependency>
            <groupId>org.apache.aries.subsystem</groupId>
            <artifactId>org.apache.aries.subsystem.api</artifactId>
            <scope>test</scope>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.aries.subsystem</groupId>
            <artifactId>org.apache.aries.subsystem.scope.api</artifactId>
            <scope>test</scope>
            <version>0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.apache.aries.subsystem</groupId>
            <artifactId>org.apache.aries.subsystem.scope.impl</artifactId>
            <scope>test</scope>
            <version>0.1-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.apache.aries.testsupport</groupId>
            <artifactId>org.apache.aries.testsupport.unit</artifactId>
            <scope>test</scope>
            <version>2.0.0-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.apache.aries</groupId>
            <artifactId>org.apache.aries.util</artifactId>
            <scope>test</scope>
            <version>1.1.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.felix</groupId>
            <artifactId>org.apache.felix.configadmin</artifactId>
            <scope>test</scope>
            <version>1.2.8</version>
        </dependency>
        <dependency>
            <groupId>org.apache.felix</groupId>
            <artifactId>org.osgi.service.obr</artifactId>
            <scope>test</scope>
            <version>1.0.2</version>
            <exclusions>
            	<exclusion>
            		<artifactId>org.osgi.core</artifactId>
            		<groupId>org.apache.felix</groupId>
            	</exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.felix</groupId>
            <artifactId>org.apache.felix.bundlerepository</artifactId>
            <scope>test</scope>
            <version>1.6.4</version>
            <exclusions>
            	<exclusion>
            		<artifactId>org.osgi.core</artifactId>
            		<groupId>org.osgi</groupId>
            	</exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.aries.application</groupId>
            <artifactId>org.apache.aries.application.utils</artifactId>
            <scope>test</scope>
            <version>0.3</version>
        </dependency>
        <dependency>
            <groupId>org.apache.aries.subsystem</groupId>
            <artifactId>org.apache.aries.subsystem.example.helloIsolation</artifactId>
            <version>0.1-SNAPSHOT</version>
            <scope>test</scope>
        </dependency>
		<dependency>
			<groupId>org.eclipse.equinox</groupId>
			<artifactId>org.eclipse.equinox.coordinator</artifactId>
			<version>1.1.0.v20120522-1841</version>
		</dependency>
        
        <!-- pax exam -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.7</version>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam</artifactId>
            <version>${exam.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-container-native</artifactId>
            <version>${exam.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-junit4</artifactId>
            <version>${exam.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.exam</groupId>
            <artifactId>pax-exam-link-mvn</artifactId>
            <version>${exam.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.url</groupId>
            <artifactId>pax-url-aether</artifactId>
            <version>${url.version}</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <version>0.9.29</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <version>0.9.29</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.tinybundles</groupId>
            <artifactId>tinybundles</artifactId>
            <version>2.0.0</version>
            <exclusions>
                <exclusion>
                    <artifactId>org.osgi.core</artifactId>
                    <groupId>org.osgi</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>org.eclipse.osgi</artifactId>
            <version>3.9.1.v20130814-1242</version>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.logging</groupId>
            <artifactId>pax-logging-api</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.ops4j.pax.logging</groupId>
            <artifactId>pax-logging-service</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
        	<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>2.3</version>
				<executions>
					<execution>
						<id>tb1</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>1</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb1/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb1/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb2</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>2</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb2/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb2/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb3</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>3</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb3/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb3/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb4</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>4</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb4/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb4/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb5</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>5</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb5/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb5/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb6</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>6</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb6/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb6/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
					<execution>
						<id>tb7</id>
						<goals>
							<goal>jar</goal>
						</goals>
						<configuration>
							<classifier>7</classifier>
							<archive>
								<manifestFile>src/test/bundles/tb7/META-INF/MANIFEST.MF</manifestFile>
							</archive>
							<classesDirectory>${project.build.directory}/test-classes</classesDirectory>
							<includes>
								<include>org/apache/aries/subsystem/scope/itests/tb7/*</include>
								<include>**/META-INF/*</include>
							</includes>
							<outputDirectory>${project.build.directory}/test-classes</outputDirectory>
							<finalName>tb</finalName>
						</configuration>
						<phase>process-test-classes</phase>
					</execution>
				</executions>
			</plugin> 
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>1.5</version>
				<executions>
					<execution>
						<id>add-source-tb1</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb1</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb2</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb2</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb3</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb3</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb4</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb4</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb5</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb5</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb6</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb6</source>
							</sources>
						</configuration>
					</execution>
					<execution>
						<id>add-source-tb7</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>add-test-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>src/test/bundles/tb7</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>
             <plugin>
                <groupId>org.apache.servicemix.tooling</groupId>
                <artifactId>depends-maven-plugin</artifactId>
                <version>1.2</version>
                <executions>
                    <execution>
                        <id>generate-depends-file</id>
                        <goals>
                            <goal>generate-depends-file</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <forkMode>pertest</forkMode>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>ci-build-profile</id>
            <activation>
                <property>
                    <name>maven.repo.local</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-surefire-plugin</artifactId>
                        <configuration>
                            <!-- when the local repo location has been specified, 
                                we need to pass on this information to PAX mvn url -->
                            <argLine>-Dorg.ops4j.pax.url.mvn.localRepository=${maven.repo.local}</argLine>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

</project>
