https://github.com/flownative/neos-asyncimagevariants
A package that allows for asynchronous image variant creation in Neos.Media
https://github.com/flownative/neos-asyncimagevariants
Last synced: about 2 months ago
JSON representation
A package that allows for asynchronous image variant creation in Neos.Media
- Host: GitHub
- URL: https://github.com/flownative/neos-asyncimagevariants
- Owner: flownative
- License: mit
- Created: 2024-10-21T22:19:03.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-10-21T22:22:26.000Z (8 months ago)
- Last Synced: 2024-11-23T09:05:51.757Z (7 months ago)
- Language: PHP
- Homepage:
- Size: 4.88 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
[](http://opensource.org/licenses/MIT)
[](https://packagist.org/packages/flownative/neos-asyncimagevariants)
[](https://packagist.org/packages/flownative/neos-asyncimagevariants)
[](https://www.flownative.com/en/products/open-source.html)# Flownative.Neos.AsyncImageVariants
## Description
This [Flow](https://flow.neos.io) package allows to asynchronously generate image variants for Neos.Media images.
It does this by switching off automatic variant creation (through settings) and wiring a slot to the `assetCreated`
signal emitted in the `AssetService`. That slot creates a job in the job queue that executes the asset variant
creation asynchronously.## Installation
This is installed as a regular Flow package via Composer. For your existing project, simply include
`flownative/neos-asyncimagevariants` into the dependencies of your Flow or Neos distribution:composer require flownative/neos-asyncimagevariants
## Configuration
The package itself has one configuration option for the job queue name to use, it defaults to `media-queue`.
```yaml
Flownative:
Neos:
AsyncImageVariants:
# the queue to use for jobs
jobQueue: 'media-queue'
```That queue of course needs to be configured, e.g. like this:
```yaml
Flowpack:
JobQueue:
Common:
queues:
'media-queue':
className: 'Flowpack\JobQueue\Doctrine\Queue\DoctrineQueue'
executeIsolated: true
releaseOptions:
delay: 15
options:
backendOptions:
driver: '%env:DATABASE_DRIVER%'
host: '%env:DATABASE_HOST%'
port: '%env:DATABASE_PORT%'
dbname: '%env:DATABASE_NAME%'
user: '%env:DATABASE_USER%'
password: '%env:DATABASE_PASSWORD%'
```Make sure to run `./flow job:work media-queue` continuously in the background.
## Troubleshooting
- If things don't work as expected, check the system log.
- Check if jobs are queued by using `./flow queue:list`
- Run `./flow job:work media-queue --verbose --limit 1` to debug job execution