7.4. Configuration Properties

Specifying properties

Properties can be specified either as elements inside the configuration element of the plug-in in your project's pom.xml file. For example, the profile property can be set as follows:
<plugins>
  <plugin>
    <groupId>io.fabric8</groupId>
    <artifactId>fabric8-maven-plugin</artifactId>
    <configuration>
      <profile>${fabric8.profile}</profile>
    </configuration>
  </plugin>
</plugins>
Or you can specify the properties on the command line or as Maven build properties (where the property names must be prefixed with fabric8.. For example, to set the profile name, you could add the following property to your pom.xml file:
<project>
  ...
  <properties>
    <fabric8.profile>my-foo</fabric8.profile>
    ...
  </properties>
  ...
Or you can specify properties on the command line:
mvn fabric8:deploy -Dfabric8.profile=my-foo

Property reference

The Fabric8 Maven plug-in supports the following properties (which can be set either as elements inside the configuration element in the pom.xml file or as Maven properties, when prefixed by fabric8.):
Parameter Description
abstractProfile Specifies whether the profile is abstract. Default is false.
artifactBundleType Type to use for the project artifact bundle reference.
artifactBundleClassifier Classifier to use for the project artifact bundle reference.
baseVersion If the version does not exist, the baseVersion provides the initial values for the newly created version. This is like creating a branch from the baseVersion for a new version branch in git.
bundles Space-separated list of additional bundle URLs (of the form mvn:groupId/artifactId/version) to add to the newly created profile. Note you do not have to include the current Maven project artifact; this configuration is intended as a way to list dependent required bundles.
featureRepos Space-separated list of feature repository URLs to add to the profile. The URL has the general form mvn:groupId/artifactId/version/xml/features.
features Space-separated list of features to add to the profile. For example, the following setting would include both the camel feature and the cxf feature: <features>camel cxf</features>
generateSummaryFile Whether or not to generate a Summary.md file from the pom.xml file's description element text value. Default is true.
ignoreProject Whether or not we should ignore this maven project in goals like fabric8:deploy or fabric8:zip. Default is false.
includeArtifact Whether or not we should add the Maven deployment unit to the Fabric profile. Default is true.
includeReadMe Whether or not to upload the Maven project's ReadMe file, if no specific ReadMe file exists in the your profile configuration directory (as set by profileConfigDir). Default is true.
jolokiaUrl The Jolokia URL of the JBoss Fuse Management Console. Defaults to http://localhost:8181/jolokia.
locked Specifies whether or not the profile should be locked.
minInstanceCount The minimum number of instances of this profile which we require to run. Default is 1.
parentProfiles Space-separated list of parent profile IDs to be added to the newly created profile. Defaults to karaf.
profile The name of the Fabric profile to deploy your project to. Defaults to the groupId-artifactId of your Maven project.
profileConfigDir The folder in your Maven project containing resource files to be deployed into the profile, along with the artifact configuration. Defaults to src/main/fabric8. You should create the directory and add any configuration files or documentation you wish to add to your profile.
profileVersion The profile version in which to update the profile. If not specified, it defaults to the current version of the fabric.
replaceReadmeLinksPrefix If provided, then any links in the ReadMe.md files will be replaced to include the given prefix.
scope The Maven scope to filter by, when resolving the dependency tree. Possible values are: compile, provided, runtime, test, system, import.
serverId The server ID used to lookup in ~/.m2/settings/xml for the server element to find the username and password to log in to the fabric. Defaults to fabric8.upload.repo.
upload Whether or not the deploy goal should upload the local builds to the fabric's Maven repository. You can disable this step if you have configured your fabric's Maven repository to reuse your local Maven repository. Defaults to true.
useResolver Whether or not the OSGi resolver is used for bundles or Karaf based containers to deduce the additional bundles or features that need to be added to your projects dependencies to be able to satisfy the OSGi package imports. Defaults to true.
webContextPath The context path to use for Web applications, for projects using war packaging.