From 18f3f002cb57e921473e5dbc89046ccae07f502a Mon Sep 17 00:00:00 2001 From: Yuri Weinstein Date: Wed, 8 May 2019 09:15:16 -0700 Subject: [PATCH] qa/test: new suite to test `jewel` clients on `nautilus` cluster This suite will run on nautilus relases only and we will keep running older suite client-upgrade-jewel on previous releases (Similar to https://github.com/ceph/ceph/pull/27934) Signed-off-by: Yuri Weinstein --- .../jewel-client-x/basic/% | 0 .../jewel-client-x/basic/0-cluster/+ | 0 .../basic/0-cluster/openstack.yaml | 4 ++ .../jewel-client-x/basic/0-cluster/start.yaml | 13 +++++ .../basic/1-install/jewel-client-x.yaml | 11 ++++ .../2-workload/run_devstack_tempest.yaml | 56 +++++++++++++++++++ .../basic/supported/centos_7.4.yaml | 1 + .../basic/supported/rhel_7.5.yaml | 1 + .../basic/supported/ubuntu_14.04.yaml | 1 + .../basic/supported/ubuntu_16.04.yaml | 1 + .../jewel-client-x/rbd/% | 0 .../jewel-client-x/rbd/0-cluster/+ | 0 .../rbd/0-cluster/openstack.yaml | 4 ++ .../jewel-client-x/rbd/0-cluster/start.yaml | 14 +++++ .../rbd/1-install/jewel-client-x.yaml | 11 ++++ .../rbd/2-features/defaults.yaml | 6 ++ .../rbd/2-features/layering.yaml | 6 ++ .../3-workload/rbd_notification_tests.yaml | 21 +++++++ .../rbd/supported/centos_7.4.yaml | 1 + .../rbd/supported/rhel_7.5.yaml | 1 + .../rbd/supported/ubuntu_14.04.yaml | 1 + .../rbd/supported/ubuntu_16.04.yaml | 1 + 22 files changed, 154 insertions(+) create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/% create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/+ create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/openstack.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/start.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/1-install/jewel-client-x.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/2-workload/run_devstack_tempest.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/centos_7.4.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/rhel_7.5.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_14.04.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_16.04.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/% create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/+ create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/openstack.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/start.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/1-install/jewel-client-x.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/defaults.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/layering.yaml create mode 100644 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/3-workload/rbd_notification_tests.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/centos_7.4.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/rhel_7.5.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_14.04.yaml create mode 120000 qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_16.04.yaml diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/% b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/% new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/+ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/openstack.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/openstack.yaml new file mode 100644 index 0000000000000..b0f3b9b4da228 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/openstack.yaml @@ -0,0 +1,4 @@ +openstack: + - volumes: # attached to each instance + count: 4 + size: 30 # GB diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/start.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/start.yaml new file mode 100644 index 0000000000000..a4cd7548d96ed --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/0-cluster/start.yaml @@ -0,0 +1,13 @@ +roles: +- - mon.a + - mon.b + - mon.c + - osd.0 + - osd.1 + - osd.2 +- - client.0 +overrides: + ceph: + log-whitelist: + - failed to encode map + fs: xfs diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/1-install/jewel-client-x.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/1-install/jewel-client-x.yaml new file mode 100644 index 0000000000000..f7854751ad2c3 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/1-install/jewel-client-x.yaml @@ -0,0 +1,11 @@ +tasks: +- install: + branch: jewel + exclude_packages: ['ceph-mgr','libcephfs2','libcephfs-devel','libcephfs-dev'] +- print: "**** done install jewel" +upgrade_workload: + sequential: + - install.upgrade: + exclude_packages: ['ceph-test', 'ceph-test-dbg','libcephfs1'] + client.0: + - print: "**** done install.upgrade to -x on client.0" diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/2-workload/run_devstack_tempest.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/2-workload/run_devstack_tempest.yaml new file mode 100644 index 0000000000000..5737d12c70450 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/2-workload/run_devstack_tempest.yaml @@ -0,0 +1,56 @@ +tasks: +- sequential: + - upgrade_workload +- ceph: +- print: "**** done ceph" +- qemu: + client.0: + type: filesystem + cpus: 4 + memory: 12288 + disks: + - image_size: 30720 + - image_size: 30720 + test: https://raw.githubusercontent.com/ceph/ceph/luminous/qa/workunits/rbd/run_devstack_tempest.sh + image_url: https://cloud-images.ubuntu.com/releases/16.04/release/ubuntu-16.04-server-cloudimg-amd64-disk1.img + cloud_config_archive: + - type: text/cloud-config + content: | + users: + - name: stack + lock_passwd: False + shell: /bin/bash + sudo: ["ALL=(root) NOPASSWD:ALL\nDefaults:stack,tempest !requiretty"] + - name: tempest + lock_passwd: False + shell: /bin/bash + sudo: + - "ALL=(root) NOPASSWD:/sbin/ip" + - "ALL=(root) NOPASSWD:/sbin/iptables" + - "ALL=(root) NOPASSWD:/usr/bin/ovsdb-client" + - | + #!/bin/bash -ex + wget -q -O- "http://git.ceph.com/?p=ceph.git;a=blob_plain;f=keys/autobuild.asc" | apt-key add - + wget -q -O /etc/apt/sources.list.d/ceph.list "https://shaman.ceph.com/api/repos/ceph/{ceph_branch}/{ceph_sha1}/ubuntu/xenial/repo" + apt-get update + + mount --bind /mnt/test_b /opt + mkdir /opt/stack + chown -R stack:stack /home/stack + chown -R stack:stack /opt/stack + + mkdir /mnt/log/stack + chmod a+rwx /mnt/log/stack + chown -R stack:stack /mnt/log/stack + + apt-get install -y ceph-common librbd1 + + mkdir /mnt/log/stack/ceph + chown -R stack:stack /mnt/log/stack/ceph + chmod a+rwx /mnt/log/stack/ceph + + # sanity check that the cluster is reachable from the VM + echo '[client]' >> /etc/ceph/ceph.conf + echo 'log file = /mnt/log/stack/ceph/$name.$pid.log' >> /etc/ceph/ceph.conf + rbd --debug-ms=10 --debug-rbd=20 info client.0.1 +- print: "**** done qemu task!" diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/centos_7.4.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/centos_7.4.yaml new file mode 120000 index 0000000000000..dcc00174237db --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/centos_7.4.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/centos_7.4.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/rhel_7.5.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/rhel_7.5.yaml new file mode 120000 index 0000000000000..72133969a7dad --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/rhel_7.5.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/rhel_7.5.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_14.04.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_14.04.yaml new file mode 120000 index 0000000000000..86c02cc7c4d4f --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_14.04.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/ubuntu_14.04.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_16.04.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_16.04.yaml new file mode 120000 index 0000000000000..9dc1ea992848c --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/basic/supported/ubuntu_16.04.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/ubuntu_16.04.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/% b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/% new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/+ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/+ new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/openstack.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/openstack.yaml new file mode 100644 index 0000000000000..b0f3b9b4da228 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/openstack.yaml @@ -0,0 +1,4 @@ +openstack: + - volumes: # attached to each instance + count: 4 + size: 30 # GB diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/start.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/start.yaml new file mode 100644 index 0000000000000..4db664b29bc1a --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/0-cluster/start.yaml @@ -0,0 +1,14 @@ +roles: +- - mon.a + - mon.b + - mon.c + - osd.0 + - osd.1 + - osd.2 + - client.0 +- - client.1 +overrides: + ceph: + log-whitelist: + - failed to encode map + fs: xfs diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/1-install/jewel-client-x.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/1-install/jewel-client-x.yaml new file mode 100644 index 0000000000000..54a2fb2917beb --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/1-install/jewel-client-x.yaml @@ -0,0 +1,11 @@ +tasks: +- install: + branch: jewel + exclude_packages: ['ceph-mgr','libcephfs2','libcephfs-devel','libcephfs-dev'] +- print: "**** done install jewel" +- install.upgrade: + exclude_packages: ['ceph-test', 'ceph-test-dbg','libcephfs1'] + client.1: +- print: "**** done install.upgrade to -x on client.0" +- ceph: +- print: "**** done ceph task" diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/defaults.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/defaults.yaml new file mode 100644 index 0000000000000..dff6623ad03dd --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/defaults.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + client: + rbd default features: 61 + diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/layering.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/layering.yaml new file mode 100644 index 0000000000000..5613d0155abc1 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/2-features/layering.yaml @@ -0,0 +1,6 @@ +overrides: + ceph: + conf: + client: + rbd default features: 1 + diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/3-workload/rbd_notification_tests.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/3-workload/rbd_notification_tests.yaml new file mode 100644 index 0000000000000..1fb68220e9de9 --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/3-workload/rbd_notification_tests.yaml @@ -0,0 +1,21 @@ +tasks: +- workunit: + branch: jewel + clients: + client.0: + - rbd/notify_master.sh + client.1: + - rbd/notify_slave.sh + env: + RBD_FEATURES: "13" +- print: "**** done rbd: old librbd -> new librbd" +- workunit: + branch: jewel + clients: + client.0: + - rbd/notify_slave.sh + client.1: + - rbd/notify_master.sh + env: + RBD_FEATURES: "13" +- print: "**** done rbd: new librbd -> old librbd" diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/centos_7.4.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/centos_7.4.yaml new file mode 120000 index 0000000000000..dcc00174237db --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/centos_7.4.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/centos_7.4.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/rhel_7.5.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/rhel_7.5.yaml new file mode 120000 index 0000000000000..72133969a7dad --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/rhel_7.5.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/rhel_7.5.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_14.04.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_14.04.yaml new file mode 120000 index 0000000000000..86c02cc7c4d4f --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_14.04.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/ubuntu_14.04.yaml \ No newline at end of file diff --git a/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_16.04.yaml b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_16.04.yaml new file mode 120000 index 0000000000000..9dc1ea992848c --- /dev/null +++ b/qa/suites/upgrade/client-upgrade-jewel-nautilus/jewel-client-x/rbd/supported/ubuntu_16.04.yaml @@ -0,0 +1 @@ +../../../../../../distros/all/ubuntu_16.04.yaml \ No newline at end of file -- 2.39.5