Skip to content

Transactional Tasks and Checks for atomic actions

To be able to have atomic actions (e.g. add a set of packages to a repository), which can be reverted if it fails halfway, all of its steps (aka. Tasks) must be revertible.

We need a framework in which repod is able to work on its actions, while allowing us to retain a before and after state, to easily revert faulty Tasks. In this context Checks are supposed to help Tasks to evaluate whether they should be run at all (pre checks) or whether they were successful (post checks).

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information