stechstudio / publish-s3-assets
一种简单地将资产直接发布到S3的方法,适用于CI或其他地方
1.2
2024-04-01 13:50 UTC
Requires
- aws/aws-sdk-php: ^3.298
- illuminate/console: ^10.43 || ^11.0
- laravel/framework: ^10.43 || ^11.0
- league/flysystem-aws-s3-v3: ^3.0
This package is auto-updated.
Last update: 2024-08-31 00:33:51 UTC
README
将您的资产发布到S3从未如此简单!1
四个步骤
composer require stechstudio/publish-s3-assets
- 将您想要的存储桶URL设置为您的
ASSET_URL
- 将
ASSET_AWS_DEFAULT_REGION
(默认为AWS_DEFAULT_REGION
)和ASSET_AWS_BUCKET
添加到您的 .env 文件中,指向您想要发布资产的存储桶。 - 运行
php artisan assets:publish
。
如果您只想发布 public
中的所有内容,那么您就完成了!
但是,如果我想要...
...发布特定的文件夹呢?
将它们作为以逗号分隔的列表传递给 assets:publish
,如下所示
php artisan assets:publish public/build/assets,public/vendor,public/css/filament,public/js/filament
这将递归地只发布那些文件夹中找到的内容。
...在s3中重命名这些文件夹?
首先,问问自己:您真的想要这么做吗?如果您只想将 public/build/assets
更改为 build/assets
,请参见下面的 --strip-public
。
否则...
php artisan assets:publish some/original/path:its/new/path
...从每个资产的开始处删除 public
?
php artisan assets:publish --strip-public
这样,本地中的 public/build/assets
将变为存储桶中的 build/assets
,依此类推。
...删除任何不存在的文件?
php artisan assets:publish --clean
它会获取所有目的地(如 public/build/assets
),然后在上传新文件之前删除它们及其内容。