Apache Sling Feature Laucher Maven Plugin

Clone this repo:
  1. 001cd2b SLING-10676 - remove SECURITY.md which is not needed by Bertrand Delacretaz · 2 days ago master
  2. 3e82325 SLING-10676 - add or update SECURITY.md by Bertrand Delacretaz · 3 days ago
  3. 3265a31 SLING-10676 - add or update SECURITY.md by Bertrand Delacretaz · 3 days ago
  4. 953fa16 SLING-10676 - add or update SECURITY.md by Bertrand Delacretaz · 3 days ago
  5. fd765c1 SLING-10423 Add support to skip a launch (#2) by Eric Norman · 9 weeks ago

Apache Sling

Build Status Test Status Coverage Sonarcloud Status JavaDoc Maven Central License

This module is part of the Apache Sling project.

This plugin allows starting and stopping feature model applications without blocking the Maven execution. It is intended mainly for usage with integration tests.

Usage

Configure the plugin as follows:

<plugin>
    <groupId>org.apache.sling</groupId>
    <artifactId>feature-launcher-maven-plugin</artifactId>
    <configuration>
        <launches>
            <launch>
                <id>model</id>
                <!-- optionally uncomment to skip this launch if the skip property resolves to false -->
                <!--
                <skip>${prop1.skip}</skip>
                -->
                <feature>
                    <groupId>org.apache.sling</groupId>
                    <artifactId>org.apache.sling.starter</artifactId>
                    <version>12-SNAPSHOT</version>
                    <classifier>oak_tar</classifier>
                    <type>slingosgifeature</type>
                </feature>
                <launcherArguments>
                    <!-- optionally uncomment to pass any required extra vm options -->
                    <!--
                    <vmOptions>
                        <value>-Xmx512m</value>
                        <value>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5000</value>
                    </vmOptions>
                    -->
                    <frameworkProperties>
                        <org.osgi.service.http.port>8080</org.osgi.service.http.port>
                    </frameworkProperties>
                    <!-- Feature launcher variables can be set like this -->
                    <variables>
                        <TEST_VARIABLE>TEST_VALUE</TEST_VARIABLE>
                    </variables>
                </launcherArguments>
                <startTimeoutSeconds>180</startTimeoutSeconds>
            </launch>
        </launches>
        <toLaunch>
        </toLaunch>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>start</goal>
                <goal>stop</goal>
            </goals>
        </execution>
    </executions>
</plugin>

This will run the Sling Starter using the oak_tar aggregate, setting the HTTP port to 8080 and waiting for up to 180 seconds for the application to start.

The start goal is bound by default to the pre-integration phase and the stop goal to the post-integration-test one.

See the src/it folder for a complete example, including a configuration of the maven-failsafe-plugin.