2b706ab9

By: Michael Lynch <git@mtlynch.io>

Add shared media file store

Define a FileStore contract for media backends and use one typed store when
configuring uploads. Local and S3 backends now both support deleting media
files, allowing later media services to depend on the same storage contract.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 2s 10s 10s 13s 2s
Eval 10s 35s 35s 45s 0s
Build 37s 7m32s 5m47s 6m24s 3m50s
Suite 2s 8m18s 6m22s 6m24s 3m53s

Timeline

0s20s40s1m1m20s1m40s2m2m20s2m40s6m20s