openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Thomas <ja...@jamesthom.as>
Subject Feed Provider API v2?
Date Thu, 19 Oct 2017 14:39:35 GMT
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

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