import setuptools

with open("README.md", "r") as fh:
    long_description = fh.read()

setuptools.setup(
    name="mldock", # Replace with your own username
    version="0.0.40",
    author="SheldonGrant",
    author_email="sheldz.shakes.williams@gmail.com",
    description="Global Machine learning helpers for docker based development. Build, train and deploy on cloud with docker",
    long_description=long_description,
    long_description_content_type="text/markdown",
    url="https://github.com/SheldonGrant/locative-ml-global-helpers",
    packages=setuptools.find_packages(where='.'),
    package_data={
        'mldock': [
            'api/*.sh',
            'platform_helpers/gcp/*.sh',
            'platform_helpers/gcp/__init__.py',
            'platform_helpers/gcp/environment.py',
            'platform_helpers/gcp/storage.py',
            'templates/sagemaker/tests/container_health/*.py',
            'templates/sagemaker/src/',
            'templates/sagemaker/src/*.py',
            'templates/sagemaker/src/utils',
            'templates/sagemaker/src/utils/*py',
            'templates/sagemaker/src/sagify_base',
            'templates/sagemaker/src/sagify_base/config.json',
            'templates/sagemaker/src/sagify_base/*.sh',
            'templates/sagemaker/src/sagify_base/Dockerfile',
            'templates/sagemaker/src/sagify_base/ __init__.py',
            'templates/sagemaker/src/sagify_base/training/__init__.py',
            'templates/sagemaker/src/sagify_base/training/train',
            'templates/sagemaker/src/sagify_base/prediction/*.py',
            'templates/sagemaker/src/sagify_base/prediction/serve',
            'templates/sagemaker/src/sagify_base/prediction/nginx.conf',
            'templates/sagemaker/src/sagify_base/local_test/*.sh',
            'templates/sagemaker/src/sagify_base/local_test/test_dir/output/.gitkeep',
            'templates/sagemaker/src/sagify_base/local_test/test_dir/model/.gitkeep',
            'templates/sagemaker/src/sagify_base/local_test/test_dir/input/config/*.json',
            'templates/sagemaker/src/sagify_base/local_test/test_dir/input/data/training/',
            'templates/aiplatform/tests/container_health/*.py',
            'templates/aiplatform/src/',
            'templates/aiplatform/src/prediction.py',
            'templates/aiplatform/src/trainer.py',
            'templates/aiplatform/src/sagify_base',
            'templates/aiplatform/src/sagify_base/config.json',
            'templates/aiplatform/src/sagify_base/*.sh',
            'templates/aiplatform/src/sagify_base/*.py',
            'templates/aiplatform/src/sagify_base/Dockerfile',
            'templates/aiplatform/src/sagify_base/ __init__.py',
            'templates/aiplatform/src/sagify_base/training/__init__.py',
            'templates/aiplatform/src/sagify_base/training/train',
            'templates/aiplatform/src/sagify_base/prediction/*.py',
            'templates/aiplatform/src/sagify_base/prediction/serve',
            'templates/aiplatform/src/sagify_base/prediction/nginx.conf',
            'templates/aiplatform/src/sagify_base/local_test/*.sh',
            'templates/aiplatform/src/sagify_base/local_test/test_dir/output/.gitkeep',
            'templates/aiplatform/src/sagify_base/local_test/test_dir/model/.gitkeep',
            'templates/aiplatform/src/sagify_base/local_test/test_dir/input/config/*.json',
            'templates/aiplatform/src/sagify_base/local_test/test_dir/input/data/training/',
            'templates/bare/tests/container_health/*.py',
            'templates/bare/service/docker-compose.yml',
            'templates/bare/src/',
            'templates/bare/src/env.py',
            'templates/bare/src/prediction.py',
            'templates/bare/src/trainer.py',
            'templates/bare/src/sagify_base',
            'templates/bare/src/sagify_base/config.json',
            'templates/bare/src/sagify_base/*.sh',
            'templates/bare/src/sagify_base/Dockerfile',
            'templates/bare/src/sagify_base/ __init__.py',
            'templates/bare/src/sagify_base/training/',
            'templates/bare/src/sagify_base/training/*.sh',
            'templates/bare/src/sagify_base/training/startup.py',
            'templates/bare/src/sagify_base/training/cleanup.py',
            'templates/bare/src/sagify_base/training/train.py',
            'templates/bare/src/sagify_base/prediction/',
            'templates/bare/src/sagify_base/prediction/serve.py',
            'templates/bare/src/sagify_base/prediction/startup.py',
            'templates/bare/src/sagify_base/prediction/wsgi.py',
            'templates/bare/src/sagify_base/prediction/predictor.py',
            'templates/bare/src/sagify_base/prediction/*.sh',
            'templates/bare/src/sagify_base/prediction/nginx.conf',
            'templates/bare/src/sagify_base/local_test/*.sh',
            'templates/bare/src/sagify_base/local_test/test_dir/output/.gitkeep',
            'templates/bare/src/sagify_base/local_test/test_dir/model/.gitkeep',
            'templates/bare/src/sagify_base/local_test/test_dir/input/config/*.json',
            'templates/bare/src/sagify_base/local_test/test_dir/input/data/training/'
        ]
    },
    setup_requires=['setuptools>=39.1.0'],
    extras_require={
        'ai-platform': ['future', 'google-cloud-storage', 'google-api-python-client'],
        'cli': ['click', 'docker', 'future'],
        'sagemaker': ['future', 'boto3']
    },
    entry_points="""
        [console_scripts]
        mldock=mldock.__main__:cli
    """,
    keywords=["docker", "machine learning", "ml", "ml services", "MLaaS"],
    classifiers=[
        "Intended Audience :: Developers",
        "License :: OSI Approved :: MIT License",
        "Programming Language :: Python :: 3.6"
    ],
    python_requires='>=3.6',
)
