Yes, that's true and I am aware of that. However, just like I said I though it would be quick and easy :)
poniedziałek, 2 listopada 2020 o 15:50:09 UTC+1 [email protected] napisał(a): > On 11/2/20 3:30 PM, Luke C wrote: > > All right, so I created a callback plugin which saves information > automatically about each executed task to external > > database, to put it concisely it holds of lots of information about task > execution (output, hostname etc) + other needed > > by users. > > For each task unique identifier (not Anisble TASKUUID) is also generated > - it is a combination of few fields. > > That Custom UUID is being saved to that database as well. > > > > The idea is to not execute any tasks in that playbook(s) more than once, > for this purpose Custom UUID should be checked. > > Tasks shouldn't be executed more than once on a server because of > irreversible actions done by those external legacy > > scripts. (no comments on that, can't be changed for now) > > > > With when condition it would be problematic to check Custom_UUID for > each task because it's not and can't be hardcoded > > (can differ). > > So, my first thought was to create or rather enhance my callback plugin > to GET data from DB to check whether this > > particular task has been already executed or not. > > If yes, it should be omitted. > > > > I'm not sure if your setup really makes sense ... it has a smell of > overengineering. Ansible is suppose to at least > go through the tasks to ensure that to ascertain that the desired status > has been reached. > > Regards > Racke > > > > > > > poniedziałek, 2 listopada 2020 o 14:40:14 UTC+1 [email protected] > napisał(a): > > > > On Mon, Nov 2, 2020 at 8:08 AM Luke C <[email protected]> wrote: > > > > > > Thanks for the reply. > > > Yes I know ... :) > > > > > > The problem is that I want to have dynamic when conditions for huge > amount of tasks. > > > With standard when condition I would have to provide a particular > static condition for each task (which in fact > > are mostly external script executions). > > > I thought it would be just easier and faster with additional callback > module. > > > > > I too am confused. I use when() to include an entire task file > > or just do a task. And I could swear I have whens that looked like > > > > when: > > - variable-I-populated-or-registered-a-few-lines-ago.stdout == > > variable-I-populated-in-an-earlier-task-file-on-my-way-here.stdout > > > > > Kind regards > > > Luke > > > > > > > > > poniedziałek, 2 listopada 2020 o 13:57:43 UTC+1 [email protected] > napisał(a): > > >> > > >> On 11/2/20 1:49 PM, Luke C wrote: > > >> > Hey guys > > >> > > > >> > I would like to ask whether it's possible to SKIP task > programmatically, using python & callback module? > > >> > > > >> > I've been trying to do this for 3 days and I still don't know how. > > >> > Is there some special variable which I could use in > *v2_runner_on_start *or *v2_playbook_on_task_start* methods? > > >> > > > >> > I don't want to use ansible's when condition, task should be > omitted dynamically basing on the results gathered > > earlier. > > >> > > > >> > e.g.: > > >> > def v2_runner_on_start(self, host, task): > > >> > if self.checksomething(): > > >> > print("Task should be omitted") > > >> > <OMIT TASK, DO NOT RUN IT> > > >> > else: > > >> > print("Yes, task should be executed, proceed") > > >> > > > >> > > > >> > > >> Do you know that Ansible's when conditions can be very well based on > results gathered earlier? > > >> > > >> Regards > > >> Racke > > >> > > >> > > > >> > > > >> > -- > > >> > 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 view this discussion on the web visit > > >> > > https://groups.google.com/d/msgid/ansible-project/34e2ed5a-2fad-40cf-a852-f94af07fd096n%40googlegroups.com > > < > https://groups.google.com/d/msgid/ansible-project/34e2ed5a-2fad-40cf-a852-f94af07fd096n%40googlegroups.com > > > > >> > > > < > https://groups.google.com/d/msgid/ansible-project/34e2ed5a-2fad-40cf-a852-f94af07fd096n%40googlegroups.com?utm_medium=email&utm_source=footer > > < > https://groups.google.com/d/msgid/ansible-project/34e2ed5a-2fad-40cf-a852-f94af07fd096n%40googlegroups.com?utm_medium=email&utm_source=footer > >>. > > > > >> > > >> > > >> -- > > >> Ecommerce and Linux consulting + Perl and web application programming. > > >> Debian and Sympa administration. Provisioning with Ansible. > > > > > > -- > > > 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 view this discussion on the web visit > > > https://groups.google.com/d/msgid/ansible-project/f1b9d8c6-f367-4c75-b812-226a4eb7b82bn%40googlegroups.com > > < > https://groups.google.com/d/msgid/ansible-project/f1b9d8c6-f367-4c75-b812-226a4eb7b82bn%40googlegroups.com > >. > > > > -- > > 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 view this discussion on the web visit > > > https://groups.google.com/d/msgid/ansible-project/da81770a-1ca3-4211-8f4b-98184d55a404n%40googlegroups.com > > < > https://groups.google.com/d/msgid/ansible-project/da81770a-1ca3-4211-8f4b-98184d55a404n%40googlegroups.com?utm_medium=email&utm_source=footer > >. > > > -- > Ecommerce and Linux consulting + Perl and web application programming. > Debian and Sympa administration. Provisioning with Ansible. > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/2773b505-e9e8-4093-9055-80d1822c39c7n%40googlegroups.com.
