summaryrefslogtreecommitdiffstats
path: root/qa/suites/upgrade/quincy-x/stress-split/1-start.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'qa/suites/upgrade/quincy-x/stress-split/1-start.yaml')
-rw-r--r--qa/suites/upgrade/quincy-x/stress-split/1-start.yaml122
1 files changed, 122 insertions, 0 deletions
diff --git a/qa/suites/upgrade/quincy-x/stress-split/1-start.yaml b/qa/suites/upgrade/quincy-x/stress-split/1-start.yaml
new file mode 100644
index 000000000..b9bca65fb
--- /dev/null
+++ b/qa/suites/upgrade/quincy-x/stress-split/1-start.yaml
@@ -0,0 +1,122 @@
+tasks:
+- install:
+ branch: quincy
+ exclude_packages:
+ - ceph-volume
+
+- cephadm:
+ image: quay.ceph.io/ceph-ci/ceph:quincy
+ cephadm_branch: quincy
+ cephadm_git_url: https://github.com/ceph/ceph
+ conf:
+ osd:
+ #set config option for which cls modules are allowed to be loaded / used
+ osd_class_load_list: "*"
+ osd_class_default_list: "*"
+
+- cephadm.shell:
+ mon.a:
+ - ceph fs volume create foo
+ - ceph config set mon mon_warn_on_insecure_global_id_reclaim false --force
+ - ceph config set mon mon_warn_on_insecure_global_id_reclaim_allowed false --force
+
+- ceph.healthy:
+
+- print: "**** upgrading first half of cluster, with stress ****"
+- parallel:
+ - first-half-tasks
+ - first-half-sequence
+- print: "**** done upgrading first half of cluster ****"
+
+- ceph.healthy:
+
+- print: "**** applying stress + thrashing to mixed-version cluster ****"
+
+- parallel:
+ - stress-tasks
+
+- ceph.healthy:
+
+- print: "**** finishing upgrade ****"
+- parallel:
+ - second-half-tasks
+ - second-half-sequence
+
+- ceph.healthy:
+
+
+#################
+
+first-half-sequence:
+- cephadm.shell:
+ env: [sha1]
+ mon.a:
+ - ceph config set mgr mgr/cephadm/daemon_cache_timeout 60
+ - ceph config set global log_to_journald false --force
+
+ - ceph orch upgrade start --image quay.ceph.io/ceph-ci/ceph:$sha1
+ - ceph orch ps
+
+ - echo wait for minority of mons to upgrade
+ - while ! ceph mon versions | grep $sha1 ; do sleep 2 ; done
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for majority of mons to upgrade
+ - "while ! ceph mon versions | grep $sha1 | egrep ': [23]' ; do sleep 2 ; done"
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for all mons to upgrade
+ - "while ! ceph mon versions | grep $sha1 | grep ': 3' ; do sleep 2 ; done"
+ - ceph orch ps
+ - ceph orch upgrade pause
+ - sleep 60
+ - ceph orch upgrade resume
+
+ - echo wait for half of osds to upgrade
+ - "while ! ceph osd versions | grep $sha1 | egrep ': [45678]'; do sleep 2 ; done"
+ - ceph orch upgrade pause
+ - ceph orch ps
+
+ - ceph orch ps
+ - ceph versions
+
+
+#################
+
+stress-tasks:
+- thrashosds:
+ timeout: 1200
+ chance_pgnum_grow: 1
+ chance_pgpnum_fix: 1
+ chance_thrash_cluster_full: 0
+ chance_thrash_pg_upmap: 0
+ chance_thrash_pg_upmap_items: 0
+ disable_objectstore_tool_tests: true
+ chance_force_recovery: 0
+ aggressive_pg_num_changes: false
+
+
+#################
+
+second-half-sequence:
+ sequential:
+ - cephadm.shell:
+ env: [sha1]
+ mon.a:
+ - ceph orch upgrade resume
+ - sleep 60
+
+ - echo wait for upgrade to complete
+ - while ceph orch upgrade status | jq '.in_progress' | grep true ; do ceph orch ps ; ceph versions ; sleep 30 ; done
+
+ - echo upgrade complete
+ - ceph orch ps
+ - ceph versions
+ - ceph versions | jq -e '.overall | length == 1'
+ - ceph versions | jq -e '.overall | keys' | grep $sha1