]> git.apps.os.sepia.ceph.com Git - ceph-ansible.git/commitdiff
tests: adds a new ansible2.2-update_dmcrypt scenario
authorAndrew Schoen <aschoen@redhat.com>
Fri, 17 Feb 2017 20:33:30 +0000 (14:33 -0600)
committerAndrew Schoen <aschoen@redhat.com>
Tue, 21 Feb 2017 18:31:27 +0000 (12:31 -0600)
This performs a rolling update on a cluster using dmcrypt dedicated
journals.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
tox.ini

diff --git a/tox.ini b/tox.ini
index 30fb7a4a1ac86e499bd740976e627566761a9d15..0b4725a3b14c14440dc91e87559dd6276046ba91 100644 (file)
--- a/tox.ini
+++ b/tox.ini
@@ -1,5 +1,5 @@
 [tox]
-envlist = {ansible2.2}-{xenial_cluster,journal_collocation,centos7_cluster,dmcrypt_journal,dmcrypt_journal_collocation,docker_cluster,purge_cluster,purge_dmcrypt}
+envlist = {ansible2.2}-{xenial_cluster,journal_collocation,centos7_cluster,dmcrypt_journal,dmcrypt_journal_collocation,docker_cluster,purge_cluster,purge_dmcrypt,update_dmcrypt}
 skipsdist = True
 
 # extra commands for purging clusters
@@ -15,6 +15,16 @@ commands=
   # test that the cluster can be redeployed in a healthy state
   testinfra -n 4 --sudo -v --connection=ansible --ansible-inventory={changedir}/hosts {toxinidir}/tests/functional/tests
 
+# extra commands for performing a rolling update
+# currently this hardcodes the release to kraken
+# as we're still installing jewel by default
+[update]
+commands=
+  cp {toxinidir}/infrastructure-playbooks/rolling_update.yml {toxinidir}/rolling_update.yml
+  ansible-playbook -vv -i {changedir}/hosts {toxinidir}/rolling_update.yml --extra-vars="ceph_stable_release=kraken ireallymeanit=yes fetch_directory={changedir}/fetch"
+
+  testinfra -n 4 --sudo -v --connection=ansible --ansible-inventory={changedir}/hosts {toxinidir}/tests/functional/tests
+
 [testenv]
 whitelist_externals =
     vagrant
@@ -48,6 +58,7 @@ changedir=
   docker_cluster: {toxinidir}/tests/functional/centos/7/docker-cluster
   purge_cluster: {toxinidir}/tests/functional/ubuntu/16.04/cluster
   purge_dmcrypt: {toxinidir}/tests/functional/centos/7/dmcrypt-dedicated-journal
+  update_dmcrypt: {toxinidir}/tests/functional/centos/7/dmcrypt-dedicated-journal
 commands=
   vagrant up --no-provision {posargs:--provider=virtualbox}
   bash {toxinidir}/tests/scripts/generate_ssh_config.sh {changedir}
@@ -59,5 +70,6 @@ commands=
 
   purge_cluster: {[purge]commands}
   purge_dmcrypt: {[purge]commands}
+  update_dmcrypt: {[update]commands}
 
   vagrant destroy --force