Differential D16497 Diff 39714 src/applications/files/management/PhabricatorFilesManagementMigrateWorkflow.php
Changeset View
Changeset View
Standalone View
Standalone View
src/applications/files/management/PhabricatorFilesManagementMigrateWorkflow.php
Show All 31 Lines | $this | ||||
'Do not migrate data for files which are larger than a given '. | 'Do not migrate data for files which are larger than a given '. | ||||
'filesize.'), | 'filesize.'), | ||||
), | ), | ||||
array( | array( | ||||
'name' => 'all', | 'name' => 'all', | ||||
'help' => pht('Migrate all files.'), | 'help' => pht('Migrate all files.'), | ||||
), | ), | ||||
array( | array( | ||||
'name' => 'copy', | |||||
'help' => pht( | |||||
'Copy file data instead of moving it: after migrating, do not '. | |||||
'remove the old data even if it is no longer referenced.'), | |||||
), | |||||
array( | |||||
'name' => 'names', | 'name' => 'names', | ||||
'wildcard' => true, | 'wildcard' => true, | ||||
), | ), | ||||
)); | )); | ||||
} | } | ||||
public function execute(PhutilArgumentParser $args) { | public function execute(PhutilArgumentParser $args) { | ||||
$target_key = $args->getArg('engine'); | $target_key = $args->getArg('engine'); | ||||
Show All 17 Lines | if (!$iterator) { | ||||
'--all')); | '--all')); | ||||
} | } | ||||
$is_dry_run = $args->getArg('dry-run'); | $is_dry_run = $args->getArg('dry-run'); | ||||
$min_size = (int)$args->getArg('min-size'); | $min_size = (int)$args->getArg('min-size'); | ||||
$max_size = (int)$args->getArg('max-size'); | $max_size = (int)$args->getArg('max-size'); | ||||
$is_copy = $args->getArg('copy'); | |||||
$failed = array(); | $failed = array(); | ||||
$engines = PhabricatorFileStorageEngine::loadAllEngines(); | $engines = PhabricatorFileStorageEngine::loadAllEngines(); | ||||
$total_bytes = 0; | $total_bytes = 0; | ||||
$total_files = 0; | $total_files = 0; | ||||
foreach ($iterator as $file) { | foreach ($iterator as $file) { | ||||
$monogram = $file->getMonogram(); | $monogram = $file->getMonogram(); | ||||
$engine_key = $file->getStorageEngine(); | $engine_key = $file->getStorageEngine(); | ||||
▲ Show 20 Lines • Show All 72 Lines • ▼ Show 20 Lines | foreach ($iterator as $file) { | ||||
$engine_key, | $engine_key, | ||||
$target_key)); | $target_key)); | ||||
} | } | ||||
try { | try { | ||||
if ($is_dry_run) { | if ($is_dry_run) { | ||||
// Do nothing, this is a dry run. | // Do nothing, this is a dry run. | ||||
} else { | } else { | ||||
$file->migrateToEngine($target_engine); | $file->migrateToEngine($target_engine, $is_copy); | ||||
} | } | ||||
$total_files += 1; | $total_files += 1; | ||||
$total_bytes += $byte_size; | $total_bytes += $byte_size; | ||||
echo tsprintf( | echo tsprintf( | ||||
"%s\n", | "%s\n", | ||||
pht('Done.')); | pht('Done.')); | ||||
▲ Show 20 Lines • Show All 44 Lines • Show Last 20 Lines |