Check Dependencies Before Deploying Any Changes #39

Closed
theory opened this Issue Aug 20, 2012 · 4 comments

Projects

None yet

1 participant

@theory
Owner
theory commented Aug 20, 2012

Currently during sqitch deploy, Sqitch checks the dependencies (requires and conflicts) for each change before it is deployed. The downside is that one could get halfway through a deploy before a deployment fails and triggers a reversion. Better would be to validate the dependencies of all changes to be deployed before deploying any of them. That way, it can fail early, letting the user know what's missing (or conflicting) before making any changes to the database. The same early detection should be applied on reversion (#36), as well.

@theory theory was assigned Nov 14, 2012
@theory
Owner
theory commented Nov 20, 2012

It's important to also check for cycles between projects.

@theory
Owner
theory commented Dec 21, 2012

Done for deploy in b7ec1ac.

Done for revert in 23f802d.

Still need to think about cycles.

@theory
Owner
theory commented Dec 21, 2012

Realize that cycles are impossible, but we should makes sure that a change cannot be deployed twice. It will fail due to a PK violation, but we should check for that before deploying.

@theory
Owner
theory commented Dec 22, 2012

Checked to make sure that none are already deployed before deploying any in df6d0bc. Should check_revert_dependencies also make sure that all can be reverted? I'm kind of thinking not.

@theory theory closed this Dec 22, 2012
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment