biigle /flysystem-aruna
此包已被弃用且不再维护。未建议替代包。
Aruna对象存储的Flysystem适配器。
v1.0
2023-05-17 13:45 UTC
Requires
- guzzlehttp/guzzle: ^6.0|^7.3
- league/flysystem: ^3.0
- league/flysystem-aws-s3-v3: ^3.0
- league/mime-type-detection: ^1.0
Requires (Dev)
- league/flysystem-adapter-test-utilities: ^3.15
- mockery/mockery: ^1.4
- phpunit/phpunit: ^9.5
- symfony/var-dumper: ^6.0
README
⚠️ 由于AOS现在只能通过S3协议使用,此包已被归档。
Aruna对象存储的Flysystem适配器。
此适配器通过S3执行大多数操作。只有listContents
需要HTTP客户端和收集ID。一旦Aruna实现了ListObjectV2 S3操作,此适配器可以被弃用,可以直接使用S3适配器。
安装
composer require biigle/flysystem-aruna
用法
use Aws\S3\S3Client; use Biigle\Flysystem\Aruna\ArunaAdapter; use GuzzleHttp\Client; # Scheme: <latest or semver>.<collection name>.<project name> $bucket = 'latest.collection-name.project-name'; $collectionId = 'MYARUNACOLLECTIONULID'; $s3Client = new S3Client([ 'credentials' => [ 'key' => 'mykey', 'secret' => 'mysecret', ], 'endpoint' => "https://{$bucket}.data.gi.aruna-storage.org", // Keep as-is. 'region' => '', 'version' => 'latest', 'bucket_endpoint' => true, ]); $httpClient = new Client([ 'base_uri' => 'https://api.aruna-storage.org', 'headers' => [ 'Authorization' => 'Bearer my-aruna-token-secret', ], ]); $adapter = new ArunaAdapter($s3Client, $bucket, $httpClient, $collectionId); $exists = $adapter->fileExists('path/to/file.jpg'); var_dump($exists); // bool(true);
资助
此工作得到了德国研究基金会(DFG)在NFDI4Biodiversity(项目编号442032008)联盟“国家研究数据基础设施(NFDI)”项目中的支持。