Package org.wildfly.plugin.provision

## Class ApplicationImageMojo

- java.lang.Object
- - org.apache.maven.plugin.AbstractMojo
  - - org.wildfly.plugin.provision.PackageServerMojo
    - - org.wildfly.plugin.provision.ApplicationImageMojo

- All Implemented Interfaces:
    `org.apache.maven.plugin.ContextEnabled`, `org.apache.maven.plugin.Mojo`

      @Mojo(name="image",
            requiresDependencyResolution=COMPILE_PLUS_RUNTIME,
            defaultPhase=PACKAGE)
      public class ApplicationImageMojo
      extends PackageServerMojo

  Build (and push) an application image containing the provisioned server and the deployment.

  The `image` goal extends the `package` goal, building and pushing the image occurs after the server is provisioned and the deployment deployed in it.

  The `image` goal relies on a Docker binary to execute all image commands (build, login, push).

  Note that if a WildFly Bootable JAR is packaged, it is ignored when building the image.

  Since:
    4.0

- - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected org.jboss.galleon.universe.maven.repo.MavenRepoManager` | `artifactResolver` |
    `static int` | `DOCKER_CMD_CHECK_TIMEOUT` |
    `protected String` | `provisioningDir` | The path to the directory where to provision the server.

    - ### Fields inherited from class org.wildfly.plugin.provision.PackageServerMojo

      `BOOTABLE_JAR_NAME_RADICAL, JAR, runtimeName, skipDeployment`

    - ### Fields inherited from interface org.apache.maven.plugin.Mojo

      `ROLE`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ApplicationImageMojo()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `enrichRepositories()` |
    `void` | `execute()` |
    `protected String` | `getGoal()` |

    - ### Methods inherited from class org.wildfly.plugin.provision.PackageServerMojo

      `buildGalleonConfig, copyExtraContent, getDefaultConfig, getDeploymentContent, getDeploymentTargetName, serverProvisioned`

    - ### Methods inherited from class org.apache.maven.plugin.AbstractMojo

      `getLog, getPluginContext, setLog, setPluginContext`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### DOCKER_CMD_CHECK_TIMEOUT

          public static final int DOCKER_CMD_CHECK_TIMEOUT

      See Also:
        Constant Field Values

    - #### provisioningDir

          @Parameter(alias="provisioning-dir",
                     property="wildfly.provisioning.dir",
                     defaultValue="server")
          protected String provisioningDir

      The path to the directory where to provision the server. Can be an absolute path or a path relative to the buildDir. By default the server is provisioned into the `target/server` directory.

    - #### artifactResolver

          protected org.jboss.galleon.universe.maven.repo.MavenRepoManager artifactResolver

  - ### Constructor Detail

    - #### ApplicationImageMojo

          public ApplicationImageMojo()

  - ### Method Detail

    - #### getGoal

          protected String getGoal()

      Overrides:
        `getGoal` in class `PackageServerMojo`

    - #### execute

          public void execute()
                       throws org.apache.maven.plugin.MojoExecutionException,
                              org.apache.maven.plugin.MojoFailureException

      Specified by:
        `execute` in interface `org.apache.maven.plugin.Mojo`
      Overrides:
        `execute` in class `PackageServerMojo`
      Throws:
        `org.apache.maven.plugin.MojoExecutionException`
        `org.apache.maven.plugin.MojoFailureException`

    - #### enrichRepositories

          protected void enrichRepositories()
                                     throws org.apache.maven.plugin.MojoExecutionException

      Throws:
        `org.apache.maven.plugin.MojoExecutionException`