Skip to content

Support CRON-style repeat execution with polling periods/splay #81

@erichs

Description

@erichs

Starbase config.yaml integrations configuration should support an optional minMinutesBetweenExecutions parameter, as well as a global splayMins parameter.

  • if splayMins is set, Starbase should sleep for a random period, up to the specified value in minutes, before beginning execution. This helps with stampeding herd issues for large installations, similar to this issue.
  • if minMinutesBetweenExecutions is set, Starbase should consult the .integrations folder for the given integration. If it exists AND a previous execution time was recorded AND the specified value in minutes has not yet elapsed, Starbase should skip the integration run. When Starbase kicks off an integration, it should record the current time in a known location in the .integrations folder. This mechanism allows for a configurable polling period, allowing Starbase to execute via CRON more frequently while still enforcing dwell times between integration runs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions