I have created a sdk which makes use of multiple dependencies for example boto3, azure-storage, google-cloud-datastore etc. Now in my code I am importing these modules dynamically because at a time user will be using the sdk on GCP, Azure or AWS. So I do not want to install dependencies which he'll not be using. Here's my questions -
Is my approach correct, should I install all the dependencies?
If not then what's best way to install the package so that user can provide some argument to the package manager so that it installs only those dependencies which belongs to the environment he is on.
Something like
pip install mysdk --env=aws
P.S. I got to know that python does support install_requires parameter in setup.py where python_version variable can be used but can I access other env variables defined by user as args