From ae576e6d6764e35f6354158f5768121e66bc9f13 Mon Sep 17 00:00:00 2001 From: lpiwowar Date: Tue, 16 Nov 2021 13:21:22 +0100 Subject: [PATCH] DNM - devstack-admin-plugins job test Change-Id: I77a16e9c96fd731bf0833c624c2fbc90ab753c2f --- .zuul.yaml | 403 +++++++++++--------------------------------- playbooks/post.yaml | 20 +++ playbooks/run.yaml | 11 ++ 3 files changed, 134 insertions(+), 300 deletions(-) create mode 100644 playbooks/post.yaml create mode 100644 playbooks/run.yaml diff --git a/.zuul.yaml b/.zuul.yaml index 505f2c52..801e81cb 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -6,320 +6,123 @@ - release-notes-jobs-python3 check: jobs: - - python-tempestconf-tempest-devstack-admin - - python-tempestconf-tempest-devstack-admin-train - - python-tempestconf-tempest-devstack-admin-ussuri - - python-tempestconf-tempest-devstack-admin-victoria - - python-tempestconf-tempest-devstack-admin-wallaby - - python-tempestconf-tempest-devstack-admin-xena - - python-tempestconf-tempest-devstack-demo - # TODO(mkopec) temporarily disabled to unblock gates - #- python-tempestconf-tempest-devstack-admin-plugins - - python-tempestconf-tempest-packstack-admin: - voting: false - - python-tempestconf-tempest-packstack-demo: - voting: false - - refstack-client-devstack-master: - irrelevant-files: &irrelevant-files - - config_tempest/tests/.*$ - - ^doc/.*$ - - ^releasenotes/.*$ - - ^.*\.rst$ - - tripleo-ci-centos-8-content-provider: - irrelevant-files: *irrelevant-files - - tripleo-ci-centos-8-scenario002-standalone: - irrelevant-files: *irrelevant-files - vars: &standalone - consumer_job: true - build_container_images: false - tags: - - standalone - dependencies: - - tripleo-ci-centos-8-content-provider - - tripleo-ci-centos-8-standalone: - irrelevant-files: *irrelevant-files - vars: *standalone - dependencies: - - tripleo-ci-centos-8-content-provider - - tripleo-ci-centos-8-scenario010-standalone: - irrelevant-files: *irrelevant-files - voting: false - vars: - consumer_job: true - build_container_images: false - tags: - - standalone - - octavia - dependencies: - - tripleo-ci-centos-8-content-provider - - opendev-tox-docs + - heat-functional gate: jobs: - - python-tempestconf-tempest-devstack-admin - - python-tempestconf-tempest-devstack-admin-train - - python-tempestconf-tempest-devstack-admin-ussuri - - python-tempestconf-tempest-devstack-admin-victoria - - python-tempestconf-tempest-devstack-admin-wallaby - - python-tempestconf-tempest-devstack-admin-xena - - python-tempestconf-tempest-devstack-demo - # TODO(mkopec) temporarily disabled to unblock gates - #- python-tempestconf-tempest-devstack-admin-plugins - - refstack-client-devstack-master: - irrelevant-files: *irrelevant-files - - tripleo-ci-centos-8-content-provider: - irrelevant-files: *irrelevant-files - - tripleo-ci-centos-8-scenario002-standalone: - irrelevant-files: *irrelevant-files - vars: *standalone - dependencies: - - tripleo-ci-centos-8-content-provider - - tripleo-ci-centos-8-standalone: - irrelevant-files: *irrelevant-files - vars: *standalone - dependencies: - - tripleo-ci-centos-8-content-provider - - opendev-tox-docs + - heat-functional promote: jobs: - - opendev-promote-docs + - heat-functional experimental: jobs: - - python-tempestconf-tempest-devstack-demo-train - - python-tempestconf-tempest-devstack-demo-ussuri - - python-tempestconf-tempest-devstack-demo-victoria - - python-tempestconf-tempest-devstack-demo-wallaby - - python-tempestconf-tempest-devstack-demo-xena - - refstack-client-devstack-train - - refstack-client-devstack-ussuri - - refstack-client-devstack-victoria - - refstack-client-devstack-wallaby - - refstack-client-devstack-xena - + - heat-functional - job: - name: python-tempestconf-devstack-base + name: heat-functional-base parent: devstack - description: Base job for python-tempestconf on a devstack environment + abstract: true + run: playbooks/run.yaml + post-run: playbooks/post.yaml + description: Base heat functional test job + timeout: 7800 + roles: + - zuul: opendev.org/openstack/devstack + - zuul: opendev.org/openstack/tempest required-projects: - - openstack/heat - - openstack/heat-tempest-plugin - - openstack/manila - - openstack/manila-ui - - openstack/manila-tempest-plugin - - openstack/python-manilaclient - - openinfra/python-tempestconf - - openstack/tempest - - openstack/devstack - - openstack/designate - - openstack/designate-tempest-plugin + - openstack/devstack-gate - openstack/barbican - - openstack/barbican-tempest-plugin - - openstack/requirements - roles: - - zuul: openinfra/python-tempestconf - - zuul: openstack/tempest - - zuul: openstack/devstack - vars: - zuul_copy_output: - '{{ devstack_base_dir }}/tempest/tempest.log': logs - '{{ devstack_base_dir }}/tempest/etc/tempest.conf': logs - '{{ zuul.project.src_dir }}/etc/accounts.yaml': logs - tempestconf_pip_virtualenv_python: "python3" - devstack_plugins: - heat: https://opendev.org/openstack/heat - manila: https://opendev.org/openstack/manila - manila-ui: https://opendev.org/openstack/manila-ui - designate: https://opendev.org/openstack/designate - barbican: https://opendev.org/openstack/barbican - devstack_localrc: - USE_PYTHON3: True - MANILA_USE_UWSGI: False - MANILA_USE_MOD_WSGI: False - LIBS_FROM_GIT: python-manilaclient - devstack_services: &devstack_services - h-eng: True - h-api: True - h-api-cfn: True - h-api-cw: True - designate: True - designate-central: True - designate-api: True - designate-worker: True - designate-producer: True - designate-mdns: True - barbican: True - irrelevant-files: *irrelevant-files - -- job: - name: python-tempestconf-packstack-base - parent: packstack-centos8s - description: Base job for python-tempestconf on packstack environment - required-projects: - - x/packstack - - openinfra/python-tempestconf + - openstack/heat + - openstack/heat-templates + - openstack/heat-tempest-plugin + - openstack/octavia + - openstack/neutron + - openstack/oslo.messaging + - openstack/python-barbicanclient + - openstack/python-heatclient + - openstack/heat-agents - openstack/tempest - - openstack/devstack - post-run: playbooks/upload-logs.yaml - roles: - - zuul: x/packstack - - zuul: openinfra/python-tempestconf - - zuul: openstack/tempest - - zuul: openstack/devstack vars: - tempest_concurrency: 2 - scenario: scenario000 + configure_swap_size: 8192 + tempest_plugins: + - heat-tempest-plugin + devstack_localrc: + TEMPEST_PLUGINS: '/opt/stack/heat-tempest-plugin' + HEAT_USE_MOD_WSGI: True + CEILOMETER_PIPELINE_INTERVAL: 60 + devstack_services: + tls-proxy: false + s-account: false + s-container: false + s-object: false + s-proxy: false + tempest: true + devstack_plugins: + barbican: https://opendev.org/openstack/barbican + heat: https://opendev.org/openstack/heat + octavia: https://opendev.org/openstack/octavia + devstack_local_conf: + post-config: + $HEAT_CONF: + DEFAULT: + convergence_engine: true + stack_scheduler_hints: true + hidden_stack_tags: hidden + encrypt_parameters_and_properties: True + logging_exception_prefix: "%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s" + enable_stack_adopt: true + enable_stack_abandon: true + max_stacks_per_tenant: 256 + heat_api: + workers: 2 + heat_api_cfn: + workers: 2 + cache: + enabled: True + eventlet_opts: + client_socket_timeout: 120 + oslo_messaging_notifications: + driver: messagingv2 + test-config: + $TEMPEST_CONFIG: + service_available: + heat: True + heat_plugin: + convergence_engine_enabled: true + minimal_image_ref: ${DEFAULT_IMAGE_NAME:-cirros-0.3.6-x86_64-disk} + instance_type: m1.heat_int + minimal_instance_type: m1.heat_micro + image_ref: Fedora-Cloud-Base-33-1.2.x86_64 + hidden_stack_tag: hidden + heat_config_notify_script: /opt/stack/heat-agents/heat-config/bin/heat-config-notify + boot_config_env: /opt/stack/heat-templates/hot/software-config/boot-config/test_image_env.yaml + credential_secret_id: $OS_CREDENTIAL_SECRET_ID + heat_features_enabled: + multi_cloud: True + # disable cinder backup feature + volume-feature-enabled: + backup: False + test_results_stage_name: test_results zuul_copy_output: - /opt/stack/tempest/etc/tempest.conf: logs - /opt/stack/tempest/tempest.log: logs - /etc/openstack/accounts.yaml: logs - irrelevant-files: *irrelevant-files + '{{ devstack_base_dir }}/tempest/etc/tempest.conf': logs + '{{ devstack_base_dir }}/tempest/etc/accounts.yaml': logs + '{{ devstack_base_dir }}/tempest/tempest.log': logs + '{{ stage_dir }}/{{ test_results_stage_name }}.subunit': logs + '{{ stage_dir }}/{{ test_results_stage_name }}.html': logs + '{{ stage_dir }}/stackviz': logs + extensions_to_txt: + conf: true + log: true + yaml: true + yml: true + irrelevant-files: + - ^.*\.rst$ + - ^api-ref/.*$ + - ^doc/.*$ + - ^heat/locale/.*$ + - ^heat/tests/.*$ + - ^releasenotes/.*$ - job: - name: python-tempestconf-tempest-devstack-admin-plugins - parent: python-tempestconf-devstack-base - description: | - Tempest job for python-tempestconf on a devstack environment as the admin user. - run: playbooks/python-tempestconf-tempest-devstack.yaml - vars: - # creator role is required for Barbican tests - additional_tempestconf_params: "auth.tempest_roles creator image_signature_verification.enforced False" - test_regex: - - 'heat_tempest_plugin' - - 'designate_tempest_plugin' - - 'barbican_tempest_plugin' - exclude_regex: - - 'heat_tempest_plugin.tests.functional.test_nova_server_networks.CreateServerTest.test_create_update_server_with_subnet' - - 'heat_tempest_plugin.tests.scenario.test_volumes.VolumeBackupRestoreIntegrationTest.test_cinder_volume_create_backup_restore' - - 'heat_tempest_plugin.tests.scenario.test_server_software_config.SoftwareConfigIntegrationTest.test_server_software_config' - - 'heat_tempest_plugin.tests.scenario.test_server_signal.ServerSignalIntegrationTest.test_server_signal_userdata_format_software_config' - - 'heat_tempest_plugin.tests.scenario.test_aodh_alarm.AodhAlarmTest.test_alarm' - - 'heat_tempest_plugin.tests.scenario.test_server_cfn_init.CfnInitIntegrationTest.test_server_cfn_init' - - 'heat_tempest_plugin.tests.scenario.test_base_resources.BasicResourcesTest.test_base_resources_integration' - - 'heat_tempest_plugin.tests.functional.test_os_wait_condition.OSWaitCondition.test_create_stack_with_multi_signal_waitcondition' - user: admin - cloud_user: devstack-admin - plugins_paths: - - "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/heat-tempest-plugin'].src_dir }}" - - "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/designate-tempest-plugin'].src_dir }}" - - "{{ ansible_user_dir }}/{{ zuul.projects['opendev.org/openstack/barbican-tempest-plugin'].src_dir }}" - tempest_concurrency: 2 + name: heat-functional + parent: heat-functional-base -- job: - name: python-tempestconf-tempest-devstack-admin - parent: python-tempestconf-devstack-base - description: | - Tempest job for python-tempestconf on a devstack environment as the admin user. - run: playbooks/python-tempestconf-tempest-devstack.yaml - vars: - user: admin - cloud_user: devstack-admin - tempest_concurrency: 2 - -- job: - name: python-tempestconf-tempest-devstack-admin-train - parent: python-tempestconf-tempest-devstack-admin - override-checkout: stable/train - vars: - branch: stable/train - -- job: - name: python-tempestconf-tempest-devstack-admin-ussuri - parent: python-tempestconf-tempest-devstack-admin - override-checkout: stable/ussuri - vars: - branch: stable/ussuri - -- job: - name: python-tempestconf-tempest-devstack-admin-victoria - parent: python-tempestconf-tempest-devstack-admin - override-checkout: stable/victoria - vars: - branch: stable/victoria - -- job: - name: python-tempestconf-tempest-devstack-admin-wallaby - parent: python-tempestconf-tempest-devstack-admin - override-checkout: stable/wallaby - vars: - branch: stable/wallaby - -- job: - name: python-tempestconf-tempest-devstack-admin-xena - parent: python-tempestconf-tempest-devstack-admin - override-checkout: stable/xena - vars: - branch: stable/xena - -- job: - name: python-tempestconf-tempest-devstack-demo - parent: python-tempestconf-devstack-base - description: | - Tempest job for python-tempestconf on a devstack environment as the demo user. - run: playbooks/python-tempestconf-tempest-devstack.yaml - vars: - additional_tempestconf_params: "auth.tempest_roles member" - user: demo - cloud_user: devstack - test_demo: true - cloud_admin: devstack-admin - # concurrency is reduced in this job, because a minimal accounts - # file is used - tempest_concurrency: 1 - # skip until https://storyboard.openstack.org/#!/story/2004209 - # is resolved - tempest_exclude_regex: 'tempest.api.compute.servers' - -- job: - name: python-tempestconf-tempest-devstack-demo-train - parent: python-tempestconf-tempest-devstack-demo - override-checkout: stable/train - vars: - branch: stable/train - -- job: - name: python-tempestconf-tempest-devstack-demo-ussuri - parent: python-tempestconf-tempest-devstack-demo - override-checkout: stable/ussuri - vars: - branch: stable/ussuri - -- job: - name: python-tempestconf-tempest-devstack-demo-victoria - parent: python-tempestconf-tempest-devstack-demo - override-checkout: stable/victoria - vars: - branch: stable/victoria - -- job: - name: python-tempestconf-tempest-devstack-demo-wallaby - parent: python-tempestconf-tempest-devstack-demo - override-checkout: stable/wallaby - vars: - branch: stable/wallaby - -- job: - name: python-tempestconf-tempest-devstack-demo-xena - parent: python-tempestconf-tempest-devstack-demo - override-checkout: stable/xena - vars: - branch: stable/xena - -- job: - name: python-tempestconf-tempest-packstack-admin - parent: python-tempestconf-packstack-base - description: | - Tempest job for python-tempestconf on a packstack environment as the admin user. - run: playbooks/python-tempestconf-tempest-packstack.yaml - vars: - user: admin - -- job: - name: python-tempestconf-tempest-packstack-demo - parent: python-tempestconf-packstack-base - description: | - Tempest job for python-tempestconf on a packstack environment as the demo user. - run: playbooks/python-tempestconf-tempest-packstack.yaml - vars: - user: demo - test_demo: true - cloud_admin: packstack-admin diff --git a/playbooks/post.yaml b/playbooks/post.yaml new file mode 100644 index 00000000..a2826d30 --- /dev/null +++ b/playbooks/post.yaml @@ -0,0 +1,20 @@ +- hosts: primary + name: Clear test env + tasks: + - name: clear test env + shell: + cmd: | + /opt/stack/heat/heat_integrationtests/cleanup_test_env.sh + executable: /bin/bash + chdir: "{{ zuul.project.src_dir }}" + environment: + DEVSTACK_BASE_DIR: "{{ devstack_base_dir }}" + become: true + +- hosts: tempest + become: true + roles: + - role: fetch-subunit-output + zuul_work_dir: '{{ devstack_base_dir }}/tempest' + - role: process-stackviz + diff --git a/playbooks/run.yaml b/playbooks/run.yaml new file mode 100644 index 00000000..d1f99c4e --- /dev/null +++ b/playbooks/run.yaml @@ -0,0 +1,11 @@ +- hosts: all + roles: + - orchestrate-devstack + +- hosts: tempest + roles: + - setup-tempest-run-dir + - setup-tempest-data-dir + - acl-devstack-files + - run-heat-tests +