Streaming Derivative File Locations
Avalon R4 uses a new approach to storing the file locations of streaming derivatives. Administrators should modify their avalon.yml
configuration to point to the absolute path of the folder that will be used to store Avalon derivatives (see below). In almost all circumstances, the path will exactly match the org.opencastproject.streaming.directory
in Matterhorn’s config.properties
file.
In config/settings.yml
:
... streaming: ... content_path: /path/to/streaming/derivatives ...
If the file storage location changes, administrators should update the configuration file. Existing derivative files will continue to point to the original location. Existing derivatives can be updated to reference the newer file location by calling the #set_streaming_locations!
method on each derivative.
Moving derivative files location
If you need to move all derivative files to a new location, say from /mnt/my_nfs_old
to /mnt/my_nfs_new
, you'll need to do the following:
- Change Matterhorn's config at
<matterhorn_root>/etc/config.properties
org.opencastproject.streaming.directory=/mnt/my_nfs_new
2. Change Matterhorn's config at <matterhorn_root>/etc/load/org.opencastproject.organization-mh_default_org.cfg
prop.avalon.stream_base=file:///mnt/my_nfs_new
3. Restart Matterhorn
4. Change <avalon_root>/config/settings/production.local.yml
streaming: content_path: /mnt/my_nfs_new
5. Go into the Rails console and update all Derivatives with new location
Derivative.where('derivativeFile_ssi:*/mnt/my_nfs_old*').each {|d| d.absolute_location = d.absolute_location.sub("/mnt/my_nfs_old","/mnt/my_nfs_new"); d.save!; puts d.absolute_location}
6. Restart Resque worker and scheduler