зеркало из https://github.com/mozilla/treeherder.git
77 строки
2.4 KiB
INI
77 строки
2.4 KiB
INI
[tox]
|
|
envlist = py37
|
|
isolated_build = true
|
|
skipsdist=True
|
|
|
|
toxworkdir={toxinidir}/.tox
|
|
|
|
[testenv]
|
|
whitelist_externals =
|
|
sh
|
|
docker-compose
|
|
commands_pre =
|
|
docker-compose up --detach mysql redis rabbitmq
|
|
pip install -r {toxinidir}/requirements/dev.txt
|
|
pip install -r {toxinidir}/requirements/common.txt
|
|
commands =
|
|
{toxinidir}/manage.py check
|
|
sh -c "SITE_URL=https://treeherder.dev TREEHERDER_DEBUG=False ./manage.py check --deploy --fail-level WARNING"
|
|
# Running slow tests (DB required)
|
|
pytest tests/ --runslow
|
|
commands_post =
|
|
# This is to deal with running the containers with --detached
|
|
docker-compose down
|
|
|
|
[testenv:linters]
|
|
commands_pre =
|
|
pip install -r {toxinidir}/requirements/dev.txt
|
|
pip install -r {toxinidir}/requirements/common.txt
|
|
commands =
|
|
pip check
|
|
{toxinidir}/lints/queuelint.py
|
|
# This ensures that we don't loose the ability of installing locally pre-commit checks
|
|
pre-commit run --all-files
|
|
commands_post =
|
|
|
|
[testenv:docs]
|
|
commands_pre =
|
|
pip install poetry
|
|
poetry install --extras "docs"
|
|
commands =
|
|
mkdocs build
|
|
commands_post =
|
|
|
|
# This build is configured to catch issues on PRs that would only be detected as
|
|
# part of Heroku's build step when the code has already been merged to master.
|
|
# The step ./bin/post_compile requires the output of `yarn build`, thus, we need
|
|
# to build both the JS and Python builds
|
|
# In Heroku, the JS dev dependencies are *not* installed because the env variable
|
|
# YARN_PRODUCTION is detected by the buildpack, however, yarn does not care about
|
|
# that and needs an explicit flag (`--prod`)
|
|
# https://devcenter.heroku.com/articles/nodejs-support#only-installing-dependencies
|
|
# NODE_ENV=production is implicit as part of the command `yarn build` with `--mode production`
|
|
[testenv:heroku]
|
|
whitelist_externals =
|
|
yarn
|
|
post_compile
|
|
commands_pre =
|
|
pip install -r requirements.txt
|
|
yarn install --prod
|
|
commands =
|
|
yarn heroku-postbuild
|
|
./manage.py collectstatic --noinput
|
|
# This generates the revision and does the Brotly/Gzip compression
|
|
{toxinidir}/./bin/post_compile
|
|
commands_post =
|
|
|
|
[testenv:docker]
|
|
whitelist_externals=
|
|
docker-compose
|
|
commands_pre =
|
|
docker-compose build
|
|
commands =
|
|
docker-compose run -e TREEHERDER_DEBUG=False backend bash -c "pytest --cov --cov-report=xml tests/ --runslow"
|
|
|
|
[flake8]
|
|
per-file-ignores = treeherder/model/models.py:E402
|