openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Thomas <jthomas...@gmail.com>
Subject Re: Feed Provider API v2?
Date Mon, 23 Oct 2017 15:44:24 GMT
It's good to see parts of this are already being implemented.

What about the "max triggers" issues that were raised?

It will be important to properly document the changes to the API to allow
other people to implement providers.



On 20 October 2017 at 23:52, Carlos Santana <csantana23@gmail.com> wrote:

> Hi James
>
> Me and Adnan [1] from my team started to look into this last week.
>
> He implemented the lifecycle "READ" in the kafka feed action,
> The feed action will be invoke in the similar manner as "CREATE" and
> "DELETE" but only requiring the `auth` to be pass and of course the
> `lifecycleEvent: READ` and the triggerName
> You can see it here
> https://github.com/apache/incubator-openwhisk-package-
> kafka/blob/master/action/messageHubFeed.js#L23
> The PR that introduce this is here:
> https://github.com/apache/incubator-openwhisk-package-kafka/pull/217/files
>
> if you have the kafka setup locally you can test it via invoking the action
> directly
>
> But we want to provide this in the CLI also, so when you do a "wsk trigger
> get mykafkatrigger" it will detect the annotation and do an extra request
> to get the trigger info from the the provider.
>
> He was going to do same API for alarms, and cloudant trigger to implement
> the "READ" lifecycle
> And then look for someone that knows the go CLI code to add the the extra
> request to "trigger get"
>
> Probably we need to doc this lifecycle in the feed.md
>
> For the update the thinking is to use the same design.
> To use a lifecycle "UPDATE" to the feed action to change the configuration
>
> Also there is a need when an api key is revoke, to tell the feed provider
> to update replace all the trigger with the old key, and use the new key
>
> [1]: https://github.com/abaruni
>
>
>
> On Thu, Oct 19, 2017 at 10:39 AM James Thomas <james@jamesthom.as> wrote:
>
> > Users are running into limitations of the current feed provider API.
> Could
> > we collect requirements, potentials solutions and work on an update to
> the
> > API to support some of the new features?
> >
> > Looking back through the Github issues, I've tried to capture high-level
> > requirements and solutions that have already been identified, included
> > below.
> >
> > *Requirements*
> >
> > ** Support retrieving state about triggers registered with provider*
> >
> > This is the most common requirement. Feed providers only support
> > "CREATE/DELETE" operations. Users want to be able to retrieve current
> state
> > of triggers from the provider. For example, this would allow people to
> > number of triggers left to fire when maxTriggers is defined.
> >
> > Related issues:
> > https://github.com/apache/incubator-openwhisk/issues/1925
> > https://github.com/apache/incubator-openwhisk/issues/1398
> >
> > https://github.com/apache/incubator-openwhisk-package-
> alarms/issues/86#issuecomment-325204467
> > https://github.com/apache/incubator-openwhisk/issues/471
> >
> > ** Add "delete trigger after max" option to enable auto-removing triggers
> > that won't be fired anymore. *
> >
> > Numerous feeds now support a "maxTriggers" to limit the number of trigger
> > activations. What happens once this limit has been reached? There's been
> > discussion about removing "dangling" triggers versus disabling and how to
> > surface this to the user. Should this option be baked into the API?
> >
> > This is relevant for an update to the "alarm" package to support
> "one-off"
> > triggers.
> > Related issues:
> > https://github.com/apache/incubator-openwhisk-package-alarms/issues/89
> >
> > https://github.com/apache/incubator-openwhisk-package-
> alarms/issues/86#issuecomment-325204467
> >
> > ** Add support for updating feeds?*
> >
> > As the API only supports "create and "delete" operations, what happens
> when
> > someone needs to update a trigger feed, e.g. updating cron schedule for
> > alarm package. This behaviour will left be left to the feed provider to
> > define. Having to "delete then re-create" creates the potential for lost
> > events.
> >
> > Related issues:
> > https://github.com/apache/incubator-openwhisk/issues/1925
> >
> > *What other requirements do people have?*
> >
> > *Potential Solutions*
> >
> > ** Extend provider API with new operations.*
> >
> > Add support for STATUS and UPDATE operations in addition to CREATE and
> > DELETE.
> > https://github.com/apache/incubator-openwhisk/issues/1925
> >
> > * *Add "health" or "status" action to feed packages*
> >
> > Would handle returning status for user registered triggers.
> >
> > https://github.com/apache/incubator-openwhisk/issues/
> 1925#issuecomment-297727773
> >
> > *Next Steps*
> >
> > ** Gather more requirements/solutions*
> >
> > Hopefully people can do this on the mailing to come up with other
> > requirements and solutions to enhance the feed provider API.
> >
> > ** Define a more feed provider API spec?*
> >
> > Existing documentation for the feed provider API is very short and
> > informal. Would it be helpful to have a more official document as we move
> > to a broader API? This would hopefully encourage others to create new
> feed
> > providers.
> >
> > https://github.com/apache/incubator-openwhisk/blob/master/docs/feeds.md#
> implementing-feed-actions
> >
> > ** Update existing feed providers to support new features*
> >
> > If we can agree on an extended feed provider API, the existing packages
> can
> > be reviewed for updating where relevant.
> >
> > Hopefully this message can spark some discussion, feeds are a really
> > important part of the openwhisk platform. I'm happy to also introduce
> this
> > on the video call next week?
> >
> > --
> > Regards,
> > James Thomas
> >
>



-- 
Regards,
James Thomas

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message