Hi Alireza,

Other approach I can think of is database triggers (can impact performance
based on the jobs frequency).

Take a look at the async_job table's insert and update operations which are
performed on creating a new job (job status 0) and updated when job is
complete with non-zero job status (1 - success, 2 - failed, 3 - cancelled)
respectively.

https://dev.mysql.com/doc/refman/5.6/en/faqs-triggers.html  [a trigger
could invoke the sys_exec() UDF.]

Some ref for sys_exec UDF implementation below =>
http://kedar.nitty-witty.com/blog/tag/sys_exec
http://bernardodamele.blogspot.com/2009/01/command-execution-with-mysql-udf.html

- Suresh

On Sat, Feb 23, 2019 at 2:05 AM Alireza Eskandari <astro.alir...@gmail.com>
wrote:

> Async jobs is not my concern.
> Imagine that you have a firewall that is not integrated with CS and you
> want to insert new roles in it each time a new VM is created.
> In this case you need a hook that triggers an external script to configure
> the firewall.
> Pulling is time and resource consuming and its effect is not instant.
>
> On Fri, Feb 22, 2019 at 8:02 PM Anurag Awasthi <
> anurag.awas...@shapeblue.com>
> wrote:
>
> > Hi Alireza,
> >
> > Could you elaborate a more on the use case you have in mind? The
> > description you mention is very generic.
> >
> > As far as I know we need to use polling to track the status of any async
> > job (which is another API call) and execute based on response. That seems
> > to be foundation principle behind all async calls. Alternately, you can
> > also use CloudMonkey (
> >
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/CloudStack+cloudmonkey+CLI
> )
> > as a framework or dig a little into code there to implement a similar
> > solution to execute hooks.
> >
> > Regards,
> > Anurag
> >
> > On 2/22/19, 6:22 PM, "Alireza Eskandari" <astro.alir...@gmail.com>
> wrote:
> >
> >     Hi,
> >     I'm looking for a solution to implement hooks or callbacks for
> > CloudStack
> >     API.
> >     For example execute an script when user calls deployVirtualMachine
> API.
> >     This script could be executed right after user submit his request or
> > after
> >     the request completed successfully or failed.
> >     Maybe some API management solution could help me but the problem is
> >     understanding CS asyncjobs and their status.
> >     Thanks
> >
> >
> >
> > anurag.awas...@shapeblue.com
> > www.shapeblue.com
> > Amadeus House, Floral Street, London  WC2E 9DPUK
> > @shapeblue
> >
> >
> >
> >
>

Reply via email to