dd32c9287b
The integration tests job takes longest time in horizon jobs. It is worth skipping it for UT only changes (including JS UT). We already do the similar in the tempest job. Irrevalent file list for tempest job is also updated to ignoer JS UT changes. Change-Id: Ie63e9a9361f2fd7111767864043eb8ad3084a900
259 lines
7.4 KiB
YAML
259 lines
7.4 KiB
YAML
- job:
|
|
name: horizon-openstack-tox-base
|
|
parent: openstack-tox
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^.*/locale/.*$
|
|
|
|
- job:
|
|
name: horizon-tox-python3-django
|
|
abstract: true
|
|
parent: horizon-openstack-tox-base
|
|
description: |
|
|
Run tox with different Django version.
|
|
|
|
.. zuul:jobvar: tox_envlist
|
|
|
|
Which tox environment to run
|
|
|
|
.. zuul:jobvar: django_version
|
|
|
|
Django version to be used.
|
|
pip version specifier like ``>=1.11,<2.0`` should be passed.
|
|
|
|
pre-run: playbooks/horizon-tox-django/pre.yaml
|
|
run: playbooks/horizon-tox-django/run.yaml
|
|
vars:
|
|
tox_envlist: py36
|
|
required-projects:
|
|
- name: openstack/horizon
|
|
|
|
- job:
|
|
name: horizon-tox-python3-django22
|
|
parent: horizon-tox-python3-django
|
|
vars:
|
|
django_version: '>=2.2,<3.0'
|
|
|
|
- job:
|
|
name: horizon-selenium-headless
|
|
parent: horizon-openstack-tox-base
|
|
pre-run: playbooks/horizon-selenium-headless/pre.yaml
|
|
vars:
|
|
tox_envlist: selenium-headless
|
|
|
|
- job:
|
|
name: horizon-integration-tests
|
|
parent: devstack
|
|
pre-run: playbooks/horizon-devstack-integration/pre.yaml
|
|
run: playbooks/horizon-devstack-integration/run.yaml
|
|
post-run: playbooks/horizon-devstack-integration/post.yaml
|
|
roles:
|
|
- zuul: openstack-infra/devstack
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^.*/locale/.*$
|
|
# Unit tests are not related to the integration tests
|
|
- ^horizon/test/unit/.*$
|
|
- ^openstack_auth/tests/unit/.*$
|
|
- ^openstack_dashboard/test/unit/.*$
|
|
- ^openstack_dashboard/contrib/.*/tests.py$
|
|
- ^openstack_dashboard/dashboards/.*/tests.py$
|
|
# JavaScript unit tests are not related to the integration tests
|
|
- ^openstack_dashboard/.*/[^/]*\.spec\.js$
|
|
- ^horizon/static/.*/[^/]*\.spec\.js$
|
|
vars:
|
|
devstack_services:
|
|
horizon: true
|
|
tox_envlist: integration
|
|
|
|
- job:
|
|
name: horizon-dsvm-tempest-plugin
|
|
parent: devstack-tempest
|
|
required-projects: &base_required_projects
|
|
- name: openstack/horizon
|
|
- name: openstack/tempest
|
|
- name: openstack/tempest-horizon
|
|
irrelevant-files: &base_irrelevant_files
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^.*/locale/.*$
|
|
# Test codes are not related to tempest tests
|
|
# as tempest is defined in a separete repository
|
|
- ^horizon/test/.*$
|
|
- ^openstack_auth/tests/.*$
|
|
- ^openstack_dashboard/test/.*$
|
|
- ^openstack_dashboard/contrib/.*/tests.py$
|
|
- ^openstack_dashboard/dashboards/.*/tests.py$
|
|
# JavaScript unit tests are not related to tempest tests
|
|
- ^openstack_dashboard/.*/[^/]*\.spec\.js$
|
|
- ^horizon/static/.*/[^/]*\.spec\.js$
|
|
vars: &base_vars
|
|
devstack_localrc:
|
|
TEMPEST_PLUGINS: "{{ ansible_user_dir }}/src/opendev.org/openstack/tempest-horizon"
|
|
USE_PYTHON3: true
|
|
devstack_services:
|
|
horizon: true
|
|
tempest: true
|
|
tempest_concurrency: 2
|
|
tempest_test_regex: horizon
|
|
tox_envlist: all
|
|
|
|
- job:
|
|
name: horizon-tempest-plugin-ipv6
|
|
parent: devstack-tempest-ipv6
|
|
required-projects: *base_required_projects
|
|
irrelevant-files: *base_irrelevant_files
|
|
vars: *base_vars
|
|
|
|
- job:
|
|
# Security testing for known issues
|
|
name: horizon-tox-bandit-baseline
|
|
parent: openstack-tox
|
|
timeout: 2400
|
|
vars:
|
|
tox_envlist: bandit-baseline
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^.*/locale/.*$
|
|
- ^doc/.*$
|
|
- ^releasenotes/.*$
|
|
- ^setup.cfg$
|
|
- ^tools/.*$
|
|
|
|
- job:
|
|
name: nodejs10-npm-run-lint
|
|
parent: nodejs-npm-run-lint
|
|
description: |
|
|
Run lint using Node 10 for horizon plugins.
|
|
vars:
|
|
node_version: 10
|
|
nodeset: ubuntu-bionic
|
|
required-projects:
|
|
openstack/horizon
|
|
|
|
- job:
|
|
name: nodejs10-npm-run-test
|
|
parent: nodejs-npm-run-test
|
|
description: |
|
|
Run test using Node 10 for horizon plugins.
|
|
vars:
|
|
node_version: 10
|
|
nodeset: ubuntu-bionic
|
|
required-projects:
|
|
openstack/horizon
|
|
|
|
- project-template:
|
|
name: horizon-nodejs10-jobs
|
|
description: |
|
|
Run lint and test jobs using Node 10 (LTS) for horizon plugins.
|
|
check:
|
|
jobs:
|
|
- nodejs10-npm-run-lint
|
|
- nodejs10-npm-run-test
|
|
gate:
|
|
jobs:
|
|
- nodejs10-npm-run-lint
|
|
- nodejs10-npm-run-test
|
|
|
|
- job:
|
|
name: horizon-integration-tests-xstatic-master
|
|
parent: horizon-integration-tests
|
|
required-projects: &xstatic-projects
|
|
- openstack/horizon
|
|
- openstack/xstatic-angular
|
|
- openstack/xstatic-angular-bootstrap
|
|
- openstack/xstatic-angular-gettext
|
|
- openstack/xstatic-angular-lrdragndrop
|
|
- openstack/xstatic-angular-smart-table
|
|
- openstack/xstatic-bootstrap-datepicker
|
|
- openstack/xstatic-bootstrap-scss
|
|
- openstack/xstatic-bootswatch
|
|
- openstack/xstatic-d3
|
|
- openstack/xstatic-font-awesome
|
|
- openstack/xstatic-hogan
|
|
- openstack/xstatic-jasmine
|
|
- openstack/xstatic-jquery-migrate
|
|
- openstack/xstatic-jquery.quicksearch
|
|
- openstack/xstatic-jquery.tablesorter
|
|
- openstack/xstatic-jsencrypt
|
|
- openstack/xstatic-mdi
|
|
- openstack/xstatic-rickshaw
|
|
- openstack/xstatic-roboto-fontface
|
|
- openstack/xstatic-spin
|
|
- x/xstatic-angular-fileupload
|
|
|
|
- job:
|
|
name: horizon-tox-py36-xstatic-master
|
|
parent: openstack-tox-py36
|
|
required-projects: *xstatic-projects
|
|
|
|
- job:
|
|
name: horizon-nodejs10-npm-run-test-xstatic-master
|
|
parent: nodejs10-npm-run-test
|
|
required-projects: *xstatic-projects
|
|
pre-run: playbooks/npm-test-xstatic-master/pre.yaml
|
|
|
|
- project-template:
|
|
name: horizon-nodejs10-jobs-nonvoting
|
|
description: |
|
|
Run lint and test jobs using Node 10 (LTS) for horizon plugins.
|
|
check:
|
|
jobs:
|
|
- nodejs10-npm-run-lint:
|
|
voting: false
|
|
- nodejs10-npm-run-test:
|
|
voting: false
|
|
|
|
- project-template:
|
|
name: horizon-non-primary-django-jobs
|
|
description: |
|
|
Run unit tests with non-primary Django versions.
|
|
check:
|
|
jobs:
|
|
# Currently we only support Django 2.2, so there is no need
|
|
# to run tests with different versions of Django.
|
|
# We specify a job in openstack-python3-ussuri-jobs(-horizon)
|
|
# to keep this project template as it is used in horizon plugins.
|
|
- openstack-tox-py37
|
|
# NOTE: We keep it as a template even though it is not used now.
|
|
# - horizon-tox-python3-django22
|
|
gate:
|
|
jobs:
|
|
- openstack-tox-py37
|
|
# - horizon-tox-python3-django22
|
|
|
|
- project:
|
|
templates:
|
|
- check-requirements
|
|
- horizon-nodejs10-jobs
|
|
- horizon-non-primary-django-jobs
|
|
- openstack-lower-constraints-jobs
|
|
- openstack-python3-ussuri-jobs
|
|
- periodic-stable-jobs
|
|
- publish-openstack-docs-pti
|
|
- release-notes-jobs-python3
|
|
check:
|
|
jobs:
|
|
- horizon-selenium-headless
|
|
- horizon-integration-tests
|
|
- horizon-dsvm-tempest-plugin
|
|
- horizon-tox-bandit-baseline
|
|
- horizon-tempest-plugin-ipv6
|
|
gate:
|
|
queue: horizon
|
|
jobs:
|
|
- horizon-dsvm-tempest-plugin
|
|
- horizon-selenium-headless
|
|
- horizon-integration-tests
|
|
- horizon-tempest-plugin-ipv6
|
|
experimental:
|
|
jobs:
|
|
- horizon-integration-tests-xstatic-master
|
|
- horizon-tox-py36-xstatic-master
|
|
- horizon-nodejs10-npm-run-test-xstatic-master
|