Re: [ansible-project] Hooks in Ansible
Hello, thank you for your answer! What I understand about cache plugins is that what could interrest me is fact caching. But as far as I know, lookup plugins can't set facts. Regards, Daniel Le 2022-07-26 13:08, Todd Lewis a écrit : Sounds like you want cache plugins. https://docs.ansible.com/ansible/latest/plugins/cache.html On 7/26/22 1:32 AM, Daniel Gonçalves wrote: Thank you for you answer. I already know *post_tasks*, *handlers*, and *ansible-runner*, but I don't think there are good for what I'm looking for. You need a bit more context: I have a custom lookup plugin that initialize some data and execute a new process in order to keep these datas available during the playbook life. I want to be able to send a SIGTERM signal to the process to terminate it at the end of playbook execution. As I want to share this custom plugin, I don't want any user interaction, because it's not the user role to worry about this extra process. So *post_tasks*, *handlers*, and *wait_for* are excluded. *ansible-runner* may be a good alternative but I don't want to force users to use *ansible-runner* instead of *ansible*. I hope it's more clear. Regards, Daniel Le 2022-07-25 21:55, Vladimir Botka a écrit : On Mon, 25 Jul 2022 19:06:33 +0200 Daniel Gonçalves wrote: What I want to do is executing some code at the end of the playbook execution, in other words executing some code at some arbitrary playbook execution step. I wonder if there is some event listener I can subscribe on in order to execute my code. This depends on the use case: 1) To execute the code at the end of the playbook you can use *post_tasks*. At some arbitrary playbook execution step use *tasks*. 2) To trigger the execution of a code by some events you can use the module *wait_for* https://docs.ansible.com/ansible/latest/collections/ansible/builtin/wait_for_module.html#ansible-builtin-wait-for-module-waits-for-a-condition-before-continuing and *handlers* https://docs.ansible.com/ansible/latest/user_guide/playbooks_handlers.html 3) To execute the code after the playbook finished you can use *ansible-runner* https://ansible-runner.readthedocs.io/en/stable/python_interface/#usage-examples -- Vladimir Botka -- Todd -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/07615b91-c41d-e3a7-422c-54e91af3b72e%40gmail.com [1]. Links: -- [1] https://groups.google.com/d/msgid/ansible-project/07615b91-c41d-e3a7-422c-54e91af3b72e%40gmail.com?utm_medium=email&utm_source=footer -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/0faf063468d0df034c6782cfecacbd67%40lves.fr.
Re: [ansible-project] Hooks in Ansible
Currently my plugin's process has a Time To Live concept to keep data during some customizable duration. It's pretty similar to what *async* provides but the drawback is that you need to know in advance how many time the execution will take, and that's what I want to avoid. Regards, Daniel Le 2022-07-26 10:57, Vladimir Botka a écrit : On Tue, 26 Jul 2022 07:32:33 +0200 Daniel Gonçalves wrote: context: I have a custom lookup plugin that initialize some data and execute a new process ... I want to be able to send a SIGTERM signal to the process to terminate it at the end of playbook execution. This seems to be a candidate for *async* https://docs.ansible.com/ansible/latest/user_guide/playbooks_async.html#run-tasks-concurrently-poll-0 -- Vladimir Botka -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/d2847c653de4e0c41a75b667d2b11d72%40lves.fr.
Re: [ansible-project] Hooks in Ansible
Sounds like you want cache plugins. https://docs.ansible.com/ansible/latest/plugins/cache.html On 7/26/22 1:32 AM, Daniel Gonçalves wrote: Thank you for you answer. I already know *post_tasks*, *handlers*, and *ansible-runner*, but I don't think there are good for what I'm looking for. You need a bit more context: I have a custom lookup plugin that initialize some data and execute a new process in order to keep these datas available during the playbook life. I want to be able to send a SIGTERM signal to the process to terminate it at the end of playbook execution. As I want to share this custom plugin, I don't want any user interaction, because it's not the user role to worry about this extra process. So *post_tasks*, *handlers*, and *wait_for* are excluded. *ansible-runner* may be a good alternative but I don't want to force users to use *ansible-runner* instead of *ansible*. I hope it's more clear. Regards, Daniel Le 2022-07-25 21:55, Vladimir Botka a écrit : On Mon, 25 Jul 2022 19:06:33 +0200 Daniel Gonçalves wrote: What I want to do is executing some code at the end of the playbook execution, in other words executing some code at some arbitrary playbook execution step. I wonder if there is some event listener I can subscribe on in order to execute my code. This depends on the use case: 1) To execute the code at the end of the playbook you can use *post_tasks*. At some arbitrary playbook execution step use *tasks*. 2) To trigger the execution of a code by some events you can use the module *wait_for* https://docs.ansible.com/ansible/latest/collections/ansible/builtin/wait_for_module.html#ansible-builtin-wait-for-module-waits-for-a-condition-before-continuing and *handlers* https://docs.ansible.com/ansible/latest/user_guide/playbooks_handlers.html 3) To execute the code after the playbook finished you can use *ansible-runner* https://ansible-runner.readthedocs.io/en/stable/python_interface/#usage-examples -- Vladimir Botka -- Todd -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/07615b91-c41d-e3a7-422c-54e91af3b72e%40gmail.com.
Re: [ansible-project] Hooks in Ansible
On Tue, 26 Jul 2022 07:32:33 +0200 Daniel Gonçalves wrote: > context: I have a custom lookup plugin that > initialize some data and execute a new process ... > I want to be able to send a SIGTERM signal to the process to > terminate it at the end of playbook execution. This seems to be a candidate for *async* https://docs.ansible.com/ansible/latest/user_guide/playbooks_async.html#run-tasks-concurrently-poll-0 -- Vladimir Botka -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/20220726105716.3a28b244%40gmail.com. pgp1Zce6zqa6k.pgp Description: OpenPGP digital signature
Re: [ansible-project] Hooks in Ansible
Thank you for you answer. I already know *post_tasks*, *handlers*, and *ansible-runner*, but I don't think there are good for what I'm looking for. You need a bit more context: I have a custom lookup plugin that initialize some data and execute a new process in order to keep these datas available during the playbook life. I want to be able to send a SIGTERM signal to the process to terminate it at the end of playbook execution. As I want to share this custom plugin, I don't want any user interaction, because it's not the user role to worry about this extra process. So *post_tasks*, *handlers*, and *wait_for* are excluded. *ansible-runner* may be a good alternative but I don't want to force users to use *ansible-runner* instead of *ansible*. I hope it's more clear. Regards, Daniel Le 2022-07-25 21:55, Vladimir Botka a écrit : On Mon, 25 Jul 2022 19:06:33 +0200 Daniel Gonçalves wrote: What I want to do is executing some code at the end of the playbook execution, in other words executing some code at some arbitrary playbook execution step. I wonder if there is some event listener I can subscribe on in order to execute my code. This depends on the use case: 1) To execute the code at the end of the playbook you can use *post_tasks*. At some arbitrary playbook execution step use *tasks*. 2) To trigger the execution of a code by some events you can use the module *wait_for* https://docs.ansible.com/ansible/latest/collections/ansible/builtin/wait_for_module.html#ansible-builtin-wait-for-module-waits-for-a-condition-before-continuing and *handlers* https://docs.ansible.com/ansible/latest/user_guide/playbooks_handlers.html 3) To execute the code after the playbook finished you can use *ansible-runner* https://ansible-runner.readthedocs.io/en/stable/python_interface/#usage-examples -- Vladimir Botka -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/fc37dcdc7b8f71b00daad2b092aa6642%40lves.fr.
Re: [ansible-project] Hooks in Ansible
On Mon, 25 Jul 2022 19:06:33 +0200 Daniel Gonçalves wrote: > What I want to do is executing some code at the end of the playbook > execution, in other words executing some code at some arbitrary playbook > execution step. I wonder if there is some event listener I can subscribe > on in order to execute my code. This depends on the use case: 1) To execute the code at the end of the playbook you can use *post_tasks*. At some arbitrary playbook execution step use *tasks*. 2) To trigger the execution of a code by some events you can use the module *wait_for* https://docs.ansible.com/ansible/latest/collections/ansible/builtin/wait_for_module.html#ansible-builtin-wait-for-module-waits-for-a-condition-before-continuing and *handlers* https://docs.ansible.com/ansible/latest/user_guide/playbooks_handlers.html 3) To execute the code after the playbook finished you can use *ansible-runner* https://ansible-runner.readthedocs.io/en/stable/python_interface/#usage-examples -- Vladimir Botka -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/20220725215524.6aaab024%40gmail.com. pgppsViJXWnql.pgp Description: OpenPGP digital signature
[ansible-project] Hooks in Ansible
Hello, I wonder if you already had some discussions about hooks in Ansible. I tried some research but found nothing useful about what I am looking for. What I want to do is executing some code at the end of the playbook execution, in other words executing some code at some arbitrary playbook execution step. I wonder if there is some event listener I can subscribe on in order to execute my code. I don't know if this is good place to discuss about that or if I need to start a thread on devel. If so let me know. Daniel. -- 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 ansible-project+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/4d71d73e0628d665990e3cf317078529%40lves.fr.