[jboss-as7-dev] Deployment -- why marker files?

Jason T. Greene jason.greene at redhat.com
Tue Apr 12 12:22:46 EDT 2011


On 4/12/11 11:14 AM, Jim Tyrrell wrote:
> Okay so great minds think alike i think, but looking at these two/three
> things:
>
> 1. touch $AS/standalone/deployments/example.war.skipdeploy
> 2. cp -r target/example.war/foo.html $AS/standalone/deployments/example.war
>
> You are copying to a different directory, that is hard to GROK.

This is the case where you are using the problematic exploded 
auto-deploy, but you want to avoid the scanning problems. Alternatively 
you can take the default which has auto-deploy turned off and just 
create a .depdeploy alongside it to kick off the deployment explicitly 
(the opposite, no inverse skip).

To answer your earlier question you can update jsp, html files etc in 
the directory and those take effect immediate, it's only a full redeploy 
that requires touching a marker.

Note that deployment descriptors can not be used because EE6 deployments 
may not have them. Directory timestamps are also problematic because OSs 
treat them differently.
>
> 1. touch $AS/standalone/deployments/example.war.skipdeploy
> 2. cp -r target/example.war/ $AS/standalone/deployments
> 3. rm $AS/standalone/deployments/example.war.skipdeploy
>
>
> It is a little odd to copy the new things skipped NOT into the
> example.war.skipdeploy directory?

skipdeploy is not a directory, its just an empty marker file file

>
>
> 1. rm $AS/standalone/deployments/example.war.deployed
> 2. wait for $AS/standalone/deployments/example.war.undeployed file to appear
> 3. cp -r target/example.war/ $AS/standalone/deployments
> 4. touch $AS/standalone/deployments/example.war.dodeploy
>
> Above your touching a file you did not explicitly create above, again
> kinda odd.
>
> I get what you are doing I think, and I like the directory renaming as I
> came up with it independently, but the seemingly magic/gaps from one
> step the next is troublesome in getting what I am able/should do?

The big problem with directory renaming is just that you still have to 
have a file somewhere to indicate redeploy, unless you rename it to and 
back, but then the scanner might not notice.

>
> Jim Tyrrell
> Senior JBoss Solutions Architect
>
> Did you see RHT on CNBC's Mad Money?
> http://www.cnbc.com/id/39401056
>
>
>
> On Apr 12, 2011, at 10:02 AM, Jason T. Greene wrote:
>
>> On 4/12/11 10:56 AM, Jim Tyrrell wrote:
>>> Guys the way that we have worked in the past where exploded files just
>>> works is a really good feature. One that definitely is a selling point.
>>>
>>> Reading through the thread higher in the list in the forums I get why we
>>> are here today.
>>>
>>> However, burying this change in the META-INF directory seems like a real
>>> pain from a usability perspective.
>>
>> Take a look at this:
>>
>> https://github.com/jbossas/jboss-as/raw/6a72ca965f01021d034049598451e0aca3ba38f3/build/src/main/resources/standalone/deployments/README.txt
>>
>>
>>> What about renaming the exploded directory tree instead.
>>>
>>> Copy
>>> application.war
>>> to the hot-deploy directory
>>>
>>> rename application.war.dodeploy when you want to deploy it
>>> rename to aplication.war.doundeloy when you want to undeploy it
>>>
>>> WHen it is is deployed
>>> application.war.deployed
>>> application.war.failed with a outtext file in the directory that states
>>> the reasons for failure?
>>>
>>> If I do an lS in the directory I can immediately see what is going on. I
>>> do not have to bury myself in META-INF directories and I would think
>>> this is a lot simpler.
>>>
>>> I did not read all of the pages, this seems like an elegant solution to
>>> some of the "Atomicy" issues you have around deployment, along with
>>> making this easy to use.
>>>
>>> Does this mean that if I update an .jsp page in an exploded directory I
>>> need to mark it as .dodeploy?
>>>
>>> Have you guys talked with Max and the tools team to see what/how this
>>> effects what they have to do?
>>
>> Yes, I think hes happy with the eventual outcome. Although I will let
>> him comment :)
>>
>>>
>>> Jim Tyrrell
>>> Senior JBoss Solutions Architect
>>>
>>> Did you see RHT on CNBC's Mad Money?
>>> http://www.cnbc.com/id/39401056
>>>
>>>
>>>
>>> On Apr 12, 2011, at 9:42 AM, Jason T. Greene wrote:
>>>
>>>> Yeah basically we had not finished the feature until Beta2 and onward. I
>>>> highly recommend grabbing the latest upstream.
>>>>
>>>> On 4/12/11 10:18 AM, Howard Gao wrote:
>>>>> Thanks Jason. I think I would use auto-deploy for most of the time.
>>>>> If by default it is auto-deploy for non-exploded deployment, then I
>>>>> think there is an issue with it. I deployed a simple MDB (packed in a
>>>>> jar file, I think that's non-exploded) and I still have to add a
>>>>> .dodeploy to trigger the processing of my MDB.
>>>>>
>>>>> Or perhaps it has been just so changed? My as7 is built from the code
>>>>> days ago.
>>>>>
>>>>> Howard
>>>>>
>>>>>
>>>>> On 04/12/2011 11:10 PM, Jason T. Greene wrote:
>>>>>> Actually allow me to clarify:
>>>>>>
>>>>>> BY DEFAULT you do not need markers for non-exploded deployments.
>>>>>>
>>>>>> You do need them for exploded. You can enable auto-deploy for
>>>>>> directories, and ignore using any marker, but you have the same casino
>>>>>> odds that you had in previous AS releases.
>>>>>>
>>>>>>
>>>>>> On 4/12/11 10:04 AM, Jason T. Greene wrote:
>>>>>>> You dont need markers for non-exploded deployments (see
>>>>>>> auto-deploy in
>>>>>>> deployments/README.txt)
>>>>>>>
>>>>>>> On 4/12/11 9:51 AM, Howard Gao wrote:
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> In AS7 it uses a bunch of 'Marker files' to control and indicate a
>>>>>>>> deployment. Comparing to previous AS 4 I found this is not so
>>>>>>>> convenient. For example if I want to deploy an EJB jar I need to
>>>>>>>> drop it
>>>>>>>> to the /deployments dir and create a .dodeploy marker file. And
>>>>>>>> if my
>>>>>>>> EJB failed to deploy the marker file changed to .fail mark file.
>>>>>>>> In a
>>>>>>>> debug process this deployment can be repeated many times, each
>>>>>>>> time a
>>>>>>>> .dodeploy has to be manually added. And that's for a single EJB.
>>>>>>>> If I
>>>>>>>> have 5 EJB jars deployed I need file marker files manually created.
>>>>>>>>
>>>>>>>> In AS 4 I just drop it and done. I wonder what's the good reason for
>>>>>>>> those marker files? From a user's point of view, for what other
>>>>>>>> purposes
>>>>>>>> could it be to drop something to the deployments directory than for
>>>>>>>> deploying it right away?
>>>>>>>>
>>>>>>>> Thanks
>>>>>>>> Howard
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> jboss-as7-dev mailing list
>>>>>>>> jboss-as7-dev at lists.jboss.org <mailto:jboss-as7-dev at lists.jboss.org>
>>>>>>>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>>
>>>> --
>>>> Jason T. Greene
>>>> JBoss, a division of Red Hat
>>>> _______________________________________________
>>>> jboss-as7-dev mailing list
>>>> jboss-as7-dev at lists.jboss.org <mailto:jboss-as7-dev at lists.jboss.org>
>>>> https://lists.jboss.org/mailman/listinfo/jboss-as7-dev
>>>
>>
>>
>> --
>> Jason T. Greene
>> JBoss, a division of Red Hat
>


-- 
Jason T. Greene
JBoss, a division of Red Hat



More information about the jboss-as7-dev mailing list