aboutsummaryrefslogtreecommitdiffstats
## Features ##
- Uses Growl for status notifications
- Smart enough to only archive an asset once
- Allows running archive and FCSvr services on separate machines
- Keeps a log of tasks
- Supports archiving/restoring multiple assets at once

## How it works ##
### Archive ###
- User selects assets in FCSvr and clicks Archive. FCSvr moves the asset to it's
Archive Device and marks it as archived
- archive.sh writes the archived file path(s) to /tmp/finalstore/archive/<timestamp>.txt
- launchd job (fi.tvtools.finalstore) runs finalstore.py every 20 seconds
- finalstore.py forwards the file list to a customized awcli.sh, waits for the job
to finish and runs growlnotify to let the user know of what happened

### Restore ###
- User selects assets in FCSvr and clicks Restore. 
- restore.sh writes the file paths to /tmp/finalstore/restore/<timestamp>.txt
- launchd job (fi.tvtools.finalstore) runs finalstore.py every n seconds
- finalstore.py forwards the file list to a customized awcli.sh, waits for the job
to finish and runs growlnotify to let the user know what happened

## Installation ##
- Drag the FinalStore folder to /Library/Application Support/TV Tools
- In FCSvr, open Administration > Devices > Archive and set the pahts of the archive and restore
scripts
- Configure your PressSTORE archive plan
- In System Preferences > Final Cut Server, increase the Retry Count and Timeout values (for example 100/10). This is necessary for the restore process, to give PresSTORE time to retrieve the assets.
- Edit FinalStore/config.py to match your configuration
- Load the launchd job. Either create an alias or copy fi.tvtools.finalstore.plist into /Library/LaunchDaemons and:
  
  sudo launchctl load -w /Library/LaunchDaemons/fi.tvtools.finalstore.plist

- Install Growl + growlnotify on the Final Cut Server. Optionally enable network notifications, if you want to send them to your Final Cut Server.app users.

## Why is this thing so complicated? ##
The main reason is because Final Cut Server only sends one archive/restore asset path at a time. This means we need a lot more files to keep track of them.