mirror of
https://github.com/microsoft/onefuzz.git
synced 2025-06-10 17:21:34 +00:00
51 lines
1.5 KiB
Python
51 lines
1.5 KiB
Python
#!/usr/bin/env python
|
|
|
|
# Copyright (c) Microsoft Corporation.
|
|
# Licensed under the MIT License.
|
|
|
|
import sys
|
|
from typing import Any, Dict, cast
|
|
|
|
import setuptools
|
|
|
|
|
|
def get_version() -> str:
|
|
onefuzz: Dict[str, Any] = {}
|
|
with open("onefuzz/__version__.py") as fh:
|
|
# Exec our own __version__.py to pull out version string
|
|
# without import
|
|
exec(fh.read(), onefuzz) # nosec
|
|
version = onefuzz["__version__"]
|
|
if "-v" in sys.argv:
|
|
index = sys.argv.index("-v")
|
|
sys.argv.pop(index)
|
|
version += ".dev" + sys.argv.pop(index)
|
|
return cast(str, version)
|
|
|
|
|
|
with open("requirements.txt") as f:
|
|
requirements = f.read().splitlines()
|
|
|
|
# remove any installer options (see pydantic example)
|
|
requirements = [x.split(" ")[0] for x in requirements]
|
|
|
|
setuptools.setup(
|
|
name="onefuzz",
|
|
version=get_version(),
|
|
description="Onefuzz Client Library for Python",
|
|
long_description=open("README.md").read(),
|
|
long_description_content_type="text/markdown",
|
|
url="https://github.com/microsoft/onefuzz/",
|
|
author="Microsoft Corporation",
|
|
author_email="fuzzing@microsoft.com",
|
|
license="MIT",
|
|
packages=setuptools.find_packages(),
|
|
entry_points={"console_scripts": ["onefuzz = onefuzz.__main__:main"]},
|
|
install_requires=requirements,
|
|
zip_safe=False,
|
|
include_package_data=True,
|
|
package_data={
|
|
"": ["*.md", "*.txt", "onefuzz/data/licenses.json", "onefuzz/data/privacy.txt"]
|
|
},
|
|
)
|