Guys, you have agree to integration style that keeps two potential solutions, Hive/Spring, leaves final decision to users. I'm fine on this agreement.
but do you have comprehensive design schema, I think the topic discussion is not closing in jira, we should keep in same page about event/message/sync/async details. thanks ________________________________ From: William Guo <[email protected]> Sent: Monday, October 22, 2018 8:26 AM To: [email protected] Subject: Re: Hooks support in JobService Sounds good to me. You can implement your preferred hive-style, I can implement spring integration based on your interface. William On Mon, Oct 22, 2018 at 2:10 AM Nick Sokolov <[email protected]> wrote: > Hi William, > > Totally agree on keeping interface as abstract as possible. Interfaces feel > like natural solution here. > It should be relatively easy to provide spring integration implementation > of hook interface. > Probably we can even have default spring integration hook provided as an > example. > > On Sun, Oct 21, 2018 at 6:33 AM William Guo <[email protected]> wrote: > > > hi Nick, > > > > I agree with you we need to have some lifecycle hooks for jobs. > > > > No matter which extension mechanism we choose at runtime, > > but we can always abstract common lifecycle interfaces, and implements > > different solutions for different environments. > > > > Say, at runtime someone can configure griffin extension mechanism as > > 'Hive-style' and others can configure as spring integration model. > > > > We cannot decide which one is super than other, but we can implement > > multiply solutions and let users decide at deployment time? > > > > What do you think? > > > > Thanks, > > William > > > > > > > > On Fri, Oct 19, 2018 at 2:03 PM Nick Sokolov <[email protected]> > wrote: > > > > > Hi all, > > > > > > I'd like invite the community to discussion of Job object lifecycle > hooks > > > design (GRIFFIN-200 <https://issues.apache.org/jira/browse/GRIFFIN-200 > > >). > > > > > > On a high level, idea is to have hooks executed triggered by JobService > > > before/after job is created, or before/after job is deleted, and so on. > > > Main point is to provide extension mechanism for JobService, allowing > > > third-party implementations of following features: > > > > > > - validating naming conventions on the jobs > > > - validating cron schedules (whether job is scheduled "not too > > > frequently") > > > - creating dashboards for each new job and/or alerts in third-party > > > system (Grafana, Elastalert) > > > - RBAC implementation (Hive-style, as plugin) > > > - disabling alerts in third-party system if job is paused > > > > > > Right now several aspects are to be decided: > > > > > > 1. particular extention mehanism (POJO interface implementations > > > ("Hive-style"), or Spring-Integration, etc) > > > 2. whether only one or multiple hooks could be configured at same > time > > > 3. execution model: whether they should run synchronously, or > > > asynchronously; sequentially, or in parallel > > > > > > Ticket already has some discussion going, so inviting everyone to Jira > > > ticket, to avoid having same conversation in two places. > > > > > >
