S3 importing works for some entities, not all

simo.savonen
simo.savonen Spryker Solution Partner Posts: 14 🧑🏻‍🚀 - Cadet
edited November 2024 in Spryker Releases

Wondering if this is a work- in-progress feature. I followed the guide here:

https://docs.spryker.com/docs/ca/dev/configure-data-import-from-an-s3-bucket.html

on the latest b2b demo shop 202410 after we saw mixed success with our updated Spryker. Only some entities are imported from S3, rest are still read from the local harddrive. Should they all work OOTB?

These are working:
product-abstract, product-concrete, product-image, product-stock, tax

These are not. Easy way to test is to rename your local data/import/common directory, and you will get FileResolver errors as import tries to find the CSV.
product-price, product-price-schedule, category

Tested by adding the file_system: s3-import to the full_EU.yml, and also by setting s3-import as the default in CsvReaderConfiguration. I didn't test every entity type.

We're a bit stumped as to the cause, and cannot start using our updated Spryker before CSV imports are working like they used to.

Tagged:

Comments

  • simo.savonen
    simo.savonen Spryker Solution Partner Posts: 14 🧑🏻‍🚀 - Cadet
    edited November 2024

    More entity types that won't fetch from S3: product-relation, product-relation-store, product-discontinued

  • simo.savonen
    simo.savonen Spryker Solution Partner Posts: 14 🧑🏻‍🚀 - Cadet

    Looks like the information about fileSystem is not passed to the plugins.

    All the importers that are mentioned in the large switch statement of DataImportBusinessFactory.getDataImporterByType work and fetch the CSV from S3.

    Plugins however lose the value, and DataImporterCollection.import no longer knows that it should fetch from s3-import, as $dataImporterConfigurationTransfer.readerConfiguration.fileSystem is null.