This documentation is a work in progress.
Migrate Config Files
- config/authentication.yml – has a new structure with a different section for each rails environment. Edit your authentication particulars to incorporate this new structure. An example is found in config/authentication.yml.example.
- config/controlled_vocabulary.yml – should be copied from R5 to R6 to support data migrations
Dump r5 database (mysql on pawpaw)
mysqldump -u avalonweb -p avalonweb -no-create-info --complete-insert --tables annotations api_tokens bookmarks courses identities ingest_batches playlist_items playlists role_maps users > /tmp/avalon.r5.dump.sql
Load to r6 database (sqlite locally)
Sqllite3 doesn't like mysql dump files so a transformation script needs to be run on it. Download https://raw.githubusercontent.com/dumblob/mysql2sqlite/master/mysql2sqlite, make it executable, and run it on the dump file.
g = Admin::Group.find('administrator') g.users += ["firstname.lastname@example.org"] g.save!
Migrate Fedora Objects
SSH tunnel or open up your fedora3 server to your new Avalon app:
keep the ssh mirror running in another tab as you do the next steps.
Setup config/fedora3.yml in your Avalon 6 app
The fedora3.yml should work without change, but if you do have trouble, here's an example fedora3.yml for the avalon demo server.
After this command is finished, look through the report and see which items have failed and troubleshoot using the errors listed.
Migrate Database Tables
# Run script to map fedora 3 pids in database to newly minted fedora 4 noids bundle exec rake avalon:migrate:db
Delete Failed Bookmarks
#This will delete any bookmarks that point to failed items bundle exec rake avalon:migrate:bookmark_cleanup