muleesb-maven-plugin
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>org.mule.tools</groupId>
<artifactId>muleesb-maven-plugin</artifactId>
<version>1.0</version>
</dependency><?xml version="1.0"?>
<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>
<groupId>org.mule.tools</groupId>
<artifactId>muleesb-maven-plugin</artifactId>
<version>1.0</version>
<packaging>maven-plugin</packaging>
<name>Mule ESB Maven Plugin</name>
<description>
Maven plugin that helps control Mule ESB servers, including CE, EE Standalone and HA deployments.
Main use is for running integration tests but can be used also for deploying an application to any environment after all tests were ran.
Some of the features are:
Download Mule Standalone from a Maven Repository and install it locally.
Start Mule Standalone server.
Deploy a Mule application to a server.
Undeploy a Mule appliction.
Stop a Mule Standalone server.
Restart a Mule Standalone server.
Assemble a Mule cluster and deploy applications.
</description>
<url>http://github.com/mulesoft/muleesb-maven-plugin</url>
<licenses>
<license>
<name>CPAL v1.0</name>
<url>http://www.mulesoft.com/CPAL</url>
</license>
</licenses>
<mailingLists>
<mailingList>
<name>developers</name>
<post>mule-esb@mulesoft.com</post>
</mailingList>
</mailingLists>
<issueManagement>
<system>jira</system>
<url>http://www.mulesoft.org/jira/browse/MULE</url>
</issueManagement>
<developers>
<developer>
<id>asequeira</id>
<name>Ale Sequeira</name>
<email>alejandro.sequeira@mulesoft.com</email>
<organizationUrl>http://mulesoft.org</organizationUrl>
</developer>
</developers>
<organization>
<name>MuleSoft Inc</name>
<url>http://mulesoft.com/</url>
</organization>
<properties>
<licensePath>LICENSE_HEADER.txt</licensePath>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mule.version>3.5.0</mule.version>
<maven.plugin.api.version>2.0</maven.plugin.api.version>
<maven.plugin.annotations.version>3.2</maven.plugin.annotations.version>
<plexus.utils.version>3.0.8</plexus.utils.version>
<junit.version>4.10</junit.version>
<mockito.version>1.8.5</mockito.version>
<maven.dependency.plugin.version>2.8</maven.dependency.plugin.version>
<maven.antrun.plugin.version>1.7</maven.antrun.plugin.version>
<maven.invoker.plugin.version>1.8</maven.invoker.plugin.version>
<maven.plugin.plugin.version>3.2</maven.plugin.plugin.version>
<maven.artifact.version>2.0.9</maven.artifact.version>
<maven.compiler.plugin.version>3.1</maven.compiler.plugin.version>
<codehaus.plexus.archiver>2.3</codehaus.plexus.archiver>
<mave.project.version>2.0</mave.project.version>
<java.source>1.7</java.source>
<java.target>1.7</java.target>
<license.plugin.version>2.6</license.plugin.version>
<maven.plugin.version>3.2</maven.plugin.version>
<project.info.plugin.version>2.4</project.info.plugin.version>
</properties>
<dependencies>
<!-- Maven Plugin Dependencies -->
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-settings</artifactId>
<version>3.0.4</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-plugin-api</artifactId>
<version>${maven.plugin.api.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-artifact</artifactId>
<version>${maven.artifact.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
<version>${maven.plugin.annotations.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>${plexus.utils.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven</groupId>
<artifactId>maven-project</artifactId>
<version>${mave.project.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven.plugin-testing</groupId>
<artifactId>maven-plugin-testing-harness</artifactId>
<scope>test</scope>
<version>${maven.plugin.api.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-archiver</artifactId>
<version>${codehaus.plexus.archiver}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<!-- Other Dependencies -->
<dependency>
<groupId>org.mule</groupId>
<artifactId>mule-core</artifactId>
<version>${mule.version}</version>
<classifier>tests</classifier>
</dependency>
<dependency>
<groupId>org.mule.tests</groupId>
<artifactId>mule-tests-infrastructure</artifactId>
<version>${mule.version}</version>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy-all</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>mule</id>
<name>Mule Releases</name>
<url>https://repository-master.mulesoft.org/nexus/content/repositories/releases</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>mule-snapshots</id>
<name>Mule Snapshots</name>
<url>https://repository-master.mulesoft.org/nexus/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>mule-ee-releases</id>
<name>Mule Release Repository</name>
<url>https://repository-master.mulesoft.org/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>mule-ee-snapshots</id>
<name>Mule Snapshot Repository</name>
<url>https://repository-master.mulesoft.org/nexus/content/repositories/snapshots</url>
<uniqueVersion>false</uniqueVersion>
</snapshotRepository>
</distributionManagement>
<scm>
<connection>scm:git:git://github.com/mulesoft/muleesb-maven-plugin.git</connection>
<developerConnection>scm:git:git@github.com:mulesoft/muleesb-maven-plugin.git</developerConnection>
<url>http://github.com/mulesoft/muleesb-maven-plugin</url>
</scm>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.8</version>
<executions>
<execution>
<id>reserve-ports</id>
<phase>process-test-resources</phase>
<goals>
<goal>reserve-network-port</goal>
</goals>
<configuration>
<portNames>
<portName>mpp-port</portName>
<portName>swpar-port</portName>
<portName>http.port</portName>
</portNames>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven.compiler.plugin.version}</version>
<configuration>
<source>${java.source}</source>
<target>${java.target}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>${maven.dependency.plugin.version}</version>
<configuration>
</configuration>
<executions>
<execution>
<id>install-mule-esb</id>
<phase>package</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.mule.distributions</groupId>
<artifactId>mule-standalone</artifactId>
<version>${mule.version}</version>
<type>tar.gz</type>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
<artifactItem>
<groupId>com.mulesoft.muleesb.distributions</groupId>
<artifactId>mule-ee-distribution-standalone</artifactId>
<version>${mule.version}</version>
<type>tar.gz</type>
<outputDirectory>${project.build.directory}</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>${maven.antrun.plugin.version}</version>
<executions>
<execution>
<id>copy-files</id>
<phase>pre-integration-test</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target unless="skipTests">
<move
file="${project.build.directory}/mule-enterprise-standalone-${mule.version}"
tofile="${project.build.directory}/mule-enterprise-standalone" />
<move
file="${project.build.directory}/mule-standalone-${mule.version}"
tofile="${project.build.directory}/mule-standalone" />
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugin-plugin</artifactId>
<version>${maven.plugin.plugin.version}</version>
<configuration>
<goalPrefix>muleesb</goalPrefix>
<skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
</configuration>
<executions>
<execution>
<id>mojo-descriptor</id>
<goals>
<goal>descriptor</goal>
</goals>
</execution>
<execution>
<id>help-goal</id>
<goals>
<goal>helpmojo</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>${license.plugin.version}</version>
<configuration>
<header>${licensePath}</header>
<includes>
<include>**/*.java</include>
</includes>
<mapping>
<java>SLASHSTAR_STYLE</java>
</mapping>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-plugin-plugin</artifactId>
<version>${maven.plugin.version}</version>
</plugin>
<plugin>
<!--Workaround for https://jira.codehaus.org/browse/MPIR-251-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>${project.info.plugin.version}</version>
<configuration>
<dependencyDetailsEnabled>false</dependencyDetailsEnabled>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
</configuration>
</plugin>
</plugins>
</reporting>
<profiles>
<profile>
<id>integration</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
<version>${maven.invoker.plugin.version}</version>
<configuration>
<debug>${debug}</debug>
<streamLogs>${logs}</streamLogs>
<showErrors>${debug}</showErrors>
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
<postBuildHookScript>verify</postBuildHookScript>
<invokerPropertiesFile>invoker.properties</invokerPropertiesFile>
<properties>
<muleHomeProperty>${project.build.directory}/mule-enterprise-standalone</muleHomeProperty>
<muleHomeCe>${project.build.directory}/mule-standalone</muleHomeCe>
<mule.version>${mule.version}</mule.version>
<mpp-port>${mpp-port}</mpp-port>
<swpar-port>${swpar-port}</swpar-port>
<http.port>${http.port}</http.port>
<skipProperty>skipPlugin</skipProperty>
<skipPlugin>true</skipPlugin>
<mule.timeout>120000</mule.timeout>
</properties>
<goals>
<goal>clean</goal>
<goal>verify</goal>
</goals>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<phase>integration-test</phase>
<goals>
<goal>install</goal>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>clustering</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
<version>${maven.invoker.plugin.version}</version>
<configuration>
<projectsDirectory>src/it-cluster</projectsDirectory>
<debug>${debug}</debug>
<streamLogs>${logs}</streamLogs>
<showErrors>${debug}</showErrors>
<cloneProjectsTo>${project.build.directory}/it-cluster</cloneProjectsTo>
<postBuildHookScript>verify</postBuildHookScript>
<invokerPropertiesFile>invoker.properties</invokerPropertiesFile>
<properties>
<muleHomeProperty>${project.build.directory}/mule-enterprise-standalone</muleHomeProperty>
<mule.version>${mule.version}</mule.version>
<mpp-port>${mpp-port}</mpp-port>
<swpar-port>${swpar-port}</swpar-port>
<http.port>${http.port}</http.port>
<skipProperty>skipPlugin</skipProperty>
<skipPlugin>true</skipPlugin>
<mule.timeout>120000</mule.timeout>
</properties>
<goals>
<goal>clean</goal>
<goal>verify</goal>
</goals>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<phase>integration-test</phase>
<goals>
<goal>install</goal>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>