I work on API team that creates the APIs for consuming applications and my project demands 2 tickets each functionality.
1. Work ready to be "deployed to STAGE" - DoD is when it passes STAGE testing on API Side - (This ticket is created for Sprint-1)
2. Integration Testing on STAGE - DoD is when it passes Integration Testing on consuming applications side. - (This ticket is created for Sprint-2/future Sprint)
Note: Not all consuming applications have same schedule as our sprint. Hence we had to divide the tickets into 2,
We push tickets to production only when Integration testing is complete. We are stuck at the work flow for "deployed to STAGE" tickets. We cannot close the sprint without pushing the tickets to production. What do we do? How do I close the sprint?
You can’t. You’ve designed fake Sprints which do not satisfy a release-quality Definition of Done.
Each Sprint time-box will nevertheless end regardless. Any items which do not meet the Definition of Done may then be re-estimated on the Product Backlog to show the amount of work believed to remain, including any integration work.
My advice though is to rethink how you are implementing Scrum, and particularly with regard to how external dependencies ought to be challenged.