]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
tests: add a rhel8 scenario testing
authorGuillaume Abrioux <gabrioux@redhat.com>
Wed, 30 Jan 2019 13:16:19 +0000 (14:16 +0100)
committerSébastien Han <seb@redhat.com>
Tue, 5 Feb 2019 17:14:28 +0000 (18:14 +0100)
test upstream with rhel8 vagrant image

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
21 files changed:
Vagrantfile
tests/conftest.py
tests/functional/ooo_rhel8/Vagrantfile [new symlink]
tests/functional/ooo_rhel8/ceph-override.json [new symlink]
tests/functional/ooo_rhel8/group_vars/all [new file with mode: 0644]
tests/functional/ooo_rhel8/group_vars/clients [new file with mode: 0644]
tests/functional/ooo_rhel8/group_vars/iscsigws [new file with mode: 0644]
tests/functional/ooo_rhel8/group_vars/mons [new file with mode: 0644]
tests/functional/ooo_rhel8/group_vars/osds [new file with mode: 0644]
tests/functional/ooo_rhel8/group_vars/rgws [new file with mode: 0644]
tests/functional/ooo_rhel8/hosts [new file with mode: 0644]
tests/functional/ooo_rhel8/vagrant_variables.yml [new file with mode: 0644]
tests/functional/podman/group_vars/all
tests/functional/tests/mds/test_mds.py
tests/functional/tests/mgr/test_mgr.py
tests/functional/tests/nfs/test_nfs_ganesha.py
tests/functional/tests/osd/test_osds.py
tests/functional/tests/rbd-mirror/test_rbd_mirror.py
tests/functional/tests/rgw/test_rgw.py
tests/functional/tests/rgw/test_rgw_tuning.py
tox.ini

index 0079cba5e206c5e27d52bf56addb79d184da57e8..f86968ec4662daa0b39444ae0c99e54d41f68ce4 100644 (file)
@@ -20,8 +20,8 @@ MGRS            = settings['mgr_vms']
 PUBLIC_SUBNET   = settings['public_subnet']
 CLUSTER_SUBNET  = settings['cluster_subnet']
 BOX             = ENV['CEPH_ANSIBLE_VAGRANT_BOX'] || settings['vagrant_box']
-CLIENT_BOX      = settings['client_vagrant_box'] || BOX
-BOX_URL         = settings['vagrant_box_url']
+CLIENT_BOX      = ENV['CEPH_ANSIBLE_VAGRANT_BOX'] || settings['client_vagrant_box'] || BOX
+BOX_URL         = ENV['CEPH_ANSIBLE_VAGRANT_BOX_URL'] || settings['vagrant_box_url']
 SYNC_DIR        = settings['vagrant_sync_dir']
 MEMORY          = settings['memory']
 ETH             = settings['eth']
@@ -126,6 +126,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
     lv.cpu_mode = 'host-passthrough'
     lv.volume_cache = 'unsafe'
     lv.graphics_type = 'none'
+    lv.cpus = 2
   end
 
   # Faster bootup. Disables mounting the sync folder for libvirt and virtualbox
index 103965c3e8190cc2e3ce112386cbc69cf27cd006..f025f1faf3ab8d6f762d1654de3296118ee4a352 100644 (file)
@@ -33,6 +33,7 @@ def node(host, request):
         'mimic': 13,
         'dev': 99
     }
+    ansible_distribution = host.ansible("setup")["ansible_facts"]['ansible_distribution']
 
     # capture the initial/default state
     test_is_applicable = False
@@ -68,9 +69,15 @@ def node(host, request):
     osd_ids = []
     osds = []
     cluster_address = ""
-    # I can assume eth1 because I know all the vagrant
-    # boxes we test with use that interface
-    address = host.interface("eth1").addresses[0]
+    container_binary = ""
+
+    if ansible_distribution == 'RedHat':
+        public_interface = 'ens6'
+        cluster_interface = 'ens7'
+    else:
+        public_interface = 'eth1'
+        cluster_interface = 'eth2'
+    address = host.interface(public_interface).addresses[0]
     subnet = ".".join(ansible_vars["public_network"].split(".")[0:-1])
     num_mons = len(ansible_vars["groups"]["mons"])
     if osd_auto_discovery:
@@ -88,10 +95,7 @@ def node(host, request):
     cluster_name = ansible_vars.get("cluster", "ceph")
     conf_path = "/etc/ceph/{}.conf".format(cluster_name)
     if "osds" in group_names:
-        # I can assume eth2 because I know all the vagrant
-        # boxes we test with use that interface. OSDs are the only
-        # nodes that have this interface.
-        cluster_address = host.interface("eth2").addresses[0]
+        cluster_address = host.interface(cluster_interface).addresses[0]
         cmd = host.run('sudo ls /var/lib/ceph/osd/ | sed "s/.*-//"')
         if cmd.rc == 0:
             osd_ids = cmd.stdout.rstrip("\n").split("\n")
@@ -103,6 +107,11 @@ def node(host, request):
                     real_dev_split = real_dev.stdout.split("/")[-1]
                     osds.append(real_dev_split)
 
+    if docker:
+        container_binary = 'docker'
+    if docker and host.exists('podman') and ansible_distribution in ['Fedora', 'RedHat']:  # noqa E501
+        container_binary = 'podman'
+
     data = dict(
         address=address,
         subnet=subnet,
@@ -119,6 +128,7 @@ def node(host, request):
         ceph_release_num=ceph_release_num,
         rolling_update=rolling_update,
         radosgw_num_instances=radosgw_num_instances,
+        container_binary=container_binary,
     )
     return data
 
diff --git a/tests/functional/ooo_rhel8/Vagrantfile b/tests/functional/ooo_rhel8/Vagrantfile
new file mode 120000 (symlink)
index 0000000..706a5bb
--- /dev/null
@@ -0,0 +1 @@
+../../../Vagrantfile
\ No newline at end of file
diff --git a/tests/functional/ooo_rhel8/ceph-override.json b/tests/functional/ooo_rhel8/ceph-override.json
new file mode 120000 (symlink)
index 0000000..fe2ff40
--- /dev/null
@@ -0,0 +1 @@
+../all_daemons/ceph-override.json
\ No newline at end of file
diff --git a/tests/functional/ooo_rhel8/group_vars/all b/tests/functional/ooo_rhel8/group_vars/all
new file mode 100644 (file)
index 0000000..aeb7509
--- /dev/null
@@ -0,0 +1,39 @@
+---
+# this is only here to let the CI tests know
+# that this scenario is using docker
+docker: True
+
+containerized_deployment: True
+monitor_interface: ens5
+radosgw_interface: ens5
+ceph_mon_docker_subnet: "{{ public_network }}"
+ceph_docker_on_openstack: False
+public_network: "192.168.22.0/24"
+cluster_network: "192.168.23.0/24"
+rgw_override_bucket_index_max_shards: 16
+rgw_bucket_default_quota_max_objects: 1638400
+ceph_conf_overrides:
+  global:
+    osd_pool_default_size: 1
+openstack_config: True
+openstack_glance_pool:
+  name: "images"
+  pg_num: "{{ osd_pool_default_pg_num }}"
+  pgp_num: "{{ osd_pool_default_pg_num }}"
+  rule_name: "HDD"
+  type: 1
+  erasure_profile: ""
+  expected_num_objects: ""
+  size: 1
+openstack_cinder_pool:
+  name: "volumes"
+  pg_num: "{{ osd_pool_default_pg_num }}"
+  pgp_num: "{{ osd_pool_default_pg_num }}"
+  rule_name: "HDD"
+  type: 1
+  erasure_profile: ""
+  expected_num_objects: ""
+  size: 1
+openstack_pools:
+  - "{{ openstack_glance_pool }}"
+  - "{{ openstack_cinder_pool }}"
diff --git a/tests/functional/ooo_rhel8/group_vars/clients b/tests/functional/ooo_rhel8/group_vars/clients
new file mode 100644 (file)
index 0000000..a8ea366
--- /dev/null
@@ -0,0 +1,22 @@
+---
+user_config: True
+copy_admin_key: True
+test:
+  name: "test"
+  pg_num: "{{ osd_pool_default_pg_num }}"
+  pgp_num: "{{ osd_pool_default_pg_num }}"
+  rule_name: "HDD"
+  type: 1
+  erasure_profile: ""
+  expected_num_objects: ""
+test2:
+  name: "test2"
+  pg_num: "{{ osd_pool_default_pg_num }}"
+  pgp_num: "{{ osd_pool_default_pg_num }}"
+  rule_name: "HDD"
+  type: 1
+  erasure_profile: ""
+  expected_num_objects: ""
+pools:
+  - "{{ test }}"
+  - "{{ test2 }}"
diff --git a/tests/functional/ooo_rhel8/group_vars/iscsigws b/tests/functional/ooo_rhel8/group_vars/iscsigws
new file mode 100644 (file)
index 0000000..401805e
--- /dev/null
@@ -0,0 +1,3 @@
+---
+gateway_ip_list: 192.168.1.90
+generate_crt: True
\ No newline at end of file
diff --git a/tests/functional/ooo_rhel8/group_vars/mons b/tests/functional/ooo_rhel8/group_vars/mons
new file mode 100644 (file)
index 0000000..4b54059
--- /dev/null
@@ -0,0 +1,10 @@
+---
+create_crush_tree: True
+crush_rule_config: True
+crush_rule_hdd:
+  name: HDD
+  root: HDD
+  type: host
+  default: true
+crush_rules:
+  - "{{ crush_rule_hdd }}"
diff --git a/tests/functional/ooo_rhel8/group_vars/osds b/tests/functional/ooo_rhel8/group_vars/osds
new file mode 100644 (file)
index 0000000..672a0f9
--- /dev/null
@@ -0,0 +1,11 @@
+---
+ceph_osd_docker_run_script_path: /var/tmp
+osd_objectstore: "bluestore"
+osd_scenario: lvm
+lvm_volumes:
+  - data: data-lv1
+    data_vg: test_group
+  - data: data-lv2
+    data_vg: test_group
+    db: journal1
+    db_vg: journals
\ No newline at end of file
diff --git a/tests/functional/ooo_rhel8/group_vars/rgws b/tests/functional/ooo_rhel8/group_vars/rgws
new file mode 100644 (file)
index 0000000..8f2a9a3
--- /dev/null
@@ -0,0 +1,7 @@
+---
+copy_admin_key: True
+rgw_create_pools:
+  foo:
+    pg_num: 17
+  bar:
+    pg_num: 19
diff --git a/tests/functional/ooo_rhel8/hosts b/tests/functional/ooo_rhel8/hosts
new file mode 100644 (file)
index 0000000..cfd2ad9
--- /dev/null
@@ -0,0 +1,30 @@
+[mons]
+mon0
+mon1
+mon2
+
+[osds]
+osd0 osd_crush_location="{ 'root': 'HDD', 'rack': 'mon-rackkkk', 'pod': 'monpod', 'host': 'osd0' }"
+osd1 osd_crush_location="{ 'root': 'default', 'host': 'osd1' }"
+
+[mdss]
+mds0
+
+[rgws]
+rgw0
+
+#[nfss]
+#nfs0
+
+#[clients]
+#client0
+#client1
+
+[rbdmirrors]
+rbd-mirror0
+
+[iscsigws]
+iscsi-gw0
+
+[all:vars]
+ansible_python_interpreter=/usr/bin/python3
\ No newline at end of file
diff --git a/tests/functional/ooo_rhel8/vagrant_variables.yml b/tests/functional/ooo_rhel8/vagrant_variables.yml
new file mode 100644 (file)
index 0000000..46524b6
--- /dev/null
@@ -0,0 +1,33 @@
+---
+
+# DEPLOY CONTAINERIZED DAEMONS
+docker: True
+
+# DEFINE THE NUMBER OF VMS TO RUN
+mon_vms: 3
+osd_vms: 2
+mds_vms: 1
+rgw_vms: 1
+nfs_vms: 0
+rbd_mirror_vms: 1
+client_vms: 0
+iscsi_gw_vms: 1
+mgr_vms: 1
+
+# SUBNETS TO USE FOR THE VMS
+public_subnet: 192.168.22
+cluster_subnet: 192.168.23
+
+# MEMORY
+# set 1024 for CentOS
+memory: 1024
+
+vagrant_box: rhel8-x86_64
+vagrant_box_url: 'http://drop.front.sepia.ceph.com/vagrant/rhel8-x86_64.box'
+# 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: /vagrant
+# 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
index 538fcb538c47883b8c200524d3d6d2586a28f001..2d4b6f92246bfc7f0069fdb2afa2f1d387bacba1 100644 (file)
@@ -4,8 +4,8 @@
 docker: True
 
 containerized_deployment: True
-monitor_interface: eth1
-radosgw_interface: eth1
+monitor_interface: "{{ 'ens6' if ansible_distribution == 'RedHat' else 'eth1' }}"
+radosgw_interface: "{{ 'ens6' if ansible_distribution == 'RedHat' else 'eth1' }}"
 ceph_mon_docker_subnet: "{{ public_network }}"
 ceph_docker_on_openstack: False
 public_network: "192.168.30.0/24"
index cfdf403e48320f340596a6e6064d79caae18c7d2..dedc318b1281cf0792b4ff51a3aa4c70cd1430d5 100644 (file)
@@ -22,17 +22,15 @@ class TestMDSs(object):
 
     def test_mds_is_up(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
-        if node['docker']:
-            container_binary = 'docker'
-            if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-                container_binary = 'podman'
-            docker_exec_cmd = '{container_binary} exec ceph-mds-{hostname}'.format(  # noqa E501
+        container_binary = node['container_binary']
+        if node["docker"]:
+            container_exec_cmd = '{container_binary} exec ceph-mds-{hostname}'.format(  # noqa E501
                 hostname=hostname, container_binary=container_binary)
         else:
-            docker_exec_cmd = ''
+            container_exec_cmd = ''
 
-        cmd = "sudo {docker_exec_cmd} ceph --name client.bootstrap-mds --keyring /var/lib/ceph/bootstrap-mds/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
-            docker_exec_cmd=docker_exec_cmd,
+        cmd = "sudo {container_exec_cmd} ceph --name client.bootstrap-mds --keyring /var/lib/ceph/bootstrap-mds/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
+            container_exec_cmd=container_exec_cmd,
             cluster=node['cluster_name']
         )
         cluster_status = json.loads(host.check_output(cmd))
index 5783e96d74f38828c6a1a373c2ffe8fe9163b20b..2004c199ab79d44891a543faffe4191d2a649d0b 100644 (file)
@@ -23,16 +23,14 @@ class TestMGRs(object):
     def test_mgr_is_up(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
         cluster = node["cluster_name"]
+        container_binary = node["container_binary"]
         if node['docker']:
-            container_binary = 'docker'
-            if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-                container_binary = 'podman'
-            docker_exec_cmd = '{container_binary} exec ceph-mgr-{hostname}'.format(  # noqa E501
+            container_exec_cmd = '{container_binary} exec ceph-mgr-{hostname}'.format(  # noqa E501
                 hostname=hostname, container_binary=container_binary)
         else:
-            docker_exec_cmd = ''
-        cmd = "sudo {docker_exec_cmd} ceph --name mgr.{hostname} --keyring /var/lib/ceph/mgr/{cluster}-{hostname}/keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
-            docker_exec_cmd=docker_exec_cmd,
+            container_exec_cmd = ''
+        cmd = "sudo {container_exec_cmd} ceph --name mgr.{hostname} --keyring /var/lib/ceph/mgr/{cluster}-{hostname}/keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
+            container_exec_cmd=container_exec_cmd,
             hostname=node["vars"]["inventory_hostname"],
             cluster=cluster
         )
index 4ffd6a7709669f7d488c93f9a828d778f3d5d46b..5bb7165b847b9a6df929baaeb6edb634c0bee770 100644 (file)
@@ -28,16 +28,14 @@ class TestNFSs(object):
     def test_nfs_is_up(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
         cluster = node['cluster_name']
+        container_binary = node["container_binary"]
         if node['docker']:
-            container_binary = 'docker'
-            if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-                container_binary = 'podman'
-            docker_exec_cmd = '{container_binary} exec ceph-nfs-{hostname}'.format(  # noqa E501
+            container_exec_cmd = '{container_binary} exec ceph-nfs-{hostname}'.format(  # noqa E501
                 hostname=hostname, container_binary=container_binary)
         else:
-            docker_exec_cmd = ''
-        cmd = "sudo {docker_exec_cmd} ceph --name client.rgw.{hostname} --keyring /var/lib/ceph/radosgw/{cluster}-rgw.{hostname}/keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
-            docker_exec_cmd=docker_exec_cmd,
+            container_exec_cmd = ''
+        cmd = "sudo {container_exec_cmd} ceph --name client.rgw.{hostname} --keyring /var/lib/ceph/radosgw/{cluster}-rgw.{hostname}/keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
+            container_exec_cmd=container_exec_cmd,
             hostname=hostname,
             cluster=cluster
         )
index 6c340f2525462d53d47c703cbbab8e6527b4f819..c7d28750b18f0dd62be00443906ae08ed26aad36 100644 (file)
@@ -74,9 +74,7 @@ class TestOSDs(object):
 
     @pytest.mark.docker
     def test_all_docker_osds_are_up_and_in(self, node, host):
-        container_binary = 'docker'
-        if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-            container_binary = 'podman'
+        container_binary = node["container_binary"]
         osd_id = host.check_output(os.path.join(
             container_binary + " ps -q --filter='name=ceph-osd' | head -1"))
         cmd = "sudo {container_binary} exec {osd_id} ceph --cluster={cluster} --connect-timeout 5 --keyring /var/lib/ceph/bootstrap-osd/{cluster}.keyring -n client.bootstrap-osd osd tree -f json".format(  # noqa E501
index f51e3283a20b16a8250140e722fdf1f73bc99041..e44441f553f0f8bb4ad19cc0bf25b7fef6097080 100644 (file)
@@ -30,19 +30,17 @@ class TestRbdMirrors(object):
     def test_rbd_mirror_is_up(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
         cluster = node["cluster_name"]
+        container_binary = node["container_binary"]
         daemons = []
         if node['docker']:
-            container_binary = 'docker'
-            if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-                container_binary = 'podman'
-            docker_exec_cmd = '{container_binary} exec ceph-rbd-mirror-{hostname}'.format(  # noqa E501
+            container_exec_cmd = '{container_binary} exec ceph-rbd-mirror-{hostname}'.format(  # noqa E501
                 hostname=hostname, container_binary=container_binary)
         else:
-            docker_exec_cmd = ''
+            container_exec_cmd = ''
         hostname = node["vars"]["inventory_hostname"]
         cluster = node['cluster_name']
-        cmd = "sudo {docker_exec_cmd} ceph --name client.bootstrap-rbd-mirror --keyring /var/lib/ceph/bootstrap-rbd-mirror/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
-            docker_exec_cmd=docker_exec_cmd,
+        cmd = "sudo {container_exec_cmd} ceph --name client.bootstrap-rbd-mirror --keyring /var/lib/ceph/bootstrap-rbd-mirror/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
+            container_exec_cmd=container_exec_cmd,
             hostname=hostname,
             cluster=cluster
         )
index eed21c46e58b33fead6a52ef6c795b0032bba52e..988d2f4b72625a111ec22f3bd827d0d25f5602ba 100644 (file)
@@ -30,16 +30,14 @@ class TestRGWs(object):
     def test_rgw_is_up(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
         cluster = node["cluster_name"]
+        container_binary = node["container_binary"]
         if node['docker']:
-            container_binary = 'docker'
-            if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-                container_binary = 'podman'
-            docker_exec_cmd = '{container_binary} exec ceph-rgw-{hostname}-rgw0'.format(  # noqa E501
+            container_exec_cmd = '{container_binary} exec ceph-rgw-{hostname}-rgw0'.format(  # noqa E501
                 hostname=hostname, container_binary=container_binary)
         else:
-            docker_exec_cmd = ''
-        cmd = "sudo {docker_exec_cmd} ceph --name client.bootstrap-rgw --keyring /var/lib/ceph/bootstrap-rgw/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
-            docker_exec_cmd=docker_exec_cmd,
+            container_exec_cmd = ''
+        cmd = "sudo {container_exec_cmd} ceph --name client.bootstrap-rgw --keyring /var/lib/ceph/bootstrap-rgw/{cluster}.keyring --cluster={cluster} --connect-timeout 5 -f json -s".format(  # noqa E501
+            container_exec_cmd=container_exec_cmd,
             hostname=hostname,
             cluster=cluster
         )
index 55617808494a4fff0b6de4e6e104d242bc2bc457..569a70c177fb9f6bb70f018d14562b7691b9cf0d 100644 (file)
@@ -39,9 +39,7 @@ class TestRGWs(object):
     def test_docker_rgw_tuning_pools_are_set(self, node, host):
         hostname = node["vars"]["inventory_hostname"]
         cluster = node['cluster_name']
-        container_binary = 'docker'
-        if host.exists('podman') and host.ansible("setup")["ansible_facts"]["ansible_distribution"] == 'Fedora':  # noqa E501
-            container_binary = 'podman'
+        container_binary = node["container_binary"]
         cmd = "sudo {container_binary} exec ceph-rgw-{hostname}-rgw0 ceph --cluster={cluster} -n client.rgw.{hostname}.rgw0 --connect-timeout 5 --keyring /var/lib/ceph/radosgw/{cluster}-rgw.{hostname}.rgw0/keyring  osd dump".format(  # noqa E501
             hostname=hostname,
             cluster=cluster,
diff --git a/tox.ini b/tox.ini
index d7a999a8a9887079a290e8aa370f0509ef989852..8e03995aca8279c11d923f06532fa6391775dacc 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,7 @@
 [tox]
 envlist = {dev,rhcs}-{centos,ubuntu}-{container,non_container}-{all_daemons,collocation,update,bluestore_lvm_osds,lvm_osds,shrink_mon,shrink_osd,lvm_batch,add_osds,rgw_multisite,purge,storage_inventory,lvm_auto_discovery}
   {dev,rhcs}-{centos,ubuntu}-container-{switch_to_containers,ooo_collocation,podman}
+  dev-rhel-container-podman
   infra_lv_create
 
 skipsdist = True
@@ -227,6 +228,8 @@ setenv=
   centos-container: CEPH_ANSIBLE_VAGRANT_BOX = centos/atomic-host
   podman: CEPH_ANSIBLE_VAGRANT_BOX = fedora/29-atomic-host
   ubuntu: CEPH_ANSIBLE_VAGRANT_BOX = ceph/ubuntu-xenial
+  dev-rhel-container-podman: CEPH_ANSIBLE_VAGRANT_BOX = rhel8-x86_64
+  dev-rhel-container-podman: CEPH_ANSIBLE_VAGRANT_BOX_URL = http://drop.front.sepia.ceph.com/vagrant/rhel8-x86_64.box
 
   # Set the ansible inventory host file to be used according to which distrib we are running on
   ubuntu: _INVENTORY = hosts-ubuntu