Why not move the uploaded files in a folder in the root (so your root contains your /public folder from laravel and a /uploaded folder) and then symlink /public/site/uploads to /uploads ?
Handling uploaded local files with Envoy.
I successfully migrated a Laravel 4 site over to deploy with Envoyer.io, really awesome!
The one thing I didn't account for, is we have files uploaded through an admin, but this throws a little wrench in everything. Since these files are in public/site/uploads, each deployment clears this directory out.
What's the proper way to handle this? (Without saving files to S3, etc... this is a small website, a very specific target, they don't need anything too fancy) :)
@toddvalentine, as @dertechniker suggests, anything you don't want to blow away on a fresh deploy you should move out of your release structure and symlink it in when you're done.
current -> releases/20150323231010
storage/
app/
framework/
logs/
releases/
20150323230130/
20150323230745/
20150323231010/
20150324034448/
uploads/
When you're making a deploy, blow away the directory structure in your release and symlink in the external uploads folder:
cd releases/20150324034448
rm -rf public/img/uploads/
ln -nfs ../../../../uploads public/img/uploads
Instead of back references, it might be cleaner to use a full path reference, but that'll depend on your filesystem structure and is up to you.
Please or to participate in this conversation.