- 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 required-projects: - openstack/horizon - openstack/requirements 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 tox_constraints_file: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" - 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_services: horizon: true tempest: true tempest_concurrency: 2 tempest_test_regex: horizon tempest_plugins: - tempest-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: horizon-nodejs10-run-lint parent: nodejs-run-lint description: | Run lint using Node 10 for horizon plugins. vars: node_version: 10 tox_constraints_file: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" nodeset: ubuntu-bionic pre-run: playbooks/horizon-nodejs/pre.yaml required-projects: - openstack/horizon - openstack/requirements - job: name: horizon-nodejs10-run-test parent: nodejs-run-test-browser description: | Run test using Node 10 for horizon plugins. vars: node_version: 10 tox_constraints_file: "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/requirements'].src_dir }}/upper-constraints.txt" pre-run: playbooks/horizon-nodejs/pre.yaml nodeset: ubuntu-bionic required-projects: - openstack/horizon - openstack/requirements - project-template: name: horizon-nodejs10-jobs description: | Run lint and test jobs using Node 10 (LTS) for horizon plugins. check: jobs: - horizon-nodejs10-run-lint - horizon-nodejs10-run-test gate: jobs: - horizon-nodejs10-run-lint - horizon-nodejs10-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-run-test-xstatic-master parent: horizon-nodejs10-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: - horizon-nodejs10-run-lint: voting: false - horizon-nodejs10-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-victoria-jobs(-horizon) # to keep this project template as it is used in horizon plugins. - openstack-tox-py38 # NOTE: We keep it as a template even though it is not used now. # - horizon-tox-python3-django22 gate: jobs: - openstack-tox-py38 # - horizon-tox-python3-django22 - project: templates: - check-requirements - horizon-nodejs10-jobs - horizon-non-primary-django-jobs - openstack-lower-constraints-jobs - openstack-python3-victoria-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-run-test-xstatic-master