AshPaperPlane.EnqueueObanJob (ash_paper_plane v0.1.0)

Copy Markdown View Source

Ash change that enqueues an Oban job for the record the action created.

The insert runs in an after_action hook. Where the data layer opens a transaction on the repo Oban is configured with, the insert rides that transaction. A job cannot then exist for a record that rolled back, and a record cannot commit while its job is lost.

Both conditions are the application's to meet. A data layer that opens no transaction, or an Oban pointed at a different repo, still enqueues the job, with no guarantee tying the two together.

Options

  • :worker: the Oban worker module the job is built for.
  • :attributes: the record attributes to pass as the job's arguments.