Here is an initial start of directory-based hot deployment for Geronimo. I have not had the chance to update it with the things I would like to see, so I'm going ahead and submitting it, so a commiter can tweak it and get it into a build.
Basically this is a GBean service that monitors a specified directory in the filesystem for any "additions, modifications, or deletions". Based on the event, a particual module in the filesystem will either be deployed, redeployed, or undeployed. This service takes the assumtion that the deployment plan is packaged within the module.
Also, the specified directory is currently a hard-coded attribute in the deployment plan. It would be nice if the configuration started up a webapp as well,and the gbean was linked to this webapp so that the directory could be changed on the fly, and or multiple directories as well as other options could be specified. Perhaps this could be something configurable in the console?
Also, I am currently calling the org.apache.geronimo.deployment.Deployer to do the deploy. I initially wanted to reference the Deployer gbean and invoke deploy through it, but was having issues with that, so I used this as a workaround.
The class that monitors the file sytem I found on the internet, however it was only able to detected generic changes. I made modifications to the file so that these changes to the filesystem are catagorized as either additions, modifiecations, or deletions. See the license on the file, as I am unsure weather this can be used or wether it will need to be re-written from scratch, which if is the case should be trivial.
Please let me know if this is a good start, any suggestions, and if you think this is something that can be pushed into 1.0 I will be glad to spend additional time on it to get it in. I did this more for a learning exercise so its pretty scrappy right now, but I think alot could be done with it.