[wildfly-dev] Managed exploded deployments
Brian Stansberry
brian.stansberry at redhat.com
Fri Jun 10 17:41:40 EDT 2016
On 6/10/16 4:27 PM, James Perkins wrote:
>
>
> On Fri, Jun 10, 2016 at 8:18 AM, Emmanuel Hugonnet <ehugonne at redhat.com
> <mailto:ehugonne at redhat.com>> wrote:
>
>
>
> On 10/06/2016 17:06, Brian Stansberry wrote:
> > On 6/10/16 9:39 AM, Emmanuel Hugonnet wrote:
> >>
> >>
> >> On 10/06/2016 16:22, David M. Lloyd wrote:
> >>> On 06/10/2016 08:38 AM, 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)
> >>>
> >>> Hmmm.
> >>>
> >>> Is deployment explosion really an deployer concern, or is it a
> >>> deployment provider concern? Consider:
> >>>
> >>> * The deployment provider is the one who will know whether or not
> >>> his/her deployment will function correctly with or without
> exploding.
> >>> * The deployment will have been tested in the desired configuration
> >>> (exploded or unexploded).
> >>> * Making this a deployer/administrator concern means that he/she
> must
> >>> ensure that the extra step(s) taken in development and testing
> are also
> >>> replicated in production.
> >>>
> >>> Wouldn't it make more sense to have some deployment control metadata
> >>> (maybe even just a MANIFEST header) that says whether the particular
> >>> archive should be exploded?
> >>>
> >>> Also, I don't think it's clear that you always want to explode
> the outer
> >>> archive if an inner archive is to be exploded (I'm not sure that's
> >>> necessarily implied by the proposed design, but it certainly
> would be in
> >>> the recursive case). In particular it's definitely useful to
> explode
> >>> WARs inside of EARs that need not be exploded.
> >>>
> >>> Explode!!
> >>>
> >>> (eom)
> >>
> >> I think the main target for explosion scenarios are tools (IDE,
> build tools, etc.) in a development environment. so this mecanism is
> >> transparent from the developer point of vuiew.
> >> You have the same functionalities as with the scanner with
> hopefully a better control over the deployment management.
> >> Also this means you can develop on a remote server or even on a
> domain without having to rebuild the whole archive everytime.
> >>
> >
> > So would you use the 'explode' operation in your netbeans plugin, i.e.
> > start archived and explode? I'm curious if the JBDS guys will.
>
> Well it depends. On NetBeans you have a "Deploy on Save" checkbox so
> that the 'build' (since the build process it externalized in Netbeans)
> will no longer produce an archive but a list of changes.
> So I might need to explode the deployment somewhere in time.
>
>
> I could see this being useful in a scenario where a user launches
> WildFly in something like Docker but they want to see changes on static
> content without a full redeploy.
>
> If it's all local then it's already possible to do this using an
> unmanaged deployment.
I think David's original point was objecting to the "explode" op which
takes an existing managed archive deployment and turns it into a managed
exploded deployment. He questions whether that's a valid use case to
support. It wasn't about whether managed exploded deployments are a good
idea at all, just whether an internal conversion operation should be
supported.
Managed exploded deployments have a number of benefits over unmanaged:
1) Remote content administration, no local FS access required
2) Automatic content replication in a managed domain.
3) The content is stored in the internal repo, less likely to get messed
up somehow by other user activity on the filesystem.
>
>
>
>
> >
> > I suspect it would be used as a convenience; i.e. instead of the tool
> > initially uploading 100 files, it uploads a zip and explodes it. And
> > then either way it begins to manipulate the few files that the tool
> > regards as eligible for update without redeploy (.html, .css, etc.)
>
> That's also a use case (depending on producing an archive in the
> first place).
>
> Emmanuel
>
>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org <mailto:wildfly-dev at lists.jboss.org>
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>
>
>
>
> --
> James R. Perkins
> JBoss by Red Hat
>
>
> _______________________________________________
> wildfly-dev mailing list
> wildfly-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/wildfly-dev
>
--
Brian Stansberry
Senior Principal Software Engineer
JBoss by Red Hat
More information about the wildfly-dev
mailing list