dir = "."
shell.drop_priviledges(dir, options.log_file)
util.chdir(dir)
+ if os.path.exists(".scripts/blacklisted"):
+ raise BlacklistedError()
sh = shell.Shell()
util.set_git_env()
if options.continue_:
logging.warning("Upgrade failed: rolling back")
perform_restore(d, backup)
raise
- except deploy.WebVerificationError:
+ except deploy.WebVerificationError as e:
logging.warning("Web verification failed: rolling back")
+ logging.info("Web page that was output was:\n\n%s" % e.contents)
perform_restore(d, backup)
- raise app.UpgradeFailure("Upgrade caused website to become inaccessible; site was rolled back")
+ raise app.UpgradeVerificationFailure("Upgrade caused website to become inaccessible; site was rolled back")
# XXX: frob .htaccess to make site accessible
# to do this, check if .htaccess changed, first. Upgrade
# process might have frobbed it. Don't be
with git rerere to remember merge resolutions (XXX: not sure if
this actually works)."""
+class BlacklistedError(Error):
+ def __str__(self):
+ return """
+
+ERROR: This autoinstall was manually blacklisted against errors;
+if the user has not been notified of this, please send them
+mail."""