Always execute JobC when JobA and JobB (if in schedule) are done
During Tidal conversion we called this requirement “branching”. It was recommended by Tidal Professional services to accomplish branching via events/actions that would react to the exit code (event) and insert JobB (corresponding job action). The missing piece now is how to maintain proper dependencies downstream from the “branched” job, i.e. how to make sure JobC does not execute until JobB completes.
The way we implemented this is by adding an event to JobA that is triggered by exit code 1 and - if/when triggered - called action for JobB to be inserted.
JobB itself does not have a schedule and can only be inserted by a job action
JobC depends on both JobA and JobB (JobB dependency marked as "ignore if not in schedule").
The issue is that sometimes dependency on JobB is ignored even though it has been inserted and hence JobC starts prematurely.
I have been told that this will not work as the schedule is compiled ahead of time and the ad hoc job (JobB which does not have a calendar) will not be in schedule and hence will always be ignored.
Indeed in activity view for the future dates the dependency is not visible.
However, for many such sequences the activity view for the past dates will show the dependency just fine - but not always.
This to me is a kind of undeterministic behavior.
My thinking is that perhaps Tidal may not have enough time to consider the dependency before the JobC is triggered (as if consequences of JobB insertion were processed in parallel - on a parallel thread - to the main thread that inserts JobC). But I'm hesitant to be introducing arbitrary timers or additional variables and variable events/dependencies.
Its working for us now, case closed. As soon as I changed dependencies from match group to last occurrence in the "problem" jobs, they all started recognizing these dependencies (on dynamically inserted jobs) just fine.
I am sure variable based solution would have worked as well - just was reluctant to refactor and introduce more events/variables where it already seems like it should be working.
Hi,There was a leaf Switch live in our fabric which was having some issues . We got an RMA for it and replaced the new leaf Switch with the same Node ID. After replacement we are unable to SSH the new leaf Switch from APIC .getting some error for RSA keys...
Hi, I am trying to create multiple subnets in one bridge domain using postman for ACI automation. I want to know if there is a document specific to the automation mentioned above. Can someone help me with this please. I am using global variables for ...
Bridge the gap between infrastructure and applications with Cisco Hyperflex Application Platform and Intersight Workload Optimizer.
Hyperflex Application Platform (HXAP)
See Hyperflex in Action
Cisco listens to the business needs of cu...
I have ip flapping issue in cisco ACI environmentas the topology:I found that when icmp reply from 220.127.116.11 to 18.104.22.168,these icmp reply packets will be sent to SW13 and SW14 at the same time,the icmp reply packets which sent to SW13 with S-I...
There is a Global ACI option (SYSTEM > SYSTEM SETTINGS >> Fabric Wide Setting | Enforce Domain Validation) that forces ACI to check that an EPG is linked to a Domain. The Cisco Application Centric Infrastructure Design Guide White Paper ...