1up-lab / OneupFlysystemBundle

A Flysystem integration for your Symfony projects.
MIT License
630 stars 119 forks source link

Setting "Metadata" on S3 adapter #264

Open arjanfrans opened 2 years ago

arjanfrans commented 2 years ago

Question

I am trying to set the 'Metadata' on my S3 adapter. I have tried setting it as a string, since the configuration complains that it should be scalar and not an array, but when the call to the S3 api is made I get the following error:

Found 1 error while validating the input provided for the PutObject operation:
[Metadata] must be an associative array. Found string(56) "Cache-Control: max-age=2592000, public, s-maxage=2592000"
        s3_adapter:
            awss3v3:
                client: Aws\S3\S3Client
                bucket: 'test'
                prefix: 'test'
                options:
                    ACL: 'public-read'
                    Metadata: 'Cache-Control: max-age=2592000, public, s-maxage=2592000'

When setting it as an array, it complains about the type:

    Metadata: 
          'Cache-Control': 'max-age=2592000, public, s-maxage=2592000'
  Invalid type for path "oneup_flysystem.adapters.s3_adapter.awss3v3.options.Metadata". Expected "scalar", but got "array".

How do I configure the metadata correctly? I am suspecting that the type is wrong; it shouldn't be a scalar.

arjanfrans commented 2 years ago

This is still an issue.