106 lines
3.3 KiB
Python
106 lines
3.3 KiB
Python
#!/usr/bin/env/python3
|
|
#
|
|
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
"""Setup script."""
|
|
|
|
import importlib
|
|
import os
|
|
import types
|
|
|
|
from setuptools import setup, find_packages
|
|
|
|
|
|
def make_required_install_packages():
|
|
return [
|
|
"pytorch-lightning>=1.4.0",
|
|
"torch>=1.7.1",
|
|
"torch-model-archiver",
|
|
]
|
|
|
|
|
|
def make_required_test_packages():
|
|
return make_required_install_packages() + [
|
|
"mock>=4.0.0",
|
|
"flake8>=3.0.0",
|
|
"pylint",
|
|
"pytest>=6.0.0",
|
|
"wget",
|
|
"pandas",
|
|
"minio"
|
|
]
|
|
|
|
|
|
def make_dependency_links():
|
|
return []
|
|
|
|
|
|
def detect_version(base_path):
|
|
loader = importlib.machinery.SourceFileLoader(
|
|
fullname="version",
|
|
path=os.path.join(base_path,
|
|
"pytorch_kfp_components/__init__.py"),
|
|
)
|
|
version = types.ModuleType(loader.name)
|
|
loader.exec_module(version)
|
|
return version.__version__
|
|
|
|
|
|
if __name__ == "__main__":
|
|
relative_directory = os.path.relpath(
|
|
os.path.dirname(os.path.abspath(__file__)))
|
|
|
|
version = detect_version(relative_directory)
|
|
|
|
setup(
|
|
name="pytorch-kfp-components",
|
|
version=version,
|
|
description="PyTorch Kubeflow Pipeline",
|
|
url="https://github.com/kubeflow/pipelines/tree/master/components/PyTorch/pytorch-kfp-components/",
|
|
author="The PyTorch Kubeflow Pipeline Components authors",
|
|
author_email="pytorch-kfp-components@fb.com",
|
|
license="Apache License 2.0",
|
|
extra_requires={"tests": make_required_test_packages()},
|
|
include_package_data=True,
|
|
python_requires=">=3.6",
|
|
install_requires=make_required_install_packages(),
|
|
dependency_links=make_dependency_links(),
|
|
keywords=[
|
|
"Kubeflow Pipelines",
|
|
"KFP",
|
|
"ML workflow",
|
|
"PyTorch",
|
|
],
|
|
classifiers=[
|
|
"Development Status :: 4 - Beta",
|
|
"Operating System :: Unix",
|
|
"Operating System :: MacOS",
|
|
"Intended Audience :: Developers",
|
|
"Intended Audience :: Education",
|
|
"Intended Audience :: Science/Research",
|
|
"License :: OSI Approved :: Apache Software License",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Topic :: Scientific/Engineering",
|
|
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
"Topic :: Software Development",
|
|
"Topic :: Software Development :: Libraries",
|
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
],
|
|
package_dir={
|
|
"pytorch_kfp_components":
|
|
os.path.join(relative_directory, "pytorch_kfp_components")
|
|
},
|
|
packages=find_packages(where=relative_directory),
|
|
)
|