Terraform 1.14 shipped Actions, its biggest language change in years. An Action fires a provider operation when a resource gets created or updated or destroyed. That operation could be a Lambda invoke or a cache invalidation. The run-this-now work that used to hide in null_resource finally has a place to sit.

Then you ask what runs it, and the answer is nothing. No typed input, no retry, no timeout, no gate, no record it ran. An Action is a trigger with no executor, and every one of those gaps is that same missing piece.

Read the diagram by its empty column. They tie on the easy row. Everything under it is the executor Actions neglect.

chant makes a day-two step typed TypeScript that runs on Temporal. Retries and timeouts come with the step rather than a flag. So do human gates and the durable record. Go take a closer look.

Bring your own lifecycle. Just bring one that can finish the job.

Read more