Download the PHP package dbp/relay-blob-bundle without Composer
On this page you can find all versions of the php package dbp/relay-blob-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download dbp/relay-blob-bundle
More information about dbp/relay-blob-bundle
Files in dbp/relay-blob-bundle
Package relay-blob-bundle
Short Description A bundle for file-serving, persisting and managing
License AGPL-3.0-or-later
Informations about the package relay-blob-bundle
Relay-Blob Bundle README
DbpRelayBlobBundle
GitHub | Packagist | Changelog
The blob bundle provides an API for abstracting different shared storage systems. You can upload a file unauthorized via the API to a configured bucket and gets a short ephemeral link. Authentication takes place via signed requests. The file is attached to the bucket, not to an owner.
A bucket can be an application or an application space. For example, you can have two buckets with a different target group for one application. A bucket is configured in the config file.
Requirements
You need a DbpRelayBlobConnector bundle installed to make this bundle working. E.g. DbpRelayBlobConnectorFilesystemBundle
Bundle installation
You can install the bundle directly from packagist.org.
Integration into the Relay API Server
- Add the bundle to your
config/bundles.php
in front ofDbpRelayCoreBundle
:
If you were using the DBP API Server Template as template for your Symfony application, then this should have already been generated for you.
- Run
composer install
to clear caches
Configuration
The bundle has multiple configuration values that you can specify in your app, either by hard-coding it, or by referencing an environment variable.
For this create config/packages/dbp_relay_blob.yaml
in the app with the following
content:
For more info on bundle configuration see https://symfony.com/doc/current/bundles/configuration.html.
Development & Testing
- Install dependencies:
composer install
- Run tests:
composer test
- Run linters:
composer run lint
- Run cs-fixer:
composer run cs-fix
Bundle dependencies
Don't forget you need to pull down your dependencies in your main application if you are installing packages in a bundle.
Scripts
Database migration
Run this script to migrate the database. Run this script after installation of the bundle and after every update to adapt the database to the new source code.
Error codes
See the API documentation.
CronJobs
Cleanup Cronjob
This cronjob is for cleanup purposes. It starts every hour and deletes old files.
Send Report Cronjob
This cronjob sends reports to given email addresses, or the bucket owner. In these reports there are all files which are going to be deleted in the timeframe specified in the config. The email address are attached to these files or there is a default in the config. This cronjob starts every Monday at 9 o'clock in the Morning (UTC).
Quota Warning
This cronjob sends reports to the in warn_quota
configured email.
This email lets the configured person know before the bucket space is used up.
An email gets sent after the bucket is filled to a certain percentage, configured with the option notify_when_quota_over
.
The option quota_warning_interval
indicates in which interval this should get checked.
Bucket Size Check
This cronjob sends reports to the in bucket_size
configured email.
This email lets the configured person know if a bucket is inconsistent, either because the number of entries in the table is different than in the storage backend or because the sum of filesizes stored in the database is different than the sum of filesize of the actually stored files.
An email is sent if some inconsistencies are detected.
The option bucket_size_check_interval
indicates in which interval this should get checked.
Integrity Check
This cronjobs sends reports to the in integrity
configured email.
This emails lets the configured person know if the metadata or file integrity checks fail. This means, that the metadata or file hashes, which are stored upon upload, are different then the hashes of the metadata or file that are currently stored. This could indicate bitrot or manual changes in the database or file.
An email is sent if some inconsistencies are detected.
The option integrity_check_interval
indicates in which interval this should get checked.
The option file_integrity_checks
can be used to enable or disable the integrity checks.
All versions of relay-blob-bundle with dependencies
ext-json Version *
api-platform/core Version ^3.2
dbp/relay-blob-library Version ^0.2.0
dbp/relay-core-bundle Version ^0.1.182
doctrine/dbal Version ^3.3 || ^4.0
doctrine/doctrine-bundle Version ^2.11
doctrine/doctrine-migrations-bundle Version ^3.3
doctrine/migrations Version ^3.5
doctrine/orm Version ^2.18 || ^3.2
justinrainbow/json-schema Version ^5.3 || ^6.0
kekos/multipart-form-data-parser Version ^1.1
nyholm/psr7 Version ^1.8
psr/log Version ^1.0 || ^2 || ^3
ramsey/uuid Version ^4.7
ramsey/uuid-doctrine Version ^2.0
symfony/config Version ^6.4
symfony/console Version ^6.4
symfony/dependency-injection Version ^6.4
symfony/event-dispatcher Version ^6.4
symfony/event-dispatcher-contracts Version ^2.5 || ^3
symfony/framework-bundle Version ^6.4
symfony/http-foundation Version ^6.4
symfony/http-kernel Version ^6.4
symfony/mailer Version ^6.4
symfony/mime Version ^6.4
symfony/psr-http-message-bridge Version ^6.4
symfony/serializer Version ^6.4
symfony/uid Version ^6.4
twig/twig Version ^3.8