TODO: Link to what is new here
Upgrading Ruby (recommended)
Avalon 6.2 has been tested against Ruby 2.3 and Ruby 2.4, while there are no known reasons that other versions of Ruby 2 will not work, the Avalon Team recommends using one of these versions of Ruby.
Updating Fedora (Optional)
Avalon 6.2 has primarily been tested against Fedora 4.7.4. Fedora 4.7.4 is also currently in the process of becoming the LTS version of Fedora, you may wish to consider upgrading to Fedora 4.7.4, but this is not required. Fedora 4.7.4 install/upgrade directions can be found here.
HLS Derivatives in Avalon
One of the major changes in Avalon 6.2 is streaming now uses MediaElement 4 for playback and streams exclusively via HLS. No special actions are needed to install MediaElement 4, it comes as part of the upgrade. For browsers that do not have native HLS support, a MediaElement.js shim is used to enable playback. This requires that you have HLS derivatives of content for playback. If you have been using the default Avalon transcoding profiles for Matterhorn these derivatives exist. If you have used a custom profile, you will need to ensure that you have HLS derivatives generated. If you are unsure, you can search the directory for files with the .m3u extension, files ending in .m3u are capable of HTTP Live Streaming (HLS).
Is this true?
Shutting Down your RTMP Server and Deleting .mp4 Derivatives
Do we want to get into this? If people are using AMS or Wowza, they're probably using the same derivative for RTMP and HLS.
Upgrade Steps
For manual install:
Download and deploy new code from avalon repo
Update gems and DB
bundle install RAILS_ENV=production bundle exec rake db:migrate
Restart passenger (if using)
passenger-config restart-app
Restart Resque (background jobs processor)
pkill -f resque RAILS_ENV=production BACKGROUND=yes bundle exec rake resque:scheduler RAILS_ENV=production BACKGROUND=yes QUEUE=* bundle exec rake resque:work
Docker Install
Update new code from avalon-docker
git checkout master git pull
Rebuild and replace Avalon container. Note: it's not necessary to take Avalon down first.
docker-compose build --no-cache avalon docker-compose up avalon