wwwision/asset-sync

Neos Flow package to synchronize metadata and binary data of imported Neos.Media assets

Fund package maintenance!
bwaidelich
Paypal

Installs: 377

Dependents: 0

Suggesters: 0

Security: 0

Stars: 5

Watchers: 3

Forks: 1

Open Issues: 0

Type:neos-package

1.1.0 2022-05-20 14:26 UTC

This package is auto-updated.

Last update: 2024-12-20 20:09:13 UTC


README

Flow package to synchronize metadata and resources of imported Neos.Media assets

Installation

Install this package via:

composer require wwwision/asset-sync

Usage

Run

./flow media:synchronizeimportedassets

to update the metadata of all imported assets.

Use the following options to fine tune the behavior:

  --asset-sources          Comma separated list of Asset Source identifiers to sync. If null, all imported assets are synced.
  --synchronize-resources  If set, resource binaries are synchronized (this can be slow!). Otherwise, only the asset metadata is updated.
  --batch-size             Number of assets to synchronize in a single run. Larger numbers can increase performance but may lead to high memory consumption
  --pool-size              Maximum number of sub processes to run at the same time
  --quiet                  If set only the number of errors is outputted (if any)

Cronjob

In order to keep imported assets in sync, the synchronizeImportedAssets command should be regularly, for example via cronjob.

The following setup would synchronize the metadata of the specified asset sources hourly and once per day the corresponding resources.

0 * * * * ./flow wwwision.assetsync:media:synchronizeimportedassets --asset-sources assetsource1,assetsource2 --quiet
30 0 * * * ./flow wwwision.assetsync:media:synchronizeimportedassets --asset-sources assetsource1,assetsource2 --synchronize-resources --quiet

Batch and pool size

By default, 500 assets will be processed in a single batch and up to 5 batches will be executed in parallel. This can be changed with the --batch-size and --pool-size options. See Wwwision.BatchProcessing for details.

Acknowledgements

Parts of this implementation are inspired by work from Karsten Dambekalns. The development of this package was generously sponsored by Marktplatz GmbH - Agentur für Web & App. Thank you for supporting Open Source development!

Contribution

Contributions in the form of issues or pull requests are highly appreciated

License

See LICENSE