Add eachdist.py to simplify build (#291)

This commit is contained in:
Christian Neumüller
2019-12-10 02:54:56 +01:00
committed by Chris Kleinknecht
parent f5ca0bffad
commit f6d132f61d
4 changed files with 38 additions and 59 deletions

View File

@ -11,6 +11,8 @@ exclude =
.svn
.tox
CVS
.venv*/
venv*/
target
__pycache__
ext/opentelemetry-ext-jaeger/src/opentelemetry/ext/jaeger/gen/

View File

@ -13,5 +13,5 @@ line_length=79
; docs: https://github.com/timothycrosley/isort#multi-line-output-modes
multi_line_output=3
skip=target
skip_glob=ext/opentelemetry-ext-jaeger/src/opentelemetry/ext/jaeger/gen/*
skip_glob=ext/opentelemetry-ext-jaeger/src/opentelemetry/ext/jaeger/gen/*,.venv*/*,venv*/*
known_first_party=opentelemetry

16
eachdist.ini Normal file
View File

@ -0,0 +1,16 @@
# These will be sorted first in that order.
# All packages that are depended upon by others should be listed here.
[DEFAULT]
sortfirst=
opentelemetry-api
opentelemetry-sdk
ext/opentelemetry-ext-wsgi
ext/*
[lintroots]
extraroots=examples/*,scripts/
subglob=*.py,tests/,test/,src/*,examples/*
[testroots]
extraroots=examples/*,tests/
subglob=tests/,test/

77
tox.ini
View File

@ -22,10 +22,11 @@ python =
[testenv]
deps =
-c dev-requirements.txt
test: pytest
coverage: pytest
coverage: pytest-cov
mypy,mypyinstalled: mypy==0.740
mypy,mypyinstalled: mypy
setenv =
mypy: MYPYPATH={toxinidir}/opentelemetry-api/src/
@ -73,15 +74,7 @@ commands_pre =
; In order to get a healthy coverage report,
; we have to install packages in editable mode.
coverage: pip install -e {toxinidir}/opentelemetry-api
coverage: pip install -e {toxinidir}/opentelemetry-sdk
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-http-requests
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-jaeger
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-opentracing-shim
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-testutil
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-wsgi
coverage: pip install -e {toxinidir}/ext/opentelemetry-ext-flask[test]
coverage: pip install -e {toxinidir}/examples/opentelemetry-example-app
coverage: python {toxinidir}/scripts/eachdist.py install --editable
; Using file:// here because otherwise tox invokes just "pip install
; opentelemetry-api", leading to an error
@ -104,56 +97,24 @@ commands =
basepython: python3.7
recreate = True
deps =
pylint~=2.3
flake8~=3.7
isort~=4.3
black>=19.3b0,==19.*
-c dev-requirements.txt
pylint
flake8
isort
black
commands_pre =
pip install -e {toxinidir}/opentelemetry-api
pip install -e {toxinidir}/opentelemetry-sdk
pip install -e {toxinidir}/ext/opentelemetry-ext-http-requests
pip install -e {toxinidir}/ext/opentelemetry-ext-jaeger
pip install -e {toxinidir}/ext/opentelemetry-ext-pymongo
pip install -e {toxinidir}/ext/opentelemetry-ext-testutil
pip install -e {toxinidir}/ext/opentelemetry-ext-wsgi
pip install -e {toxinidir}/ext/opentelemetry-ext-flask[test]
pip install -e {toxinidir}/examples/opentelemetry-example-app
pip install -e {toxinidir}/ext/opentelemetry-ext-opentracing-shim
python scripts/eachdist.py install --editable
commands =
; Prefer putting everything in one pylint command to profit from duplication
; warnings.
black --check --diff .
pylint opentelemetry-api/src/opentelemetry \
opentelemetry-api/tests/ \
opentelemetry-sdk/src/opentelemetry \
opentelemetry-sdk/tests/ \
ext/opentelemetry-ext-http-requests/src/ \
ext/opentelemetry-ext-http-requests/tests/ \
ext/opentelemetry-ext-jaeger/src/opentelemetry \
ext/opentelemetry-ext-jaeger/tests/ \
ext/opentelemetry-ext-opentracing-shim/src/ \
ext/opentelemetry-ext-opentracing-shim/tests/ \
ext/opentelemetry-ext-pymongo/src/opentelemetry \
ext/opentelemetry-ext-pymongo/tests/ \
ext/opentelemetry-ext-testutil/src/opentelemetry \
ext/opentelemetry-ext-wsgi/src/ \
ext/opentelemetry-ext-wsgi/tests/ \
ext/opentelemetry-ext-flask/src/ \
ext/opentelemetry-ext-flask/tests/ \
examples/opentelemetry-example-app/src/opentelemetry_example_app/ \
examples/opentelemetry-example-app/tests/ \
examples/basic_tracer/ \
examples/http/
flake8 .
isort --check-only --diff --recursive .
python scripts/eachdist.py lint --check-only
[testenv:docs]
deps =
sphinx~=2.1
sphinx-rtd-theme~=0.4
sphinx-autodoc-typehints~=1.10.2
-c dev-requirements.txt
sphinx
sphinx-rtd-theme
sphinx-autodoc-typehints
opentracing~=2.2.0
Deprecated>=1.2.6
@ -172,11 +133,11 @@ deps =
requests~=2.7
commands_pre =
pip install -e {toxinidir}/opentelemetry-api
pip install -e {toxinidir}/opentelemetry-sdk
pip install -e {toxinidir}/ext/opentelemetry-ext-http-requests
pip install -e {toxinidir}/ext/opentelemetry-ext-wsgi
pip install -e {toxinidir}/ext/opentelemetry-ext-flask
pip install -e {toxinidir}/opentelemetry-api \
-e {toxinidir}/opentelemetry-sdk \
-e {toxinidir}/ext/opentelemetry-ext-http-requests \
-e {toxinidir}/ext/opentelemetry-ext-wsgi \
-e {toxinidir}/ext/opentelemetry-ext-flask
commands =
{toxinidir}/scripts/tracecontext-integration-test.sh