rollback, go back to Manifest module for more information.
Rolls back each operation in case of failure.
Manifest.Step.t/0 that ran previous to the point of failure, defines
Manifest.Step.rollback/0 in the manifest, and didn't receive a
in tuple that the step's
Manifest.Step.work/0 returned, will be rolled back
in reverse from the order the steps were performed. If any of the rollbacks fail,
it stops attempting to roll back and returns an
:error tuple. The error
tuple has the
Manifest.Step.operation/0 where it failed as it's second
element, the reason as the third, and a map containing the results of all the
successful roll backs up to that point.
You can also call
rollback/1 on a completely successful Manifest.