From 1bab3433f080a6688cb790f0eb916fb82ce49afe Mon Sep 17 00:00:00 2001 From: ashrod98 Date: Fri, 30 Jun 2023 14:50:11 +0000 Subject: [PATCH] [CI] Add multinode job for cephfs/nfs with cephadm A multinode job creates a controller node that runs manila with other OpenStack components; and an additional compute node to spread the compute VM workload around. `manila-tempest-plugin-multinode-cephfs-nfs-cephadm` replaces the existing `manila-tempest-plugin-cephfs-nfs` in the check queue for this repository. These jobs are different. `manila-tempest-plugin-cephfs-nfs` uses devstack-plugin-ceph to install ceph and nfs-ganesha as standalone components on the devstack host, whereas `manila-tempest-plugin-multinode-cephfs-nfs-cephadm` uses cephadm to deploy ceph, and it includes the deployment of an nfs service. Manila's ceph driver communicates with cephadm deployed nfs via ceph-mgr APIs, and with standalone nfs-ganesha service via DBUS APIs. Ideally we'd run both jobs all the time, however, since these jobs will run individually against the manila repository, we'll just pick the newer one here. Depends-On: I84249ae268dfe00a112c67e5170b679acb318a25 Change-Id: I5162815b66d3f3e8cf8c1e246b61b0ea06c1a270 Co-Authored-by: Goutham Pacha Ravi Signed-off-by: Goutham Pacha Ravi --- zuul.d/manila-tempest-jobs.yaml | 101 +++++++++++++++++++++++++++++++- 1 file changed, 100 insertions(+), 1 deletion(-) diff --git a/zuul.d/manila-tempest-jobs.yaml b/zuul.d/manila-tempest-jobs.yaml index 690b8bc4..1997fa7b 100644 --- a/zuul.d/manila-tempest-jobs.yaml +++ b/zuul.d/manila-tempest-jobs.yaml @@ -492,6 +492,105 @@ NEUTRON_CREATE_INITIAL_NETWORKS: true IP_VERSION: 4 +- job: + name: manila-tempest-plugin-multinode-base + abstract: true + description: | + Base job for testing multinode with Manila. Manila is enabled in + the controller node; and we have an additional compute node. + parent: tempest-multinode-full-py3 + timeout: 10800 + irrelevant-files: *irrelevant-files + required-projects: *manila-tempest-required-projects + vars: + tox_envlist: all + tempest_test_regex: manila_tempest_tests + tempest_plugins: + - manila-tempest-plugin + tempest_concurrency: 8 + devstack_services: + cinder: false + c-bak: false + s-account: false + s-container: false + s-object: false + s-proxy: false + horizon: false + tls-proxy: true + devstack_localrc: + MANILA_USE_DOWNGRADE_MIGRATIONS: false + MANILA_INSTALL_TEMPEST_PLUGIN_SYSTEMWIDE: false + MANILA_ALLOW_NAS_SERVER_PORTS_ON_HOST: true + MANILA_SHARE_MIGRATION_PERIOD_TASK_INTERVAL: 1 + MANILA_SERVER_MIGRATION_PERIOD_TASK_INTERVAL: 10 + MANILA_REPLICA_STATE_UPDATE_INTERVAL: 10 + group-vars: + tempest: + devstack_plugins: + manila: https://opendev.org/openstack/manila + subnode: + devstack_services: + cinder: false + c-bak: false + +- job: + name: manila-tempest-plugin-multinode-cephfs-nfs-cephadm + description: Test CephFS NFS (DHSS=False) in a Multinode devstack env + parent: manila-tempest-plugin-multinode-base + required-projects: + - openstack/devstack-plugin-ceph + vars: + configure_swap_size: 8192 + tempest_concurrency: 2 + # TODO(gouthamr): some tests are disabled due to bugs + # IPv6 Tests: https://bugs.launchpad.net/manila/+bug/1998489 + # snapshot clone fs sync: https://bugs.launchpad.net/manila/+bug/1989273 + tempest_exclude_regex: "\ + (^manila_tempest_tests.tests.scenario.*IPv6.*)|\ + (^manila_tempest_tests.tests.scenario.test_share_basic_ops.TestShareBasicOpsNFS.test_write_data_to_share_created_from_snapshot)" + devstack_localrc: + MYSQL_REDUCE_MEMORY: True + CEPHADM_DEPLOY: True + CEPHADM_DEV_OSD: true + CEPH_LOOPBACK_DISK_SIZE: 40GB + ENABLED_SHARE_PROTOCOLS: NFS + ENABLE_CEPH_MANILA: True + ENABLE_CEPH_NOVA: False + MANILA_CEPH_DRIVER: cephfsnfs + MANILA_CONFIGURE_DEFAULT_TYPES: true + MANILA_DEFAULT_SHARE_TYPE_EXTRA_SPECS: 'snapshot_support=True create_share_from_snapshot_support=True' + MANILA_ENABLED_BACKENDS: cephfsnfs + MANILA_OPTGROUP_cephfsnfs_cephfs_auth_id: manila + MANILA_OPTGROUP_cephfsnfs_cephfs_conf_path: /etc/ceph/ceph.conf + MANILA_OPTGROUP_cephfsnfs_cephfs_nfs_cluster_id: cephfs + MANILA_OPTGROUP_cephfsnfs_cephfs_protocol_helper_type: NFS + MANILA_OPTGROUP_cephfsnfs_driver_handles_share_servers: false + MANILA_OPTGROUP_cephfsnfs_share_driver: manila.share.drivers.cephfs.driver.CephFSDriver + MANILA_SERVICE_IMAGE_ENABLED: True + MANILA_SETUP_IPV6: false + SHARE_DRIVER: manila.share.drivers.cephfs.driver.CephFSDriver + TARGET_DEV_OSD_DIR: /opt/stack + devstack_local_conf: + test-config: + $TEMPEST_CONFIG: + share: + backend_names: cephfsnfs + capability_storage_protocol: NFS + default_share_type_name: default + enable_protocols: nfs + image_password: manila + multitenancy_enabled: false + run_share_group_tests: false + group-vars: + subnode: + devstack_plugins: + devstack-plugin-ceph: https://opendev.org/openstack/devstack-plugin-ceph + devstack_localrc: + REMOTE_CEPH: True + tempest: + devstack_plugins: + devstack-plugin-ceph: https://opendev.org/openstack/devstack-plugin-ceph + - job: name: manila-tempest-plugin-dummy-no-dhss description: Test the Dummy driver with DHSS=False @@ -739,7 +838,7 @@ voting: false - manila-tempest-plugin-cephfs-native-cephadm: voting: false - - manila-tempest-plugin-cephfs-nfs: + - manila-tempest-plugin-multinode-cephfs-nfs-cephadm: voting: false - manila-tempest-plugin-zfsonlinux: voting: false