Choose pulumi or plunge
llms.txtlists every page for an agent
Stock Pulumi is the default, and init never picks plunge on its own. A stack runs plunge when plywood.yml says engine: plunge, or when its backend URL starts with plunge+. With neither, chant reads PULUMI_BACKEND_URL and Pulumi.yaml. plywood init --engine plunge gives each stack on a bucket or file backend the plunge+ form of the same URL.
| Pulumi | plunge | |
|---|---|---|
| State | one checkpoint per stack in your backend | one record per resource in your bucket |
| Lock on update | the backend’s stack lock | none: each record write is conditional |
up applies |
a fresh preview, checked against the approved one | the saved plan from the preview job |
| Drift | pulumi refresh --preview-only |
plunge drift --resource <urn> |
| CI image | plywood-pulumi |
plywood-plunge |
| Version pin | pulumi: in plywood.yml |
plunge: in plywood.yml |
Every stage runs stock Pulumi at the release pulumi: pins (the image’s when unset), with your own plugins.
plunge is the Pulumi fork from the team behind plywood. It runs the same programs and providers. With plunge, the pipeline also gets:
| You get | Where you see it |
|---|---|
| Updates to different resources of one stack, side by side | Locking and staleness |
| A saved plan stamped with each record’s version | the up stage in Stages |
| Drift of one resource, with no program run | Turn on drift checks |