mardi 4 février 2020

Using storage_path from another Laravel app

I have an application that uses two different Laravel apps talking to the same database. App 1 is called BUILDER and App 2 is called VIEWER. In production I use S3 for storing files submitted within the application. For local development I use the storage/app/public folder in BUILDER.

The local dev setup is that BUILDER runs on localhost:8000 and VIEWER on locahost:8001

Now here comes my problem. In production both apps use the same S3 bucket for storage. So somehow I need to set this up similarly for local development.

The BUILDER is working fine, uploading and reading its files from the storage/app/public folder with FILESYSTEM_DRIVER=public in .env

The VIEWER is also reading these files fine, creating correct URL's after I added a new disk in the config (BUILDER_URL is set in .env to localhost:8000 which is the URL for the BUILDER)

'builder_public' => [
        'driver' => 'local',
        'root' => storage_path('app/public'),
        'url' => env('BUILDER_URL') . '/storage',
        'visibility' => 'public',
],

BUT... I need to somehow be able to also upload files from the VIEWER app that should end up in the same storage folder as the BUILDER.

So in my VIEWER app I would like my builder_public disk to be something like this:

'builder_public' => [
            'driver' => 'local',
            'root' => builder_storage_path('app/public'), // here 
            'url' => env('BUILDER_URL') . '/storage',
            'visibility' => 'public',
    ],

Is there some way I can share the storage/app folder between two separate Laravel apps?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire