Warning |
---|
This is a work in progress in preparation for upcoming Avalon 7 release |
See the Avalon 7.0 Release Notes for more information.
...
Code Block |
---|
|
rvm list # Get current ruby version, eg 2.2.1
rvm upgrade 2.2.1 2.5.75 # Installs Ruby 2.5.75 and migrate gemsets, wrappers, aliases and environment files |
Avalon uses ImageMagick to crop the Collection poster
Code Block |
---|
|
yum install ImageMagick |
Anchor |
---|
| configchanges |
---|
| configchanges |
---|
|
Config changesOld setting | New setting | Note |
---|
matterhorn:
media_path: /path/to/dir
| encoding:
working_file_path: /path/to/dir
| More information |
| home_page:
featured_collections: ['col1_id', 'col2_id'] carousel_collections: ['col3_id', 'col4_id', 'col5_id']
| Choose which collections to display in the featured and carousel portions of the new homepage. More information on customizing the UI |
Ingest API Authorization changes
Changes were made to the authorization mechanism for the Avalon Ingest API in Avalon 7.0. In previous versions, user sessions authenticated with an API token were granted admin user access. In version 7.0 and later, user sessions authenticated with an API token will be granted the same access as the token's associated user. The means that when upgrading to Avalon 7.0, any API tokens in use must be checked to ensure that their associated users have the necessary permissions to perform API functions.
Upgrade Steps
For Manual Installations
...
Code Block |
---|
|
gem install bundler -v 2.0.2
bundle install --with production --without development test
RAILS_ENV=production bundle exec rake db:migrate |
3. Install yarn and update Update JS dependencies
Code Block |
---|
|
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install nodejs # Tested with Node.js version 10
sudo yum install yarn yarn install # in Avalon root dir |
3. Copy rightsstatement.org controlled vocabulary from config/controlled_vocabulary.yml.example into config/controlled_vocabulary.yml
4. Update configuration, see Config changes above
5. Restart passenger (if using)
Code Block |
---|
|
passenger-config restart-app |
5. Upgrade Redis and Restart Resque 6. Replace Resque with Sidekiq (background jobs processor). Look at our Manual Instructions for more details.
Code Block |
---|
|
sudo yum upgrade redis # Version 3.0+
sudo service redis restart
pkill -f resque
RAILS_ENV=production BACKGROUND=yes bundle exec rake resque:scheduler
RAILS_ENV=production BACKGROUND=yes QUEUE=* bundle exec rake resque:work |
6. Upgrade ffmpeg (version 4+). You can either download a prebuilt binary
Code Block |
---|
|
mkdir -p /tmp/ffmpeg && cd /tmp/ffmpeg
curl https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz | tar xJ
sudo cp `find . -type f -executable` /usr/bin |
...
sidekiq -d -C config/sidekiq.yml |
7. Upgrade mediainfo
Code Block |
---|
|
sudo yum remove libmediainfo0-0.7.61-1.x86_64 libzen0-0.4.28-1.x86_64
sudo yum remove mediainfo
sudo yum install mediainfo libmediainfo libzen # Choose 19+ version |
...
Code Block |
---|
|
RAILS_ENV=production bundle exec rails r script/waveform_backfill.rb |
...
For Docker Installations
Stop Matterhorn
Code Block |
---|
|
timeliner:
timeliner_url: https://<hostname>/timeliner |
For Docker Installations
|
docker-compose stop matterhorn |
Update new code from avalon-docker
Code Block |
---|
|
git checkout master
git pull |
Pull or Rebuild and replace Avalon container.
Code Block |
---|
|
docker-compose pull avalon
# or docker-compose build --no-cache avalon
|
Check config changes then replace the Avalon container
Code Block |
---|
|
docker-compose stopup avalon docker-compose up avalonworker |