Manage s3 storage class in objectstore

Signed-off-by: François Ménabé <francois.menabe@gmail.com>
This commit is contained in:
François Ménabé 2023-01-05 16:06:56 +01:00 committed by François Ménabé
parent fc096ae9db
commit cf9bdc0274
2 changed files with 7 additions and 1 deletions

View file

@ -62,6 +62,9 @@ trait S3ConnectionTrait {
/** @var string */
protected $proxy;
/** @var string */
protected $storageClass;
/** @var int */
protected $uploadPartSize;
@ -81,6 +84,7 @@ trait S3ConnectionTrait {
$this->bucket = $params['bucket'];
$this->proxy = $params['proxy'] ?? false;
$this->timeout = $params['timeout'] ?? 15;
$this->storageClass = !empty($params['storageClass']) ? $params['storageClass'] : 'STANDARD';
$this->uploadPartSize = $params['uploadPartSize'] ?? 524288000;
$this->putSizeLimit = $params['putSizeLimit'] ?? 104857600;
$params['region'] = empty($params['region']) ? 'eu-west-1' : $params['region'];

View file

@ -105,6 +105,7 @@ trait S3ObjectTrait {
'Body' => $stream,
'ACL' => 'private',
'ContentType' => $mimetype,
'StorageClass' => $this->storageClass,
]);
}
@ -123,7 +124,8 @@ trait S3ObjectTrait {
'key' => $urn,
'part_size' => $this->uploadPartSize,
'params' => [
'ContentType' => $mimetype
'ContentType' => $mimetype,
'StorageClass' => $this->storageClass,
],
]);