// We must create the file first or deployFile() will abort; this is
// ugly because deployFile() already performs an atomic replacement
// but the simplest solution with the least duplicate code
// We must create the file first or deployFile() will abort; this is
// ugly because deployFile() already performs an atomic replacement
// but the simplest solution with the least duplicate code