Skip to content

Commit

Permalink
Merge pull request #14 from amlight/fix/install_req_deps
Browse files Browse the repository at this point in the history
[Fix] setup.py install_requires dependencies housekeeping
  • Loading branch information
viniarck authored Jan 12, 2022
2 parents 75bb4bf + 6f05c3c commit 10fd6dc
Show file tree
Hide file tree
Showing 7 changed files with 298 additions and 6 deletions.
2 changes: 1 addition & 1 deletion kytos.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"username": "amlight",
"name": "sdntrace_cp",
"description": "Run tracepaths on OpenFlow in the Control Plane",
"version": "latest",
"version": "1.0.0",
"napp_dependencies": ["amlight/flow_stats", "amlight/scheduler"],
"license": "",
"tags": [],
Expand Down
10 changes: 10 additions & 0 deletions requirements/dev.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# This file is autogenerated by pip-compile with python 3.6
# To update, run:
#
# pip-compile --output-file requirements/dev.txt requirements/dev.in
#
-e git+https://github.com/kytos-ng/python-openflow.git#egg=python-openflow
-e git+https://github.com/kytos-ng/kytos.git#egg=kytos
-e git+https://github.com/kytos-ng/of_core.git#egg=kytos_of_core
-e git+https://github.com/amlight/flow_stats#egg=amlight-flow_stats
-e .[dev]
235 changes: 235 additions & 0 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,235 @@
#
# This file is autogenerated by pip-compile with python 3.6
# To update, run:
#
# pip-compile --output-file=requirements/dev.txt requirements/dev.in
#
-e .
# via -r requirements/dev.in
-e git+https://github.com/kytos-ng/kytos.git#egg=kytos
# via -r requirements/dev.in
-e git+https://github.com/kytos-ng/of_core.git#egg=kytos_of_core
# via -r requirements/dev.in
-e git+https://github.com/kytos-ng/python-openflow.git#egg=python-openflow
# via
# -r requirements/dev.in
# kytos
-e git+https://github.com/amlight/flow_stats#egg=amlight-flow_stats
# via -r requirements/dev.in
astroid==2.9.3
# via pylint
backcall==0.1.0
# via
# ipython
# kytos
certifi==2021.10.8
# via
# amlight-sdntrace-cp
# requests
charset-normalizer==2.0.10
# via
# amlight-sdntrace-cp
# requests
click==8.0.3
# via
# flask
# kytos
# pip-tools
coverage==6.2
# via amlight-sdntrace-cp
decorator==4.4.2
# via
# ipython
# kytos
# traitlets
distlib==0.3.4
# via virtualenv
docopt==0.6.2
# via yala
docutils==0.18.1
# via
# kytos
# python-daemon
filelock==3.4.1
# via
# tox
# virtualenv
flask==1.1.2
# via
# flask-cors
# flask-socketio
# kytos
flask-cors==3.0.8
# via kytos
flask-socketio==4.2.1
# via kytos
idna==3.3
# via
# amlight-sdntrace-cp
# requests
importlib-metadata==4.8.3
# via
# click
# pep517
# pluggy
# tox
# virtualenv
importlib-resources==5.4.0
# via virtualenv
ipython==7.13.0
# via kytos
ipython-genutils==0.2.0
# via
# kytos
# traitlets
isort==5.10.1
# via
# pylint
# yala
itsdangerous==1.1.0
# via
# flask
# kytos
janus==0.4.0
# via kytos
jedi==0.16.0
# via
# ipython
# kytos
jinja2==2.11.1
# via
# flask
# kytos
lazy-object-proxy==1.7.1
# via astroid
lockfile==0.12.2
# via
# kytos
# python-daemon
markupsafe==1.1.1
# via
# jinja2
# kytos
mccabe==0.6.1
# via pylint
packaging==21.3
# via tox
parso==0.6.2
# via
# jedi
# kytos
pathtools==0.1.2
# via
# kytos
# watchdog
pep517==0.12.0
# via pip-tools
pexpect==4.8.0
# via
# ipython
# kytos
pickleshare==0.7.5
# via
# ipython
# kytos
pip-tools==6.4.0
# via amlight-sdntrace-cp
platformdirs==2.4.0
# via
# pylint
# virtualenv
pluggy==1.0.0
# via tox
prompt-toolkit==3.0.5
# via
# ipython
# kytos
ptyprocess==0.6.0
# via
# kytos
# pexpect
py==1.11.0
# via tox
pycodestyle==2.8.0
# via yala
pygments==2.11.2
# via
# ipython
# kytos
pyjwt==1.7.1
# via kytos
pylint==2.12.2
# via yala
pyparsing==3.0.6
# via packaging
python-daemon==2.2.4
# via kytos
python-engineio==3.12.1
# via
# kytos
# python-socketio
python-socketio==4.5.1
# via
# flask-socketio
# kytos
requests==2.27.0
# via amlight-sdntrace-cp
six==1.16.0
# via
# flask-cors
# kytos
# python-engineio
# python-socketio
# tox
# traitlets
# virtualenv
toml==0.10.2
# via
# pylint
# tox
tomli==1.2.3
# via pep517
tox==3.24.5
# via amlight-sdntrace-cp
traitlets==4.3.3
# via
# ipython
# kytos
typed-ast==1.5.1
# via astroid
typing-extensions==4.0.1
# via
# astroid
# importlib-metadata
# pylint
urllib3==1.26.7
# via
# amlight-sdntrace-cp
# requests
virtualenv==20.13.0
# via tox
watchdog==0.10.2
# via kytos
wcwidth==0.1.9
# via
# kytos
# prompt-toolkit
werkzeug==1.0.1
# via
# flask
# kytos
wheel==0.37.1
# via pip-tools
wrapt==1.13.3
# via astroid
yala==3.1.0
# via amlight-sdntrace-cp
zipp==3.6.0
# via
# importlib-metadata
# importlib-resources
# pep517

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
3 changes: 1 addition & 2 deletions requirements/run.in
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@
git+https://github.com/amlight/scheduler@master#egg=amlight-scheduler
git+https://github.com/amlight/flow_stats@master#egg=amlight-flow_stats
requests==2.27.0
16 changes: 16 additions & 0 deletions requirements/run.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#
# This file is autogenerated by pip-compile with python 3.6
# To update, run:
#
# pip-compile --output-file=requirements/run.txt requirements/run.in
#
certifi==2021.10.8
# via requests
charset-normalizer==2.0.10
# via requests
idna==3.3
# via requests
requests==2.27.0
# via -r requirements/run.in
urllib3==1.26.7
# via requests
21 changes: 21 additions & 0 deletions setup.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
[pycodestyle]
exclude = .eggs,ENV,build,docs/conf.py,venv

[yala]
linters=pylint,pycodestyle,isort

[pydocstyle]
add-ignore = D105,D107

[isort]
# The first party was necessary to fix travis build.
known_first_party = kytos.napps,tests
known_third_party = pyof,kytos
# Ignoring tests because is adding napps path
skip=tests

[tool:pytest]
markers =
small: marks tests as small
medium: marks tests as medium
large: marks tests as large
17 changes: 14 additions & 3 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ def _install_deps_wheels():
"""Python wheels are much faster (no compiling)."""
print('Installing dependencies...')
check_call([sys.executable, '-m', 'pip', 'install', '-r',
'requirements/run.in'])
'requirements/run.txt'])


class DevelopMode(develop):
Expand Down Expand Up @@ -264,19 +264,30 @@ def symlink_if_different(path, target):
path.symlink_to(target)


def read_requirements(path="requirements/run.txt"):
"""Read requirements file and return a list."""
with open(path, "r", encoding="utf8") as file:
return [
line.strip()
for line in file.readlines()
if not line.startswith("#")
]


setup(name=f'{NAPP_USERNAME}_{NAPP_NAME}',
version=NAPP_VERSION,
description='Run tracepaths on OpenFlow in the Control Plane',
url=f'http://github.com/amlight/sdntrace_cp',
url='http://github.com/amlight/sdntrace_cp',
author='FIU/AmLight team',
author_email='[email protected]',
license='MIT',
install_requires=['flask', 'kytos'],
install_requires=read_requirements(),
setup_requires=['pytest-runner'],
tests_require=['pytest'],
extras_require={
'dev': [
'coverage',
'pip-tools',
'yala',
'tox',
],
Expand Down

0 comments on commit 10fd6dc

Please sign in to comment.