| ####################################################################################### |
| # Copyright ETSI Contributors and Others. |
| # |
| # 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. |
| ####################################################################################### |
| |
| [tox] |
| envlist = black, flake8, pylint, safety |
| |
| [tox:jenkins] |
| toxworkdir = /tmp/.tox |
| |
| [testenv] |
| usedevelop = True |
| basepython = python3.10 |
| setenv = VIRTUAL_ENV={envdir} |
| PYTHONDONTWRITEBYTECODE = 1 |
| deps = -r{toxinidir}/requirements.txt |
| parallel_show_output = true |
| |
| ####################################################################################### |
| [testenv:black] |
| deps = black==24.4.2 |
| skip_install = true |
| commands = |
| black --check --diff osm_ee/ --exclude="frontend_pb2.py" |
| black --check --diff setup.py |
| |
| |
| ####################################################################################### |
| [testenv:flake8] |
| deps = flake8==7.1.0 |
| commands = |
| flake8 osm_ee/ setup.py |
| |
| |
| ####################################################################################### |
| [testenv:pylint] |
| deps = {[testenv]deps} |
| pylint==3.1.1 |
| commands = |
| pylint -E osm_ee |
| |
| |
| ####################################################################################### |
| [testenv:safety] |
| deps = {[testenv]deps} |
| safety |
| commands = |
| - safety check --full-report |
| |
| |
| ####################################################################################### |
| [testenv:proto] |
| skip_install = true |
| commands = |
| protoc --python_out=. osm_ee/frontend.proto |
| allowlist_externals = protoc |
| |
| |
| ####################################################################################### |
| [testenv:protodocker] |
| skip_install = true |
| commands = |
| docker build -f Dockerfile-proto . -t protobuf |
| docker run --rm -it -v ./osm_ee:/work -w /work protobuf --python_out=. frontend.proto |
| allowlist_externals = docker |
| |
| |
| ####################################################################################### |
| [testenv:pip-compile] |
| deps = pip-tools==6.13.0 |
| skip_install = true |
| allowlist_externals = bash |
| [ |
| commands = |
| - bash -c "for file in requirements*.in ; do \ |
| UNSAFE="" ; \ |
| if [[ $file =~ 'dist' ]] ; then UNSAFE='--allow-unsafe' ; fi ; \ |
| pip-compile --resolver=backtracking -rU --no-header $UNSAFE $file ;\ |
| out=`echo $file | sed 's/.in/.txt/'` ; \ |
| sed -i -e '1 e head -16 tox.ini' $out ;\ |
| done" |
| |
| |
| ####################################################################################### |
| [flake8] |
| ignore = |
| # W291, |
| # W293, |
| # W503, |
| # E123, |
| # E125, |
| # E226, |
| # E241, |
| # E203 |
| exclude = |
| .git, |
| __pycache__, |
| .tox, |
| osm_ee/frontend_pb2.py, |
| max-line-length = 120 |
| show-source = True |
| builtins = _ |