GitHub user neykov opened a pull request:
https://github.com/apache/incubator-brooklyn/pull/413
Release the underlying machine when stopping BrooklynNode
The shutdown effector was setting a STOP state which prevented the machine
from being released.
Changes:
* Convert the shutdown effector as a utility functionality - just call
the remote shutdown endpoint with the passed parameters
* Store effector parameters in the EffectorCallTag, methods calls to
fetch them. Passing the parameters along the call chain would cause backwards
incompatible changes.
* Pass stop parameters to the shutdown effector so that it's
functionality can be fine tuned by calling stop directly
* Don't unamange the node if the machine is not released.
* Add logic to wait for the graceful shutdown of the process before
killing it forcibly (the java process will take some time to shut down cleanly
after closing the rest connection)
Depends on https://github.com/apache/incubator-brooklyn/pull/389.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/neykov/incubator-brooklyn
fix/brooklyn-node-stop-eff
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-brooklyn/pull/413.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #413
----
commit 810c1183bf77b4693a10be19853f43d8e89f770e
Author: Svetoslav Neykov <[email protected]>
Date: 2014-12-12T13:01:25Z
Don't stop underlying machine if there are active services at the node.
So far pre-stop was throwing if there are running services, but machine
shutdown was forced nevertheless.
commit c2d91a118e90b7e00158eba19d0072821b0cf7a2
Author: Svetoslav Neykov <[email protected]>
Date: 2014-12-12T13:25:36Z
Wire up postStop to be called, unmanage BrooklynNode on stop.
commit 0d09bbef1fd9ac42e1d7d7176dc28ab7d8669415
Author: Svetoslav Neykov <[email protected]>
Date: 2014-12-19T14:06:58Z
Fix STOP effector for BrooklynNode
The shutdown effector was setting a STOP state which prevented the machine
from being released.
Changes:
* Convert the shutdown effector as a utility functionality - just call
the remote shutdown endpoint with the passed parameters
* Store effector parameters in the EffectorCallTag, methods calls to
fetch them. Passing the parameters along the call chain would cause backwards
incompatible changes.
* Pass stop parameters to the shutdown effector so that it's
functionality can be fine tuned by calling stop directly
* Don't unamange the node if the machine is not released.
* Add logic to wait for the graceful shutdown of the process before
killing it forcibly (the java process will take some time to shut down cleanly
after closing the rest connection)
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---