Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Upgrade Steps

For Manual Installations

  1. Download and deploy new code from the avalon repository.
  2. Upgrade to bundler 2, update gems, and DB
Code Block
languagebash
gem install bundler
bundle install
RAILS_ENV=production bundle exec rake db:migrate

3. Install yarn and update JS dependencies

Code Block
languagebash
curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install yarn
yarn install # in Avalon root dir

4. Restart passenger (if using)

Code Block
languagebash
passenger-config restart-app

5. Restart Resque (background jobs processor)

Code Block
languagebash
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

...

. You can either download a prebuilt binary

Code Block
languagebash
mkdir -p /tmp/ffmpeg && cd /tmp/ffmpeg
curl https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz | tar xJ
cp `find . -type f -executable` /usr/bin

Or use https://github.com/jrottenberg/ffmpeg to build ffmpeg and then copy it to your machine.  Be sure to update the ffmpeg path in

...

config/settings.

...

yml to match where it was installed.

7. Disable Matterhorn HLS prechunking (if not already) by commenting out the HLS directory in etc/config.properties

Code Block
title<matterhorn_root>/etc/config.properties
# org.opencastproject.hls.directory=../public

...

8. Update encoding profiles

Warning

New encoding profiles may produce higher resolution derivatives, but not higher than the master files themselves.


Code Block
languagebash
wget -q https://raw.githubusercontent.com/avalonmediasystem/avalon-felix/e36aad51ee4a62795504f7a9e176e5f0ca7644b8/etc/encoding/avalon.properties -O /usr/local/matterhorn/etc/encoding/avalon.properties

8. Setup nginx streaming

...

 if you had been previously depending on the rails server to serve the HLS content.

9. Run waveform backfill script

This script will kick off many background jobs to generate waveform data for existing content for use with the new structural metadata editor.  (New content will have waveforms generated as part of the ingest process.)  If you have a lot of files ingested into Avalon the background jobs may take a very long time to run.  See Waveform Backfill Script for more information.

Code Block
languagebash
bundle exec rails r script/waveform_backfill.rb

...