Plugins¶
Plugins¶
This package contains the various built-in plugins available for Chancy. Plugins are used to extend the functionality of Chancy, while allowing for significant customization.
Chancy comes with several built-in plugins:
chancy.plugins.leadership.Leadership
: This plugin is responsible formanaging leadership elections between multiple workers. Most other plugins require this plugin to be enabled.
chancy.plugins.pruner.Pruner
: This plugin is responsible for pruningold jobs from the database when they are no longer needed.
chancy.plugins.recovery.Recovery
: This plugin is responsible forrecovering jobs that were interrupted during execution, such as when a worker crashes or is restarted.
chancy.plugins.cron.Cron
: This plugin is responsible for schedulingjobs to run at recurring schedules.
chancy.plugins.api.Api
: This plugin provides an API and dashboardfor viewing the state of the Chancy cluster.
chancy.plugins.workflow.WorkflowPlugin
: This plugin provides aworkflow system for managing complex job dependencies.
chancy.plugins.retry.RetryPlugin
: This plugin provides a slightlymore advanced job retry system with jitter, backoff, and other features.
chancy.plugins.reprioritize.Reprioritize
: This plugin increasesthe priority of jobs based on how long they’ve been in the queue.
chancy.plugins.sentry.SentryPlugin
: This plugin sends job exceptionsto Sentry, along with metadata about the job and worker.
Submodules¶
- Leadership
- Pruner
- Recovery
- Cron
- API/Dashboard
- Workflows
WorkflowPlugin
WorkflowPlugin.Rules
WorkflowPlugin.api_plugin()
WorkflowPlugin.cleanup()
WorkflowPlugin.fetch_workflow()
WorkflowPlugin.fetch_workflows()
WorkflowPlugin.generate_dot()
WorkflowPlugin.get_scope()
WorkflowPlugin.migrate_key()
WorkflowPlugin.migrate_package()
WorkflowPlugin.process_workflow()
WorkflowPlugin.push()
WorkflowPlugin.run()
WorkflowPlugin.wait_for_workflow()
Workflow
WorkflowStep
Sequence
WorkflowApiPlugin
- Retry
- Reprioritization
- Sentry