Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The runtime assembly plugin is used to provision a runtime image as part of an automated, reproducible Maven build process. The plugin downloads and provisions the Fabric3 standalone runtime and extensions along with application contributions. In addition, it can apply custom configuration to the runtime image.

The following example provisions a runtime, installs extensions, and applies a custom system configuration excerpt shows the basic plugin setup in a Maven POM file:

Code Block
xml
xml
<plugins>
    <plugin>
        <groupId>org.codehaus.fabric3</groupId>
        <artifactId>fabric3-assembly-plugin</artifactId>
        <version>${fabric3.version}</version>
        <executions>
            <execution>
                <id>fabric3-assembly</id>
                <goals>
                    <goal>fabric3-assembly</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <runtimeVersion>${fabric3.version}</runtimeVersion>
            <profiles>...
  </configuration>

             <!-- JPA support --></plugin>
</plugins>
Code Block
xml
xml
<plugins>
                <profile><plugin>
                    <groupId>org.codehaus.fabric3</groupId>
        <artifactId>fabric3-assembly-plugin</artifactId>
        <version>${fabric3.version}</version>
  <artifactId>profile-jpa</artifactId>      <executions>
            <execution>
 <version>${fabric3.version}</version>                 </profile><id>fabric3-assembly</id>
                <!--<goals>
Web Services support -->                 <profile><goal>fabric3-assembly</goal>
                </goals>
   <groupId>org.codehaus.fabric3</groupId>         </execution>
         </executions>
 <artifactId>profile-ws</artifactId>       <configuration>
             <version>$<runtimeVersion>${fabric3.version}</version>runtimeVersion>
                </profile><profiles>
                 <!-- Web AppJMS support -->
                <profile>
                    <groupId>org.codehaus.fabric3</groupId>
                    <artifactId>profile-web<jms</artifactId>
                    <version>${fabric3.version}</version>
                </profile>
                <!-- JMSJAX-RS support -->
                <profile>
                    <groupId>org.codehaus.fabric3</groupId>
                    <artifactId>profile-jms<rs</artifactId>
                    <version>${fabric3.version}</version>
                </profile>
   
            <!-- JAX-RS support -->/profiles>
            <!-- add contributions -->
			<contributions>
  <profile><dependency>
                    <groupId>org.codehausfabric3.fabric3<samples</groupId>
                    <artifactId>profile-rs<<artifactId>gateway</artifactId>
                    <version>${fabric3app.version}</version>
                </profile>
                <profile>				</dependency>
				<dependency>
                    <groupId>org.codehausfabric3.fabric3<samples</groupId>
                    <artifactId>profile-timer<<artifactId>backend</artifactId>
                    <version>${fabric3app.version}</version>
                </profile>

            </profiles>				</dependency>
			</contributions>
            <!-- overlay configuration -->
            <configurationFiles>
                <copy>
                    <source>../../../config/security.xml</source>
                    <destination>runtimes/vm/config</destination>
                </copy>
                <copy>
                    <source>../../../datasource/h2-1.2.140.jar</source>
                    <destination>extensions/datasource</destination>
                </copy>
            </configurationFiles>
        </configuration>
    </plugin>
</plugins>