cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dag Sonstebo <Dag.Sonst...@shapeblue.com>
Subject Re: hook or callback for CloudStack API
Date Mon, 25 Feb 2019 09:01:31 GMT
Alireza - which hypervisor do you use? If you use KVM you can use libvirt hooks - https://libvirt.org/hooks.html.

Regards,
Dag Sonstebo
Cloud Architect
ShapeBlue
 

On 23/02/2019, 15:27, "Suresh Kumar Anaparti" <sureshkumar.anaparti@gmail.com> wrote:

    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.alireza@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.Awasthi@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.alireza@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.Awasthi@shapeblue.com
    > > www.shapeblue.com
    > > Amadeus House, Floral Street, London  WC2E 9DPUK
    > > @shapeblue
    > >
    > >
    > >
    > >
    >
    


Dag.Sonstebo@shapeblue.com 
www.shapeblue.com
Amadeus House, Floral Street, London  WC2E 9DPUK
@shapeblue
  
 

Mime
View raw message