mirror of
https://github.com/hatchet-dev/hatchet.git
synced 2026-01-16 21:59:45 -06:00
* feat: add table, wire up partitioning * feat: wire failures into the OLAP db from rabbit * feat: bubble failures up to controller * fix: naming * fix: hack around enum type * fix: typo Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * fix: typos * fix: migration name * feat: log debug failure * feat: pub message from debug endpoint to log failure * fix: error handling * fix: use ingestor * fix: olap suffix * fix: pass source through * fix: dont log ingest failure * fix: rm debug as enum opt * chore: gen * Feat: Webhooks (#1978) * feat: migration + go gen * feat: non unique source name * feat: api types * fix: rm cruft * feat: initial api for webhooks * feat: handle encryption of incoming keys * fix: nil pointer errors * fix: import * feat: add endpoint for incoming webhooks * fix: naming * feat: start wiring up basic auth * feat: wire up cel event parsing * feat: implement authentication * fix: hack for plain text content * feat: add source to enum * feat: add source name enum * feat: db source name enum fix * fix: use source name enums * feat: nest sources * feat: first pass at stripe * fix: clean up source name passing * fix: use unique name for webhook * feat: populator test * fix: null values * fix: ordering * fix: rm unnecessary index * fix: validation * feat: validation on create * fix: lint * fix: naming * feat: wire triggering webhook name through to events table * feat: cleanup + python gen + e2e test for basic auth * feat: query to insert webhook validation errors * refactor: auth handler * fix: naming * refactor: validation errors, part II * feat: wire up writes through olap * fix: linting, fallthrough case * fix: validation * feat: tests for failure cases for basic auth * feat: expand tests * fix: correctly return 404 out of task getter * chore: generated stuff * fix: rm cruft * fix: longer sleep * debug: print name + events to logs * feat: limit to N * feat: add limit env var * debug: ci test * fix: apply namespaces to keys * fix: namespacing, part ii * fix: sdk config * fix: handle prefixing * feat: handle partitioning logic * chore: gen * feat: add webhook limit * feat: wire up limits * fix: gen * fix: reverse order of generic fallthrough * fix: comment for potential unexpected behavior * fix: add check constraints, improve error handling * chore: gen * chore: gen * fix: improve naming * feat: scaffold webhooks page * feat: sidebar * feat: first pass at page * feat: improve feedback on UI * feat: initial work on create modal * feat: change default to basic * fix: openapi spec discriminated union * fix: go side * feat: start wiring up placeholders for stripe and github * feat: pre-populated fields for Stripe + Github * feat: add name section * feat: copy improvements, show URL * feat: UI cleanup * fix: check if tenant populator errors * feat: add comments * chore: gen again * fix: default name * fix: styling * fix: improve stripe header processing * feat: docs, part 1 * fix: lint * fix: migration order * feat: implement rate limit per-webhook * feat: comment * feat: clean up docs * chore: gen * fix: migration versions * fix: olap naming * fix: partitions * chore: gen * feat: store webhook cel eval failures properly * fix: pk order * fix: auth tweaks, move fetches out of populator * fix: pgtype.Text instead of string pointer * chore: gen --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
82 lines
2.9 KiB
Python
82 lines
2.9 KiB
Python
from examples.affinity_workers.worker import affinity_worker_workflow
|
|
from examples.bulk_fanout.worker import bulk_child_wf, bulk_parent_wf
|
|
from examples.bulk_operations.worker import (
|
|
bulk_replay_test_1,
|
|
bulk_replay_test_2,
|
|
bulk_replay_test_3,
|
|
)
|
|
from examples.cancellation.worker import cancellation_workflow
|
|
from examples.concurrency_limit.worker import concurrency_limit_workflow
|
|
from examples.concurrency_limit_rr.worker import concurrency_limit_rr_workflow
|
|
from examples.concurrency_multiple_keys.worker import concurrency_multiple_keys_workflow
|
|
from examples.concurrency_workflow_level.worker import (
|
|
concurrency_workflow_level_workflow,
|
|
)
|
|
from examples.conditions.worker import task_condition_workflow
|
|
from examples.dag.worker import dag_workflow
|
|
from examples.dedupe.worker import dedupe_child_wf, dedupe_parent_wf
|
|
from examples.durable.worker import durable_workflow, wait_for_sleep_twice
|
|
from examples.events.worker import event_workflow
|
|
from examples.fanout.worker import child_wf, parent_wf
|
|
from examples.fanout_sync.worker import sync_fanout_child, sync_fanout_parent
|
|
from examples.lifespans.simple import lifespan, lifespan_task
|
|
from examples.logger.workflow import logging_workflow
|
|
from examples.non_retryable.worker import non_retryable_workflow
|
|
from examples.on_failure.worker import on_failure_wf, on_failure_wf_with_details
|
|
from examples.return_exceptions.worker import return_exceptions_task
|
|
from examples.simple.worker import simple, simple_durable
|
|
from examples.timeout.worker import refresh_timeout_wf, timeout_wf
|
|
from examples.webhooks.worker import webhook
|
|
from hatchet_sdk import Hatchet
|
|
|
|
hatchet = Hatchet(debug=True)
|
|
|
|
|
|
def main() -> None:
|
|
worker = hatchet.worker(
|
|
"e2e-test-worker",
|
|
slots=100,
|
|
workflows=[
|
|
affinity_worker_workflow,
|
|
bulk_child_wf,
|
|
bulk_parent_wf,
|
|
concurrency_limit_workflow,
|
|
concurrency_limit_rr_workflow,
|
|
concurrency_multiple_keys_workflow,
|
|
dag_workflow,
|
|
dedupe_child_wf,
|
|
dedupe_parent_wf,
|
|
durable_workflow,
|
|
child_wf,
|
|
event_workflow,
|
|
parent_wf,
|
|
on_failure_wf,
|
|
on_failure_wf_with_details,
|
|
logging_workflow,
|
|
timeout_wf,
|
|
refresh_timeout_wf,
|
|
task_condition_workflow,
|
|
cancellation_workflow,
|
|
sync_fanout_parent,
|
|
sync_fanout_child,
|
|
non_retryable_workflow,
|
|
concurrency_workflow_level_workflow,
|
|
lifespan_task,
|
|
simple,
|
|
simple_durable,
|
|
bulk_replay_test_1,
|
|
bulk_replay_test_2,
|
|
bulk_replay_test_3,
|
|
webhook,
|
|
return_exceptions_task,
|
|
wait_for_sleep_twice,
|
|
],
|
|
lifespan=lifespan,
|
|
)
|
|
|
|
worker.start()
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|