From 3852ecdfb340de97b043cb9cf6d87bdb31f99efa Mon Sep 17 00:00:00 2001 From: Guillaume Abrioux Date: Fri, 16 Feb 2018 13:53:52 +0100 Subject: [PATCH] ci: add tripleo scenario testing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This should help to see earlier any failure in a tripleo deployment scenario. Signed-off-by: Guillaume Abrioux (cherry picked from commit 707458c979f17632d97c205e29524cadc9dec5b3) Signed-off-by: Sébastien Han --- .../centos/7/ooo-collocation/Vagrantfile | 1 + .../7/ooo-collocation/ceph-override.json | 1 + .../functional/centos/7/ooo-collocation/hosts | 97 +++++++++++++++++++ .../7/ooo-collocation/vagrant_variables.yml | 63 ++++++++++++ tox.ini | 5 +- 5 files changed, 166 insertions(+), 1 deletion(-) create mode 120000 tests/functional/centos/7/ooo-collocation/Vagrantfile create mode 120000 tests/functional/centos/7/ooo-collocation/ceph-override.json create mode 100644 tests/functional/centos/7/ooo-collocation/hosts create mode 100644 tests/functional/centos/7/ooo-collocation/vagrant_variables.yml diff --git a/tests/functional/centos/7/ooo-collocation/Vagrantfile b/tests/functional/centos/7/ooo-collocation/Vagrantfile new file mode 120000 index 000000000..dfd7436c9 --- /dev/null +++ b/tests/functional/centos/7/ooo-collocation/Vagrantfile @@ -0,0 +1 @@ +../../../../../Vagrantfile \ No newline at end of file diff --git a/tests/functional/centos/7/ooo-collocation/ceph-override.json b/tests/functional/centos/7/ooo-collocation/ceph-override.json new file mode 120000 index 000000000..775cb006a --- /dev/null +++ b/tests/functional/centos/7/ooo-collocation/ceph-override.json @@ -0,0 +1 @@ +../cluster/ceph-override.json \ No newline at end of file diff --git a/tests/functional/centos/7/ooo-collocation/hosts b/tests/functional/centos/7/ooo-collocation/hosts new file mode 100644 index 000000000..bbef74527 --- /dev/null +++ b/tests/functional/centos/7/ooo-collocation/hosts @@ -0,0 +1,97 @@ +all: + vars: + admin_secret: AQBSV4xaAAAAABAA3VUTiOZTHecau2SnAEVPYQ== + ceph_conf_overrides: + global: {osd_pool_default_pg_num: 8, osd_pool_default_pgp_num: 8, osd_pool_default_size: 1, + rgw_keystone_accepted_roles: 'Member, admin', rgw_keystone_admin_domain: default, + rgw_keystone_admin_password: RtYPg7AUdsZCGv4Z4rF8FvnaR, rgw_keystone_admin_project: service, + rgw_keystone_admin_user: swift, rgw_keystone_api_version: 3, rgw_keystone_implicit_tenants: 'true', + rgw_keystone_url: 'http://192.168.95.10:5000', rgw_s3_auth_use_keystone: 'true'} + ceph_docker_image: ceph/daemon + ceph_docker_image_tag: tag-stable-3.0-luminous-centos-7 + ceph_docker_registry: docker.io + ceph_origin: repository + ceph_repository: community + ceph_release: luminous + ceph_stable: true + cephfs: cephfs + cephfs_data: manila_data + cephfs_metadata: manila_metadata + cephfs_pools: + - {name: manila_data, pgs: 8} + - {name: manila_metadata, pgs: 8} + cluster_network: 192.168.96.0/24 + containerized_deployment: true + devices: [/dev/sda, /dev/sdb, /dev/sdc] + docker: true + fsid: 6e008d48-1661-11e8-8546-008c3214218a + generate_fsid: false + ip_version: ipv4 + ireallymeanit: 'yes' + journal_size: 512 + keys: + - {key: AQBSV4xaAAAAABAAmtVVVGQiKWNQ+OC6VxByFg==, mgr_cap: allow *, mode: '0600', + mon_cap: allow r, name: client.openstack, osd_cap: 'allow class-read object_prefix + rbd_children, allow rwx pool=volumes, allow rwx pool=backups, allow rwx pool=vms, + allow rwx pool=images, allow rwx pool=metrics'} + - {key: AQBSV4xaAAAAABAAXiRF4aNQbrXMZhdODHQ8QA==, mds_cap: allow *, mgr_cap: allow + *, mode: '0600', mon_cap: 'allow r, allow command \\\"auth del\\\", allow + command \\\"auth caps\\\", allow command \\\"auth get\\\", allow command \\\"auth + get-or-create\\\"', name: client.manila, osd_cap: allow rw} + - {key: AQBSV4xaAAAAABAADyV1zQEcxTPs9QegC1MlMw==, mgr_cap: allow *, mode: '0600', + mon_cap: allow rw, name: client.radosgw, osd_cap: allow rwx} + mds_use_fqdn: false + mon_use_fqdn: false + monitor_address_block: 192.168.95.0/24 + monitor_secret: AQBSV4xaAAAAABAALqm4vRHcITs4/041TwluMg== + ntp_service_enabled: false + openstack_config: true + openstack_keys: + - {key: AQBSV4xaAAAAABAAmtVVVGQiKWNQ+OC6VxByFg==, mgr_cap: allow *, mode: '0600', + mon_cap: allow r, name: client.openstack, osd_cap: 'allow class-read object_prefix + rbd_children, allow rwx pool=volumes, allow rwx pool=backups, allow rwx pool=vms, + allow rwx pool=images, allow rwx pool=metrics'} + - {key: AQBSV4xaAAAAABAAXiRF4aNQbrXMZhdODHQ8QA==, mds_cap: allow *, mgr_cap: allow + *, mode: '0600', mon_cap: 'allow r, allow command \\\"auth del\\\", allow + command \\\"auth caps\\\", allow command \\\"auth get\\\", allow command \\\"auth + get-or-create\\\"', name: client.manila, osd_cap: allow rw} + - {key: AQBSV4xaAAAAABAADyV1zQEcxTPs9QegC1MlMw==, mgr_cap: allow *, mode: '0600', + mon_cap: allow rw, name: client.radosgw, osd_cap: allow rwx} + openstack_pools: + - {name: images, pg_num: 8, rule_name: ''} + - {name: metrics, pg_num: 8, rule_name: ''} + - {name: backups, pg_num: 8, rule_name: ''} + - {name: vms, pg_num: 8, rule_name: ''} + - {name: volumes, pg_num: 8, rule_name: ''} + osd_objectstore: filestore + osd_scenario: collocated + ceph_osd_docker_run_script_path: /opt + pools: [] + public_network: 192.168.95.0/24 + radosgw_address_block: 192.168.95.0/24 + radosgw_civetweb_port: '8080' + radosgw_keystone: true + radosgw_keystone_ssl: false + user_config: true +clients: + hosts: + client0: {} +mdss: + hosts: + mon0: {} +mgrs: + hosts: + mon0: {} +mons: + hosts: + mon0: {} +nfss: + hosts: {} +osds: + hosts: + osd0: {} +rbdmirrors: + hosts: {} +rgws: + hosts: + mon0: {} diff --git a/tests/functional/centos/7/ooo-collocation/vagrant_variables.yml b/tests/functional/centos/7/ooo-collocation/vagrant_variables.yml new file mode 100644 index 000000000..ec461f229 --- /dev/null +++ b/tests/functional/centos/7/ooo-collocation/vagrant_variables.yml @@ -0,0 +1,63 @@ +--- + +# DEPLOY CONTAINERIZED DAEMONS +docker: True + +# DEFINE THE NUMBER OF VMS TO RUN +mon_vms: 1 +osd_vms: 1 +mds_vms: 0 +rgw_vms: 0 +nfs_vms: 0 +rbd_mirror_vms: 0 +client_vms: 1 +iscsi_gw_vms: 0 +mgr_vms: 0 + +# Deploy RESTAPI on each of the Monitors +restapi: true + +# SUBNETS TO USE FOR THE VMS +public_subnet: 192.168.95 +cluster_subnet: 192.168.96 + +# MEMORY +# set 1024 for CentOS +memory: 1024 + +# Disks +# For libvirt use disks: "[ '/dev/vdb', '/dev/vdc' ]" +# For CentOS7 use disks: "[ '/dev/sda', '/dev/sdb' ]" +disks: "[ '/dev/sda', '/dev/sdb', '/dev/sdc' ]" + +# VAGRANT BOX +# Ceph boxes are *strongly* suggested. They are under better control and will +# not get updated frequently unless required for build systems. These are (for +# now): +# +# * ceph/ubuntu-xenial +# +# Ubuntu: ceph/ubuntu-xenial bento/ubuntu-16.04 or ubuntu/trusty64 or ubuntu/wily64 +# CentOS: bento/centos-7.1 or puppetlabs/centos-7.0-64-puppet +# libvirt CentOS: centos/7 +# parallels Ubuntu: parallels/ubuntu-14.04 +# Debian: deb/jessie-amd64 - be careful the storage controller is named 'SATA Controller' +# For more boxes have a look at: +# - https://atlas.hashicorp.com/boxes/search?utf8=✓&sort=&provider=virtualbox&q= +# - https://download.gluster.org/pub/gluster/purpleidea/vagrant/ +vagrant_box: centos/atomic-host +client_vagrant_box: centos/7 +#ssh_private_key_path: "~/.ssh/id_rsa" +# The sync directory changes based on vagrant box +# Set to /home/vagrant/sync for Centos/7, /home/{ user }/vagrant for openstack and defaults to /vagrant +#vagrant_sync_dir: /home/vagrant/sync +#vagrant_sync_dir: / +# Disables synced folder creation. Not needed for testing, will skip mounting +# the vagrant directory on the remote box regardless of the provider. +vagrant_disable_synced_folder: true +# VAGRANT URL +# This is a URL to download an image from an alternate location. vagrant_box +# above should be set to the filename of the image. +# Fedora virtualbox: https://download.fedoraproject.org/pub/fedora/linux/releases/22/Cloud/x86_64/Images/Fedora-Cloud-Base-Vagrant-22-20150521.x86_64.vagrant-virtualbox.box +# Fedora libvirt: https://download.fedoraproject.org/pub/fedora/linux/releases/22/Cloud/x86_64/Images/Fedora-Cloud-Base-Vagrant-22-20150521.x86_64.vagrant-libvirt.box +# vagrant_box_url: https://download.fedoraproject.org/pub/fedora/linux/releases/22/Cloud/x86_64/Images/Fedora-Cloud-Base-Vagrant-22-20150521.x86_64.vagrant-virtualbox.box diff --git a/tox.ini b/tox.ini index 712b734eb..9c004648e 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = {dev,jewel,luminous,rhcs}-{ansible2.2,ansible2.3,ansible2.4}-{xenial_cluster,centos7_cluster,docker_cluster,update_cluster,cluster,update_docker_cluster,switch_to_containers,purge_filestore_osds_container,purge_filestore_osds_non_container,purge_cluster_non_container,purge_cluster_container} +envlist = {dev,jewel,luminous,rhcs}-{ansible2.2,ansible2.3,ansible2.4}-{xenial_cluster,centos7_cluster,docker_cluster,update_cluster,cluster,update_docker_cluster,switch_to_containers,purge_filestore_osds_container,purge_filestore_osds_non_container,purge_cluster_non_container,purge_cluster_container,ooo_collocation} {dev,luminous,rhcs}-{ansible2.3,ansible2.4}-{filestore_osds_non_container,filestore_osds_container,bluestore_osds_container,bluestore_osds_non_container,bluestore_lvm_osds,lvm_osds,purge_lvm_osds,shrink_mon,shrink_osd,shrink_mon_container,shrink_osd_container,docker_cluster_collocation,purge_bluestore_osds_non_container,purge_bluestore_osds_container} skipsdist = True @@ -127,6 +127,7 @@ setenv= ANSIBLE_STDOUT_CALLBACK = debug docker_cluster: PLAYBOOK = site-docker.yml.sample docker_cluster_collocation: PLAYBOOK = site-docker.yml.sample + ooo_collocation: PLAYBOOK = site-docker.yml.sample update_docker_cluster: PLAYBOOK = site-docker.yml.sample purge_cluster_container: PLAYBOOK = site-docker.yml.sample purge_cluster_container: PURGE_PLAYBOOK = purge-docker-cluster.yml @@ -156,6 +157,7 @@ deps= ansible2.3: -r{toxinidir}/tests/requirements2.2.txt ansible2.4: ansible==2.4.2 ansible2.4: -r{toxinidir}/tests/requirements2.4.txt + ooo_collocation: netaddr changedir= # tests a 1 mon, 1 osd, 1 mds and 1 rgw xenial cluster using non-collocated OSD scenario xenial_cluster: {toxinidir}/tests/functional/ubuntu/16.04/cluster @@ -185,6 +187,7 @@ changedir= switch_to_containers: {toxinidir}/tests/functional/centos/7/cluster lvm_osds: {toxinidir}/tests/functional/centos/7/lvm-osds purge_lvm_osds: {toxinidir}/tests/functional/centos/7/lvm-osds + ooo_collocation: {toxinidir}/tests/functional/centos/7/ooo-collocation commands= rhcs: ansible-playbook -vv -i "localhost," -c local {toxinidir}/tests/functional/rhcs_setup.yml --extra-vars "change_dir={changedir}" --tags "vagrant_setup" -- 2.39.5