...
Install Ruby 3.2.x
Update gems, and migrate DB
Code Block bundle install --with production --without development test RAILS_ENV=production bundle exec rake db:migrate
Install node.js 20.x (if needed)
Update JS dependencies
Code Block yarn install # in Avalon root dir
Update configuration, see Config changes above
Restart passenger (if using)
Code Block passenger-config restart-app
Install Solr 9 (optional)
Make backup of existing Solr using instructions on https://samvera.atlassian.net/wiki/spaces/AVALON/pages/2303328775/Backing+up+and+restoring+supporting+services#Solr
Setup Solr 9 in the same location as previous Solr
Or a new location and update config files (solr.yml and blacklight.yml) (safest approach)
Or the same location as previous Solr and clear it out
Run reindex
First download the latest version of the reindex script toscript/reindex.rb
then run:Code Block RAILS_ENV=production nohup bundle exec rails r script/reindex.rb -v --parallel-indexing
Run rake migrations
Code Block RAILS_ENV=production bundle exec rake avalon:migrate:collection_managers RAILS_ENV=production bundle exec rake avalon:migrate:caption_files
...
Stop Avalon
Code Block docker-compose down
Backup solr data using instructions on https://samvera.atlassian.net/wiki/spaces/AVALON/pages/2303328775/Backing+up+and+restoring+supporting+services#Solr
Update new code from avalon-docker
Code Block git checkout main git pull
Pull new images
Code Block docker-compose pull avalon solr
Check config changes then restart the Avalon containers
Code Block docker-compose up avalon worker
Run reindex (inside avalon container)
First download the latest version of the reindex script toscript/reindex.rb
then run:Code Block RAILS_ENV=production nohup bundle exec rails r script/reindex.rb -v --parallel-indexing
Run rake migrations (inside avalon container)
Code Block RAILS_ENV=production bundle exec rake avalon:migrate:collection_managers RAILS_ENV=production bundle exec rake avalon:migrate:caption_files
...