[wildfly-dev] Managed exploded deployments
Kabir Khan
kabir.khan at jboss.com
Mon Jun 13 17:51:41 EDT 2016
Please open a separate EAP7 issue linked to the WFCORE one, and let Bilge know so he can rank it
> On 13 Jun 2016, at 17:14, Jean-Francois Denise <jdenise at redhat.com> wrote:
>
> Hi,
>
> we have discussed the CLI requirements. The main item is the addition of
> a support for streams (in batch and non batch) in low level Operation.
> Doing so we will support the update/add-content operation.
>
> A field that it a File stream, will be annotated with attached_stream
> and filesystem_path.
>
> In the particular case of the update/add-content operation, the
> index_stream attribute should be renamed to a more appropriate name
> since we won't use any aliasing in the cli (something like source_file).
> This does answer the path/stream duality that CLI user could observe (a
> file system path converted internally onto an array index). Introducing
> some special aliasing in the metadata would make ergonomics constraint
> to slip into lower level API. For a simpler command, with better
> options, we should implement a dedicated Command.
>
> Discussing the explode operation, we could have a need for an extra
> operation (list-content) that would allow to offer completion when
> selecting sub archives to explode.
>
> JF
>
>
> On 10/06/16 23:48, Brian Stansberry wrote:
>> Emmanuel,
>>
>> Can you work with Alexey and Jeff to add some CLI requirements to this?
>> I went on PTO and forget about our discussions in Neuchatel about being
>> able to associate streams wit the add-content op. If we can't make it
>> easy to do that with low level operations, we'd need a high level command.
>>
>> The doc already mentions there needs to be some CLI "deploy" command
>> support for starting an empty exploded deployment. Perhaps that's not
>> strictly required though; a low level op could suffice. The deployment
>> doesn't need to be mapped to server groups or enabled until it isn't
>> empty any more.
>>
>> On 6/10/16 9:24 AM, Emmanuel Hugonnet wrote:
>>> Some details on the current implementation :
>>> * the add-content will overwrite existing content so there is no update-content
>>> updating instead of just adding means having the state on the client as well as on the server which would require more checks to keep those
>>> in sync for no real value from my point of view.
>>> * the add-content/remove-content work with a list of contents thus for an IDE we don't have to create a bunch of ops to upload or delete
>>> each change.
>>> * you can start from an 'empty' deployment and add contents to it step by step
>>>
>>> Emmanuel
>>>
>>>
>>> On 10/06/2016 15:38, Brian Stansberry wrote:
>>>> Emmanuel Hugonnet has been working on a long requested feature to have
>>>> WildFly support "managed exploded deployments." We have a requirements
>>>> analysis doc for this at https://developer.jboss.org/docs/DOC-55497 and
>>>> I just wanted to point that out to the list so anyone interested can
>>>> have a look, and comment on this thread or on the document.
>>>>
>>>> A managed deployment is one where the user provided content is copied by
>>>> the server/host controller into its internal content repo and then
>>>> thereafter that copy is what is used. I estimate that 99%+ of all zipped
>>>> deployments in WildFly are managed. With an unmanaged deployment the
>>>> user provides the server with the local FS path to the content and then
>>>> the server directly uses that content. All exploded deployments are
>>>> unmanaged, as we don't support managed yet.
>>>>
>>>> We propose to add 5 new operations to the deployment resource:
>>>>
>>>> explode (to convert and archive deployment to exploded)
>>>> add-content
>>>> update-content
>>>> remove-content
>>>> read-content
>>>>
>>>> There is one "nice-to-have" requirement listed on the doc where I'm
>>>> increasingly thinking it needs to be a hard requirement, so thought on
>>>> this are appreciated:
>>>>
>>>>
>>>> "The explode operation can take an optional path parameter, the value of
>>>> which is a path within the deployment that should be exploded.
>>>> * The use case for this is scenarios like an exploded ear that
>>>> contains an unexploded war, and then the user later wishes the war to be
>>>> exploded.
>>>> * This is much closer to a hard requirement if the nice-to-have
>>>> requirement for recursively exploding is not supported.
>>>> * This operation will fail if the content referred to by the path
>>>> parameter is already exploded or is not a zip file.
>>>> * This operation will fail if any content between the root of the
>>>> deployment and the content referred to by the path parameter is an
>>>> unexploded archive.
>>>> * So,
>>>> /deployment=foo.ear:explode(path=/thewar.war/WEB-INF/lib/thejar.jar)
>>>> would fail if thewar.war hadn't previously been exploded."
>>>>
>>>
>>>
>>> _______________________________________________
>>> wildfly-dev mailing list
>>> wildfly-dev at lists.jboss.org
>>> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>>>
>>
>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
More information about the wildfly-dev
mailing list