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. 

???


Migrate Database

Dump r5 database (mysql on pawpaw)

mysqldump -u avalonweb -p avalonweb -no-create-info --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.

chmod +x mysql2sqlite
./mysql2sqlite avalon.r5.dump.sql > avalon.r5.dump.sqlite
bundle exec rake avalon:wipeout  # ensure that Fedora, Solr, and the DB are clean
bundle exec rails dbconsole 
sqlite> .read /tmp/avalon.r5.dump.sqlite

Migrate Fedora Objects

# SSH tunnel or open up your fedora3 server to your new Avalon app: ssh -L 9999:localhost:8983 user@fedora3.host
# Setup config/fedora3.yml in your Avalon 6 app (url will be http://localhost:9999/fedora)
bundle exec rake avalon:migrate:repo
#Review output and fix/rerun it


Migrate Database Tables

# Run script to map fedora 3 pids in database to newly minted fedora 4 noids
bundle exec rake avalon:migrate:db