-
Notifications
You must be signed in to change notification settings - Fork 35
Open
Description
- Some steps are more likely to take longer than others
- Some steps make others unnecessary if they fail (e.g. if the update can't be downloaded or extracted)
e.g.
- checkForExpectedFilesAndFolders()
- checkWritePermissions()
- downloadUpdate()
- verifyIntegrity()
- extractDownload()
- createBackup() <---- moves here from step 3
- setMaintenanceMode()
- replaceEntryPoints()
- deleteOldFiles()
- moveNewVersionInPlace()
- setMaintenanceMode
- finalize
The current order is as follows:
Lines 1335 to 1372 in 4d660d8
switch ($step) { | |
case 1: | |
$updater->checkForExpectedFilesAndFolders(); | |
break; | |
case 2: | |
$updater->checkWritePermissions(); | |
break; | |
case 3: | |
$updater->createBackup(); | |
break; | |
case 4: | |
$updater->downloadUpdate(); | |
break; | |
case 5: | |
$updater->verifyIntegrity(); | |
break; | |
case 6: | |
$updater->extractDownload(); | |
break; | |
case 7: | |
$updater->setMaintenanceMode(true); | |
break; | |
case 8: | |
$updater->replaceEntryPoints(); | |
break; | |
case 9: | |
$updater->deleteOldFiles(); | |
break; | |
case 10: | |
$updater->moveNewVersionInPlace(); | |
break; | |
case 11: | |
$updater->setMaintenanceMode(false); | |
break; | |
case 12: | |
$updater->finalize(); | |
break; | |
} |
Other considerations:
- maintenance mode / end-users hitting the server
- entrypoint replacement timing