7ab3387080
We want the service type use to be consistent across all of the various repos where we refer to it. This patch adds validation to ensure that service types associated with jobs for repositories match the service types assigned by the registry. In the process, it also changes the job definitions for some of the projects that were publishing to the "wrong" location. A separate patch will establish redirects from the old locations to the new locations. Some of the projects were not listed in the registry at all, so this patch depends on other patches that add the missing entries. The validation class defined here will eventually move to the os-service-types library, when that repository is ready to receive code. Change-Id: I2785ca8782b592c7af574e0b5a41407610873349 Depends-On: I27765d7760352f4c589168037ddd2e6792d1561f Depends-On: Ie530edd8aa40e5b89f997526e68117cafa68ee9c Signed-off-by: Doug Hellmann <doug@doughellmann.com>
117 lines
2.8 KiB
INI
117 lines
2.8 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
envlist = linters,gerrit,grafyaml,jjb,jenkins-project,zuul
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
passenv = http_proxy HTTP_PROXY https_proxy HTTPS_PROXY no_proxy NO_PROXY
|
|
|
|
[testenv:linters]
|
|
commands =
|
|
{toxinidir}/tools/run-bashate.sh
|
|
flake8
|
|
|
|
[testenv:gerrit]
|
|
deps = PyYAML
|
|
GitPython
|
|
commands =
|
|
{toxinidir}/tools/check_valid_gerrit_projects.py gerrit/projects.yaml gerrit/acls
|
|
{toxinidir}/tools/check_projects_yaml_alphabetized.sh gerrit/projects.yaml
|
|
{toxinidir}/tools/check_valid_gerrit_config.sh gerrit/acls/
|
|
{toxinidir}/tools/check_gerrit_projects_changed.sh
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:irc]
|
|
deps = PyYAML
|
|
irc
|
|
commands =
|
|
{toxinidir}/tools/check_irc_access.py -l accessbot/channels.yaml openstackinfra
|
|
{toxinidir}/tools/irc_tests.py
|
|
{toxinidir}/tools/check-channels-yaml.sh
|
|
|
|
[flake8]
|
|
show-source = True
|
|
exclude = .tox,.test
|
|
ignore = E125,H
|
|
select = H231
|
|
|
|
[testenv:grafyaml]
|
|
basepython = python2.7
|
|
commands = {toxinidir}/tools/grafyaml-validate.sh
|
|
|
|
[testenv:bindep]
|
|
# Do not install any requirements. We want this to be fast and work even if
|
|
# system dependencies are missing, since it's used to tell you what system
|
|
# dependencies are missing! This also means that bindep must be installed
|
|
# separately, outside of the requirements files.
|
|
deps = bindep
|
|
commands = bindep test
|
|
|
|
[testenv:jjb]
|
|
basepython = python2.7
|
|
deps = jenkins-job-builder
|
|
whitelist_externals =
|
|
mkdir
|
|
rm
|
|
commands =
|
|
rm -rf {envdir}/tmp
|
|
mkdir -p {envdir}/tmp/jobs
|
|
pip install -U jenkins/modules/jjb_afs
|
|
jenkins-jobs -l debug test -o {envdir}/tmp/jobs jenkins/jobs
|
|
|
|
[testenv:jenkins-project]
|
|
deps =
|
|
PyYAML
|
|
voluptuous
|
|
jenkins-job-builder
|
|
requests
|
|
commands =
|
|
{toxinidir}/tools/jenkins-projects-checks.py
|
|
|
|
[testenv:zuul]
|
|
basepython = python2.7
|
|
deps =
|
|
jenkins-job-builder==1.6.1
|
|
zuul
|
|
whitelist_externals =
|
|
bash
|
|
find
|
|
jenkins-jobs
|
|
mkdir
|
|
rm
|
|
commands =
|
|
rm -rf {envdir}/tmp
|
|
mkdir -p {envdir}/tmp/jobs
|
|
pip install -U jenkins/modules/jjb_afs
|
|
jenkins-jobs -l debug test -o {envdir}/tmp/jobs jenkins/jobs
|
|
bash -c 'find {envdir}/tmp/jobs -printf "%f\n" > {envdir}/tmp/job-list.txt'
|
|
zuul-server -c tools/zuul.conf-sample -l zuul/layout.yaml -t {envdir}/tmp/job-list.txt
|
|
{toxinidir}/tools/layout-checks.py {envdir}/tmp/job-list.txt
|
|
|
|
[testenv:infra-docs]
|
|
deps =
|
|
Jinja2
|
|
PyYAML
|
|
commands = {toxinidir}/docs-site/generate_infra_index.py {toxinidir}/docs-site/infra-documents.yaml
|
|
|
|
[testenv:specs]
|
|
deps =
|
|
Jinja2
|
|
PyYAML
|
|
commands = {toxinidir}/specs/generate_specs_site.py {toxinidir}/specs/specs.yaml
|
|
|
|
[testenv:dib]
|
|
deps =
|
|
diskimage-builder
|
|
changedir = {toxinidir}/nodepool
|
|
commands = env ELEMENTS_DIR=elements dib-lint
|
|
|
|
[testenv:nodepool]
|
|
commands = nodepool -c {toxinidir}/nodepool/nodepool.yaml config-validate
|