From a8ca0da5addaa0a12ea1a7760d97926ca9803f7d Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=C3=A9bastien=20Han?= Date: Tue, 6 Dec 2016 11:20:23 +0100 Subject: [PATCH] test: add cluster name support test scenario MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit We need to test the cluster name support in this CI as well. This commit might be prone to debate because it tests 2 things in a single scenario. We first test our ability to deploy a cluster AND the cluster name support. However it's easier to do it this way and will reduce the amount of time for testingg. If we don't do this we will have a duplicate those 2 existing tests into new ones 'only' to test the cluster name support. Signed-off-by: Sébastien Han --- .../centos/7/cluster/group_vars/all | 1 + tests/functional/centos/7/cluster/scenario.py | 36 +++++++++++++++++++ .../dmcrypt-dedicated-journal/group_vars/all | 1 + .../7/dmcrypt-dedicated-journal/scenario.py | 19 ++++++++++ .../group_vars/all | 1 + .../7/dmcrypt-journal-collocation/scenario.py | 19 ++++++++++ .../centos/7/docker-cluster/group_vars/all | 1 + .../centos/7/docker-cluster/scenario.py | 36 +++++++++++++++++++ .../7/journal-collocation/group_vars/all | 1 + .../centos/7/journal-collocation/scenario.py | 20 +++++++++++ .../ubuntu/16.04/cluster/group_vars/all | 1 + .../ubuntu/16.04/cluster/scenario.py | 36 +++++++++++++++++++ tests/scenarios/example.py | 2 +- 13 files changed, 173 insertions(+), 1 deletion(-) create mode 100644 tests/functional/centos/7/cluster/scenario.py create mode 100644 tests/functional/centos/7/dmcrypt-dedicated-journal/scenario.py create mode 100644 tests/functional/centos/7/dmcrypt-journal-collocation/scenario.py create mode 100644 tests/functional/centos/7/docker-cluster/scenario.py create mode 100644 tests/functional/centos/7/journal-collocation/scenario.py create mode 100644 tests/functional/ubuntu/16.04/cluster/scenario.py diff --git a/tests/functional/centos/7/cluster/group_vars/all b/tests/functional/centos/7/cluster/group_vars/all index 2ac2dbd5e..dc312236b 100644 --- a/tests/functional/centos/7/cluster/group_vars/all +++ b/tests/functional/centos/7/cluster/group_vars/all @@ -1,6 +1,7 @@ --- ceph_stable: True +cluster: test public_network: "192.168.1.0/24" cluster_network: "192.168.2.0/24" journal_size: 100 diff --git a/tests/functional/centos/7/cluster/scenario.py b/tests/functional/centos/7/cluster/scenario.py new file mode 100644 index 000000000..601f8f03d --- /dev/null +++ b/tests/functional/centos/7/cluster/scenario.py @@ -0,0 +1,36 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test', + 'subnet': '192.168.1', +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon1': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon2': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': [] + }, + 'mds0': { + 'username': 'vagrant', + 'components': [] + }, + 'rgw0': { + 'username': 'vagrant', + 'components': [] + }, +} diff --git a/tests/functional/centos/7/dmcrypt-dedicated-journal/group_vars/all b/tests/functional/centos/7/dmcrypt-dedicated-journal/group_vars/all index 2357d9ee5..b8f77bd29 100644 --- a/tests/functional/centos/7/dmcrypt-dedicated-journal/group_vars/all +++ b/tests/functional/centos/7/dmcrypt-dedicated-journal/group_vars/all @@ -1,6 +1,7 @@ --- ceph_stable: True +cluster: test public_network: "192.168.11.0/24" cluster_network: "192.168.12.0/24" journal_size: 100 diff --git a/tests/functional/centos/7/dmcrypt-dedicated-journal/scenario.py b/tests/functional/centos/7/dmcrypt-dedicated-journal/scenario.py new file mode 100644 index 000000000..165547295 --- /dev/null +++ b/tests/functional/centos/7/dmcrypt-dedicated-journal/scenario.py @@ -0,0 +1,19 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test' +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['mon', 'mon_initial_members'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': [], + }, +} diff --git a/tests/functional/centos/7/dmcrypt-journal-collocation/group_vars/all b/tests/functional/centos/7/dmcrypt-journal-collocation/group_vars/all index 7ff9feb66..53fce49a8 100644 --- a/tests/functional/centos/7/dmcrypt-journal-collocation/group_vars/all +++ b/tests/functional/centos/7/dmcrypt-journal-collocation/group_vars/all @@ -1,6 +1,7 @@ --- ceph_stable: True +cluster: test public_network: "192.168.13.0/24" cluster_network: "192.168.14.0/24" journal_size: 100 diff --git a/tests/functional/centos/7/dmcrypt-journal-collocation/scenario.py b/tests/functional/centos/7/dmcrypt-journal-collocation/scenario.py new file mode 100644 index 000000000..165547295 --- /dev/null +++ b/tests/functional/centos/7/dmcrypt-journal-collocation/scenario.py @@ -0,0 +1,19 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test' +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['mon', 'mon_initial_members'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': [], + }, +} diff --git a/tests/functional/centos/7/docker-cluster/group_vars/all b/tests/functional/centos/7/docker-cluster/group_vars/all index 5e476c2c6..87c6e1e7b 100644 --- a/tests/functional/centos/7/docker-cluster/group_vars/all +++ b/tests/functional/centos/7/docker-cluster/group_vars/all @@ -8,6 +8,7 @@ mon_containerized_deployment: True osd_containerized_deployment: True mds_containerized_deployment: True rgw_containerized_deployment: True +cluster: test ceph_mon_docker_interface: eth1 ceph_mon_docker_subnet: "192.168.15.0/24" journal_size: 100 diff --git a/tests/functional/centos/7/docker-cluster/scenario.py b/tests/functional/centos/7/docker-cluster/scenario.py new file mode 100644 index 000000000..160a5ecd4 --- /dev/null +++ b/tests/functional/centos/7/docker-cluster/scenario.py @@ -0,0 +1,36 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test', + 'subnet': '192.168.15', +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon1': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon2': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': [] + }, + 'mds0': { + 'username': 'vagrant', + 'components': [] + }, + 'rgw0': { + 'username': 'vagrant', + 'components': [] + }, +} diff --git a/tests/functional/centos/7/journal-collocation/group_vars/all b/tests/functional/centos/7/journal-collocation/group_vars/all index 95e343693..81857e670 100644 --- a/tests/functional/centos/7/journal-collocation/group_vars/all +++ b/tests/functional/centos/7/journal-collocation/group_vars/all @@ -1,6 +1,7 @@ --- ceph_stable: True +cluster: test public_network: "192.168.3.0/24" cluster_network: "192.168.4.0/24" journal_size: 100 diff --git a/tests/functional/centos/7/journal-collocation/scenario.py b/tests/functional/centos/7/journal-collocation/scenario.py new file mode 100644 index 000000000..1068f4405 --- /dev/null +++ b/tests/functional/centos/7/journal-collocation/scenario.py @@ -0,0 +1,20 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test' +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['mon', 'mon_initial_members'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': ['collocated_journals'], + 'devices': ['/dev/sda', '/dev/sdb'], + }, +} diff --git a/tests/functional/ubuntu/16.04/cluster/group_vars/all b/tests/functional/ubuntu/16.04/cluster/group_vars/all index 9cb9f11ee..d9f58f30e 100644 --- a/tests/functional/ubuntu/16.04/cluster/group_vars/all +++ b/tests/functional/ubuntu/16.04/cluster/group_vars/all @@ -1,6 +1,7 @@ --- ceph_stable: True +cluster: test public_network: "192.168.5.0/24" cluster_network: "192.168.6.0/24" journal_size: 100 diff --git a/tests/functional/ubuntu/16.04/cluster/scenario.py b/tests/functional/ubuntu/16.04/cluster/scenario.py new file mode 100644 index 000000000..38a71c045 --- /dev/null +++ b/tests/functional/ubuntu/16.04/cluster/scenario.py @@ -0,0 +1,36 @@ +# Basic information about ceph and its configuration +ceph = { + 'releases': ['infernalis', 'jewel'], + 'cluster_name': 'test', + 'subnet': '192.168.5', +} + +# remote nodes to test, with anything specific to them that might be useful for +# tests to get. Each one of these can get requested as a py.test fixture to +# validate information. +nodes = { + 'mon0': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon1': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'mon2': { + 'username': 'vagrant', + 'components': ['conf_tests'] + }, + 'osd0': { + 'username': 'vagrant', + 'components': [] + }, + 'mds0': { + 'username': 'vagrant', + 'components': [] + }, + 'rgw0': { + 'username': 'vagrant', + 'components': [] + }, +} diff --git a/tests/scenarios/example.py b/tests/scenarios/example.py index 7be1c2b55..8b69adf22 100644 --- a/tests/scenarios/example.py +++ b/tests/scenarios/example.py @@ -6,7 +6,7 @@ # Basic information about ceph and its configuration ceph = { 'releases': ['jewel', 'infernalis'], - 'cluster_name': 'ceph' + 'cluster_name': 'test' } # remote nodes to test, with anything specific to them that might be useful for -- 2.39.5