]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | # |
2 | # Test the expected behavior of the | |
3 | # | |
4 | # CEPH_FEATURE_ERASURE_CODE_PLUGINS_V2 | |
5 | # | |
6 | # feature. | |
7 | # | |
8 | roles: | |
9 | - - mon.a | |
10 | - mon.b | |
11 | - osd.0 | |
12 | - osd.1 | |
13 | - - osd.2 | |
14 | - mon.c | |
15 | - mgr.x | |
16 | tasks: | |
17 | # | |
18 | # Install firefly | |
19 | # | |
20 | - install: | |
21 | branch: firefly | |
22 | - ceph: | |
23 | fs: xfs | |
24 | # | |
25 | # We don't need mon.c for now: it will be used later to make sure an old | |
26 | # mon cannot join the quorum once the feature has been activated | |
27 | # | |
28 | - ceph.stop: | |
29 | daemons: [mon.c] | |
30 | - exec: | |
31 | mon.a: | |
32 | - |- | |
33 | ceph osd erasure-code-profile set WRONG plugin=WRONG | |
34 | ceph osd pool create poolWRONG 12 12 erasure WRONG 2>&1 | grep "failed to load plugin using profile WRONG" | |
35 | # | |
36 | # Partial upgrade, osd.2 is not upgraded | |
37 | # | |
38 | - install.upgrade: | |
39 | osd.0: | |
40 | # | |
41 | # a is the leader | |
42 | # | |
43 | - ceph.restart: | |
44 | daemons: [mon.a] | |
45 | wait-for-healthy: false | |
46 | - exec: | |
47 | mon.a: | |
48 | - |- | |
49 | ceph osd erasure-code-profile set profile-lrc plugin=lrc 2>&1 | grep "unsupported by: the monitor cluster" | |
50 | - ceph.restart: | |
51 | daemons: [mon.b, osd.1, osd.0] | |
52 | wait-for-healthy: false | |
53 | wait-for-osds-up: true | |
54 | # | |
55 | # The lrc plugin cannot be used because osd.2 is not upgraded yet | |
56 | # and would crash. | |
57 | # | |
58 | - exec: | |
59 | mon.a: | |
60 | - |- | |
61 | ceph osd erasure-code-profile set profile-lrc plugin=lrc 2>&1 | grep "unsupported by: osd.2" | |
62 | # | |
63 | # Taking osd.2 out, the rest of the cluster is upgraded | |
64 | # | |
65 | - ceph.stop: | |
66 | daemons: [osd.2] | |
67 | - sleep: | |
68 | duration: 60 | |
69 | # | |
70 | # Creating an erasure code profile using the lrc plugin now works | |
71 | # | |
72 | - exec: | |
73 | mon.a: | |
74 | - "ceph osd erasure-code-profile set profile-lrc plugin=lrc" | |
75 | # | |
76 | # osd.2 won't be able to join the because is does not support the feature | |
77 | # | |
78 | - ceph.restart: | |
79 | daemons: [osd.2] | |
80 | wait-for-healthy: false | |
81 | - sleep: | |
82 | duration: 60 | |
83 | - exec: | |
84 | osd.2: | |
85 | - |- | |
86 | grep "protocol feature.*missing 100000000000" /var/log/ceph/ceph-osd.2.log | |
87 | # | |
88 | # mon.c won't be able to join the because it does not support the feature | |
89 | # | |
90 | - ceph.restart: | |
91 | daemons: [mon.c] | |
92 | wait-for-healthy: false | |
93 | - sleep: | |
94 | duration: 60 | |
95 | - exec: | |
96 | mon.c: | |
97 | - |- | |
98 | grep "missing.*feature" /var/log/ceph/ceph-mon.c.log |