Design Notes for Managed Exploded Deployment in HAL

Version 4

    Goal

     

    Provide some support for managed exploded deployments (MED), such as explode, browse-content, read-content, etc.

     

    Info

     

    EAP Issue: https://issues.jboss.org/browse/EAP7-583

    Add more information to browse-content and read-content as: mime-type, file size, directory/file flag,

    https://issues.jboss.org/browse/EAP7-603

     

    Dev contact: Claudio Miranda <claudio at redhat.com>

     

    Design notes for supporting managed exploded deployments

     

    Wildfly-core feature branch, contains the implementation of this feature in Wildfly

    https://github.com/ehsavoie/wildfly-core/commits/WFCORE-429

    https://github.com/ehsavoie/wildfly-core/commits/WFCORE-1746

     

    Dependencies

     

    The feature branch for wildfly has open pull requests. These features must be merged into Wildfly distribution.

     

    [WFCORE-429]: Incremental redeployment (single file update) over management API by ehsavoie · Pull Request #1675 · wildf…

    [WFCORE-429]: Incremental redeployment (single file update) over management API by ehsavoie · Pull Request #9063 · wildf…

     

    [WFCORE-1741]:  read-content operation does not return the uuid of thstream as the operation result by ehsavoie · Pull R…

     

    Requirements

     

    Support the following operations for MED

    * browse-content (no navigation, only tree listing)

    * read-content

     

    Continue to support the managed deployment operations for MED

    * explode (unzip a disabled deployment)

    * replace

    * view attributes (managed, archive, enabled, enabled/disabled timestamps)

    * assignments (domain mode)

    * status

     

    Display additional deployment information:

    * Is managed or unmanaged

    * Archive or exploded

     

    Non Requirements

     

    The following operations will not be supported at this time. Maybe for 7.2.

    * remove-content

    * add-content

    * browse-content (navigable tree)

    * add (empty archive)

     

    Details

     

    The operations will be displayed as an additional item in the drop-down component. Currently it displays: Disable, Assign/Unassign, Remove, Enable.

    The additional items will be displayed accordingly to the deployment status:

    * Explode operation: only when: managed AND archive AND (disabled OR not assigned)
    * Browse content: only when managed AND not archive

    * Replace operation: only when managed