Handle ctrl-C in publish-ftpmaster

Bug #819674 reported by Jeroen T. Vermeulen
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Launchpad itself
Fix Released
Low
Jeroen T. Vermeulen

Bug Description

The new python-based publish-ftpmaster handles exceptions by restoring the backup copy of the archive directory. It should do the same on ctrl-C.

Related branches

Revision history for this message
Jeroen T. Vermeulen (jtv) wrote :

Actually, I've described the old script. The new script is simpler, and may not need any special handling since it does its work in the backup dists directory, not the "real" dists directory, and only moves the updated data into place once it has succeeded.

Revision history for this message
Jeroen T. Vermeulen (jtv) wrote :

Phew. Looks like this isn't much of a problem after all. The backup dir gets moved to its working location for processing, and finally gets promoted to the "real" directory once done. If an Exception is caught along the way, it gets kicked back to the backup location. Or if a KeyboardInterrupt occurs along the way, it stays in the working location and the next script run will kick it back to the backup location.

It would be slightly nicer to have this taken care of upon KeyboardInterrupt as well, so people don't wonder where the backup dists dir went. But no biggie.

Changed in launchpad:
importance: High → Low
Revision history for this message
Jeroen T. Vermeulen (jtv) wrote :

And even better: the "except:" that the code uses still catches KeyboardInterrupt, despite it not being an Exception any more.

I'm proposing some extra tests just so we don't accidentally break this.

Revision history for this message
Launchpad QA Bot (lpqabot) wrote :
tags: added: qa-needstesting
Changed in launchpad:
status: In Progress → Fix Committed
William Grant (wgrant)
tags: added: qa-untestable
removed: qa-needstesting
William Grant (wgrant)
Changed in launchpad:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.