Add a script to migrate files between storage engines

Summary: Quora requested this (moving to S3) but it's also clearly a good idea.

Test Plan:
Ran with various valid/invalid options to test options. Error/sanity checking seemed OK.

Migrated individual local files.

Migrated all my local files back and forth between engines several times.

Uploaded some new files.

Reviewers: btrahan, vrana

Reviewed By: vrana

CC: aran

Maniphest Tasks: T1950

Differential Revision: https://secure.phabricator.com/D3808
This commit is contained in:
epriestley
2012-10-25 11:36:38 -07:00
parent 92a2866fb2
commit 5d1bd51627
8 changed files with 375 additions and 30 deletions

View File

@@ -80,6 +80,22 @@ Technical Documentation}.
You can test that things are correctly configured by going to the Files
application (##/file/##) and uploading files.
= Migrating Files Beteeen Engines =
If you want to move files between storage engines, you can use the `bin/files`
script to perform migrations. For example, suppose you previously used MySQL but
recently set up S3 and want to migrate all your files there. First, migrate one
file to make sure things work:
phabricator/ $ ./bin/files migrate --engine amazon-s3 F12345
If that works properly, you can then migrate everything:
phabricator/ $ ./bin/files migrate --engine amazon-s3 --all
You can use `--dry-run` to show which migrations would be performed without
taking any action. Run `bin/files help` for more options and information.
= Next Steps =
Continue by: