magento / magento2-functional-testing-framework

Magento2 Functional Testing Framework
Other
155 stars 133 forks source link

Fix encoding issue when secret key contains plus sign #875

Closed oshmyheliuk closed 2 years ago

oshmyheliuk commented 2 years ago

Description

If some of the REMOTE_STORAGE_ options contain + sign inside value the tests running will fail as here https://github.com/magento-commerce/magento2-functional-testing-framework/blob/develop/etc/config/command.php#L15 urldecode will remove pluses + from command and setup:config:set --remote-storage-driver=... will fail with Too many arguments, expected arguments "command".

I got this issue as the current REMOTE_STORAGE_AWSS3_SECRET_KEY value contains two + signs. I tried, with single quotes or double quotes but they are ignored and option values in command passing without quotes.

For example, I’ve set:

REMOTE_STORAGE_AWSS3_ACCESS_KEY='AKIAAFIELSFN+FNM7S2T+VORAXPQ'

command.php received:

php bin/magento setup:config:set ... --remote-storage-key=AKIAAFIELSFN+FNM7S2T+VORAXPQ

and after urldecode will be

php bin/magento setup:config:set ... --remote-storage-key=AKIAAFIELSFN FNM7S2T VORAXPQ

Fixed Issues (if relevant)

  1. magento/magento2-functional-testing-framework#: Issue title
  2. ...

Contribution checklist

jilu1 commented 2 years ago

@oshmyheliuk Thank you for fixing the issue and submit the pull request!

@magento import pull request to https://github.com/magento-commerce/magento2-functional-testing-framework

m2-github-services commented 2 years ago

@jilu1 the Pull Request is successfully imported.