On 03/18/14 14:44, Michael DeHaan wrote:
> "For example, if a task that changes a server's configuration fails,
> forcing the execution of a handler that reloads/restarts the server
> could lead to the server failing to operate properly or be able to
> serve at all. "
>
> This is why it's a command line option to be used only when desired.
>
Being it a command line option does not help, because you do not know
before running the command that any of your tasks is going to fail and how.

I think that the correct analysis of the problem is like this:

You have designed a sequence of deployment tasks that should be run in a
specific order. Your task specification language (ansible playbook) does
not know what is the best thing to do if task execution is abnormally
interrupted. Only you, the ansible user, will be able to know what
should be done. Normally you expect everything to run fine, but, if
something goes wrong (and things can still go wrong on production
deployments, even after passed tests), you want your action to stop as
early as possible. At the same time you want to have the tools that will
help you to mitigate the problems caused by the abnormal interruption.
And you want full control over these tools. You do not want the tools to
decide for you on what should be done. You are the one to decide, and
you can't do so before you actually see what and how it failed.

So, you need a tool to run already notified handlers (or part of them),
but you will use it only if it is good for the health of your system.
You cannot decide about that until you actually see what happened.

>
>
>
> On Tue, Mar 18, 2014 at 8:22 AM, Petros Moisiadis <[email protected]
> <mailto:[email protected]>> wrote:
>
>     On 03/17/14 15:51, Michael DeHaan wrote:
>>     There was a post about this last week about adding a
>>     --force-handlers statement.
>>
>>     This can be done though we're currently chasing some other items
>>     presently.
>>
>>     Pull requests would be welcome.
>>
>>
>>
>>
>>     On Sat, Mar 15, 2014 at 1:12 PM, Julio Monteiro
>>     <[email protected] <mailto:[email protected]>> wrote:
>>
>>         Hello all,
>>
>>         I am curious if/how Ansible plans on solving the "replay
>>         notifications" issue. I am having the exact same issue as
>>         reported on this StackOverflow question (the author does a
>>         great job describing the issue):
>>         
>> http://stackoverflow.com/questions/21538516/ansible-how-to-replay-notifications
>>
>>         I find that it is easy to prevent that by, instead of using
>>         notifications, using tasks with "when:" statements. But I
>>         really find that this is a workaround and notifications are
>>         great and easy features -- it should be a default way to
>>         replay them, or at least have a list of
>>         queued-but-not-executed notifications whenever a task fails.
>>
>>         Thanks,
>>           jmonteiro
>>         -- 
>>         You received this message because you are subscribed to the
>>         Google Groups "Ansible Project" group.
>>         To unsubscribe from this group and stop receiving emails from
>>         it, send an email to
>>         [email protected]
>>         <mailto:[email protected]>.
>>         To post to this group, send email to
>>         [email protected]
>>         <mailto:[email protected]>.
>>         To view this discussion on the web visit
>>         
>> https://groups.google.com/d/msgid/ansible-project/64e1dbe8-5b36-4e6b-b521-f086d2952008%40googlegroups.com
>>         
>> <https://groups.google.com/d/msgid/ansible-project/64e1dbe8-5b36-4e6b-b521-f086d2952008%40googlegroups.com?utm_medium=email&utm_source=footer>.
>>         For more options, visit https://groups.google.com/d/optout.
>>
>>
>>     -- 
>>     You received this message because you are subscribed to the
>>     Google Groups "Ansible Project" group.
>>     To unsubscribe from this group and stop receiving emails from it,
>>     send an email to [email protected]
>>     <mailto:[email protected]>.
>>     To post to this group, send email to
>>     [email protected]
>>     <mailto:[email protected]>.
>>     To view this discussion on the web visit
>>     
>> https://groups.google.com/d/msgid/ansible-project/CAEVJ8QNy-TU-EmK_i8%2BZLDMD9DFqC-UfvG4OAAc9J7sY6amSgQ%40mail.gmail.com
>>     
>> <https://groups.google.com/d/msgid/ansible-project/CAEVJ8QNy-TU-EmK_i8%2BZLDMD9DFqC-UfvG4OAAc9J7sY6amSgQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>
>>
>>     For more options, visit https://groups.google.com/d/optout.
>
>     Usually the task that notifies a handler has made some changes
>     that affect the behavior of systems involved by the actions being
>     taken in the handler. If the notifying task fails, but its handler
>     is forced to run, then the behavior of the involved systems could
>     be unpredictable or unwanted. For example, if a task that changes
>     a server's configuration fails, forcing the execution of a handler
>     that reloads/restarts the server could lead to the server failing
>     to operate properly or be able to serve at all. So, I think that a
>     '--force-handlers' option is quite risky and could lead to
>     unpredictable behavior. It would be better to let users control
>     the (selective) replaying of the handlers only _after_ the failure
>     occurs.
>     -- 
>     You received this message because you are subscribed to the Google
>     Groups "Ansible Project" group.
>     To unsubscribe from this group and stop receiving emails from it,
>     send an email to [email protected]
>     <mailto:[email protected]>.
>     To post to this group, send email to
>     [email protected]
>     <mailto:[email protected]>.
>     To view this discussion on the web visit
>     
> https://groups.google.com/d/msgid/ansible-project/53283A78.8000207%40yahoo.gr
>     
> <https://groups.google.com/d/msgid/ansible-project/53283A78.8000207%40yahoo.gr?utm_medium=email&utm_source=footer>.
>
>
>     For more options, visit https://groups.google.com/d/optout.
>
>
> -- 
> You received this message because you are subscribed to the Google
> Groups "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to [email protected]
> <mailto:[email protected]>.
> To post to this group, send email to [email protected]
> <mailto:[email protected]>.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/CAEVJ8QNYsfvGxhGfMhCzBGVoh7p1i0qpG7bJaHMU%3D9empnhnEw%40mail.gmail.com
> <https://groups.google.com/d/msgid/ansible-project/CAEVJ8QNYsfvGxhGfMhCzBGVoh7p1i0qpG7bJaHMU%3D9empnhnEw%40mail.gmail.com?utm_medium=email&utm_source=footer>.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/532855CE.7040309%40yahoo.gr.
For more options, visit https://groups.google.com/d/optout.

Reply via email to