Add pypi publishing testing
Builds the source and wheel distribution as part of linting job to assure we can build the package. Adds packaging temp files to .gitignore to avoid poluting the repository. Adds a publish tox environment which can be used for manual publishing on pypi (exceptional cases). Change-Id: If9176b33cc13904a516d8e64d53170f52f2baf55
This commit is contained in:
parent
30fe497de4
commit
489300d832
@ -19,3 +19,4 @@ testrepository>=0.0.18
|
||||
testscenarios>=0.4
|
||||
testtools>=1.4.0
|
||||
twine
|
||||
wheel
|
||||
|
14
tox.ini
14
tox.ini
@ -10,11 +10,14 @@ setenv =
|
||||
VIRTUAL_ENV={envdir}
|
||||
deps = -r{toxinidir}/test-requirements.txt
|
||||
commands = python setup.py test
|
||||
whitelist_externals =
|
||||
bash
|
||||
rm
|
||||
|
||||
[testenv:linters]
|
||||
# py3 linters are able to stop more than py2 ones
|
||||
basepython = python3
|
||||
whitelist_externals = bash
|
||||
|
||||
extras = insights
|
||||
commands =
|
||||
{[testenv:pep8]commands}
|
||||
@ -23,6 +26,7 @@ commands =
|
||||
pykwalify -d browbeat-complete.yaml -s browbeat/schema/browbeat.yml
|
||||
bash -c "set -e; for config in $(ls conf/); do \
|
||||
echo conf/$config; pykwalify -d conf/$config -s browbeat/schema/browbeat.yml; done"
|
||||
{[testenv:dist]commands}
|
||||
|
||||
[testenv:dist]
|
||||
basepython = python3
|
||||
@ -74,6 +78,14 @@ commands = python setup.py build_sphinx
|
||||
basepython = python3
|
||||
commands = oslo_debug_helper {posargs}
|
||||
|
||||
[testenv:publish]
|
||||
envdir = {toxworkdir}/py27
|
||||
commands =
|
||||
rm -rf dist/*
|
||||
rm -rf build/*
|
||||
python setup.py sdist bdist_wheel
|
||||
twine upload dist/*
|
||||
|
||||
[flake8]
|
||||
# E123, E125 skipped as they are invalid PEP-8.
|
||||
show-source = True
|
||||
|
Loading…
x
Reference in New Issue
Block a user