]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa/suites/upgrade/telemetry-upgrade: upgrade from reef instead of pacific
authorLaura Flores <lflores@ibm.com>
Tue, 11 Jun 2024 20:10:01 +0000 (15:10 -0500)
committerLaura Flores <lflores@ibm.com>
Fri, 21 Jun 2024 22:17:36 +0000 (17:17 -0500)
With cephadm upgrades, we are only allowed to upgrade from as far back as N-2
releases. On the main branch, that means we can only upgrade from quincy and reef, and
we can no longer upgrade from pacific.

This test was trying to upgrade from pacific, which isn't allowed, which led to an
`UPGRADE_BAD_TARGET_VERSION` cluster error.

Fixes: https://tracker.ceph.com/issues/65189
Signed-off-by: Laura Flores <lflores@ibm.com>
(cherry picked from commit 0b39555f9fcbb093ca03c7bad15acb4e368b99f0)

12 files changed:
qa/suites/upgrade/telemetry-upgrade/pacific-x/% [deleted file]
qa/suites/upgrade/telemetry-upgrade/pacific-x/.qa [deleted symlink]
qa/suites/upgrade/telemetry-upgrade/pacific-x/0-random-distro$ [deleted symlink]
qa/suites/upgrade/telemetry-upgrade/pacific-x/0-start.yaml [deleted file]
qa/suites/upgrade/telemetry-upgrade/pacific-x/1-tasks.yaml [deleted file]
qa/suites/upgrade/telemetry-upgrade/reef-x/% [new file with mode: 0644]
qa/suites/upgrade/telemetry-upgrade/reef-x/.qa [new symlink]
qa/suites/upgrade/telemetry-upgrade/reef-x/0-random-distro$ [new symlink]
qa/suites/upgrade/telemetry-upgrade/reef-x/0-start.yaml [new file with mode: 0644]
qa/suites/upgrade/telemetry-upgrade/reef-x/1-tasks.yaml [new file with mode: 0644]
qa/workunits/test_telemetry_pacific.sh [deleted file]
qa/workunits/test_telemetry_pacific_x.sh [deleted file]

diff --git a/qa/suites/upgrade/telemetry-upgrade/pacific-x/% b/qa/suites/upgrade/telemetry-upgrade/pacific-x/%
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/qa/suites/upgrade/telemetry-upgrade/pacific-x/.qa b/qa/suites/upgrade/telemetry-upgrade/pacific-x/.qa
deleted file mode 120000 (symlink)
index a23f7e0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-../../.qa
\ No newline at end of file
diff --git a/qa/suites/upgrade/telemetry-upgrade/pacific-x/0-random-distro$ b/qa/suites/upgrade/telemetry-upgrade/pacific-x/0-random-distro$
deleted file mode 120000 (symlink)
index 4b34171..0000000
+++ /dev/null
@@ -1 +0,0 @@
-.qa/distros/container-hosts
\ No newline at end of file
diff --git a/qa/suites/upgrade/telemetry-upgrade/pacific-x/0-start.yaml b/qa/suites/upgrade/telemetry-upgrade/pacific-x/0-start.yaml
deleted file mode 100644 (file)
index 3814ea3..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-roles:
-- - mon.a
-  - mon.c
-  - mgr.y
-  - mds.a
-  - osd.0
-  - osd.1
-  - osd.2
-  - osd.3
-  - client.0
-  - node-exporter.a
-  - alertmanager.a
-- - mon.b
-  - mds.b
-  - mgr.x
-  - osd.4
-  - osd.5
-  - osd.6
-  - osd.7
-  - client.1
-  - prometheus.a
-  - grafana.a
-  - node-exporter.b
-openstack:
-- volumes: # attached to each instance
-    count: 4
-    size: 10 # GB
-overrides:
-  ceph:
-    create_rbd_pool: true
-    conf:
-      osd:
-        osd shutdown pgref assert: true
diff --git a/qa/suites/upgrade/telemetry-upgrade/pacific-x/1-tasks.yaml b/qa/suites/upgrade/telemetry-upgrade/pacific-x/1-tasks.yaml
deleted file mode 100644 (file)
index 28b9eb2..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-tasks:
-- install:
-    branch: pacific
-    exclude_packages:
-      - ceph-volume
-- print: "**** done install task..."
-- print: "**** done start installing pacific cephadm ..."
-- cephadm:
-    image: quay.io/ceph/daemon-base:latest-pacific
-    cephadm_branch: pacific
-    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: "*"
-- print: "**** done end installing pacific cephadm ..."
-
-- print: "**** done start cephadm.shell ceph config set mgr..."
-- cephadm.shell:
-    mon.a:
-      - ceph config set mgr mgr/cephadm/use_repo_digest true --force
-- print: "**** done cephadm.shell ceph config set mgr..."
-
-
-- print: "**** done start telemetry pacific..."
-- workunit:
-    clients:
-      client.0:
-        - test_telemetry_pacific.sh
-- print: "**** done end telemetry pacific..."
-
-- print: "**** done start upgrade sequence..."
-- sequential:
-    - print: "**** done start upgrade..."
-    - cephadm.shell:
-        env: [sha1]
-        mon.a:
-            - ceph config set global log_to_journald false --force
-            - ceph orch upgrade start --image quay.ceph.io/ceph-ci/ceph:$sha1
-            - while ceph orch upgrade status | jq '.in_progress' | grep true ; do ceph orch ps ; ceph versions ; sleep 30 ; done
-            - ceph orch ps
-            - ceph versions
-            - ceph versions | jq -e '.overall | length == 1'
-            - ceph versions | jq -e '.overall | keys' | grep $sha1
-    - print: "**** done end upgrade..."
-
-    - print: "**** done start telemetry x..."
-    - workunit:
-        clients:
-          client.0:
-            - test_telemetry_pacific_x.sh
-    - print: "**** done end telemetry x..."
-- print: "**** done end upgrade sequence..."
diff --git a/qa/suites/upgrade/telemetry-upgrade/reef-x/% b/qa/suites/upgrade/telemetry-upgrade/reef-x/%
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/qa/suites/upgrade/telemetry-upgrade/reef-x/.qa b/qa/suites/upgrade/telemetry-upgrade/reef-x/.qa
new file mode 120000 (symlink)
index 0000000..a23f7e0
--- /dev/null
@@ -0,0 +1 @@
+../../.qa
\ No newline at end of file
diff --git a/qa/suites/upgrade/telemetry-upgrade/reef-x/0-random-distro$ b/qa/suites/upgrade/telemetry-upgrade/reef-x/0-random-distro$
new file mode 120000 (symlink)
index 0000000..6618785
--- /dev/null
@@ -0,0 +1 @@
+.qa/distros/supported-container-hosts
\ No newline at end of file
diff --git a/qa/suites/upgrade/telemetry-upgrade/reef-x/0-start.yaml b/qa/suites/upgrade/telemetry-upgrade/reef-x/0-start.yaml
new file mode 100644 (file)
index 0000000..3814ea3
--- /dev/null
@@ -0,0 +1,33 @@
+roles:
+- - mon.a
+  - mon.c
+  - mgr.y
+  - mds.a
+  - osd.0
+  - osd.1
+  - osd.2
+  - osd.3
+  - client.0
+  - node-exporter.a
+  - alertmanager.a
+- - mon.b
+  - mds.b
+  - mgr.x
+  - osd.4
+  - osd.5
+  - osd.6
+  - osd.7
+  - client.1
+  - prometheus.a
+  - grafana.a
+  - node-exporter.b
+openstack:
+- volumes: # attached to each instance
+    count: 4
+    size: 10 # GB
+overrides:
+  ceph:
+    create_rbd_pool: true
+    conf:
+      osd:
+        osd shutdown pgref assert: true
diff --git a/qa/suites/upgrade/telemetry-upgrade/reef-x/1-tasks.yaml b/qa/suites/upgrade/telemetry-upgrade/reef-x/1-tasks.yaml
new file mode 100644 (file)
index 0000000..5163a54
--- /dev/null
@@ -0,0 +1,53 @@
+tasks:
+- install:
+    branch: reef
+    exclude_packages:
+      - ceph-volume
+- print: "**** done install task..."
+- print: "**** done start installing reef cephadm ..."
+- cephadm:
+    image: quay.io/ceph/daemon-base:latest-reef
+    cephadm_branch: reef
+    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: "*"
+- print: "**** done end installing reef cephadm ..."
+
+- print: "**** done start cephadm.shell ceph config set mgr..."
+- cephadm.shell:
+    mon.a:
+      - ceph config set mgr mgr/cephadm/use_repo_digest true --force
+- print: "**** done cephadm.shell ceph config set mgr..."
+
+- print: "**** done start telemetry reef..."
+- workunit:
+    clients:
+      client.0:
+        - test_telemetry_reef.sh
+- print: "**** done end telemetry reef..."
+
+- print: "**** done start upgrade sequence..."
+- sequential:
+    - print: "**** done start upgrade..."
+    - cephadm.shell:
+        env: [sha1]
+        mon.a:
+            - ceph config set global log_to_journald false --force
+            - ceph orch upgrade start --image quay.ceph.io/ceph-ci/ceph:$sha1
+            - while ceph orch upgrade status | jq '.in_progress' | grep true ; do ceph orch ps ; ceph versions ; sleep 30 ; done
+            - ceph orch ps
+            - ceph versions
+            - ceph versions | jq -e '.overall | length == 1'
+            - ceph versions | jq -e '.overall | keys' | grep $sha1
+    - print: "**** done end upgrade..."
+
+    - print: "**** done start telemetry x..."
+    - workunit:
+        clients:
+          client.0:
+            - test_telemetry_reef_x.sh
+    - print: "**** done end telemetry x..."
+- print: "**** done end upgrade sequence..."
diff --git a/qa/workunits/test_telemetry_pacific.sh b/qa/workunits/test_telemetry_pacific.sh
deleted file mode 100755 (executable)
index a971f58..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/bash -ex
-
-# Set up ident details for cluster
-ceph config set mgr mgr/telemetry/channel_ident true
-ceph config set mgr mgr/telemetry/organization 'ceph-qa'
-ceph config set mgr mgr/telemetry/description 'upgrade test cluster'
-
-# Opt-in
-ceph telemetry on --license sharing-1-0
-
-# Check last_opt_revision
-LAST_OPT_REVISION=$(ceph config get mgr mgr/telemetry/last_opt_revision)
-if [ $LAST_OPT_REVISION -ne 3 ]; then
-    echo "last_opt_revision is incorrect."
-    exit 1
-fi
-
-# Check reports
-ceph telemetry show
-ceph telemetry show-device
-ceph telemetry show-all
-
-echo OK
diff --git a/qa/workunits/test_telemetry_pacific_x.sh b/qa/workunits/test_telemetry_pacific_x.sh
deleted file mode 100755 (executable)
index 0e4a832..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/bin/bash -ex
-
-# Assert that we're still opted in
-LAST_OPT_REVISION=$(ceph config get mgr mgr/telemetry/last_opt_revision)
-if [ $LAST_OPT_REVISION -ne 3 ]; then
-    echo "last_opt_revision is incorrect"
-    exit 1
-fi
-
-# Check the warning:
-STATUS=$(ceph -s)
-if ! [[ $STATUS == *"Telemetry requires re-opt-in"* ]]
-then
-    echo "STATUS does not contain re-opt-in warning"
-    exit 1
-fi
-
-# Check new collections
-COLLECTIONS=$(ceph telemetry collection ls)
-NEW_COLLECTIONS=("perf_perf" "basic_mds_metadata" "basic_pool_usage" "basic_rook_v01" "perf_memory_metrics")
-for col in ${NEW_COLLECTIONS[@]}; do
-    if ! [[ $COLLECTIONS == *$col* ]];
-    then
-        echo "COLLECTIONS does not contain" "'"$col"'."
-       exit 1
-    fi
-done
-
-# Run preview commands
-ceph telemetry preview
-ceph telemetry preview-device
-ceph telemetry preview-all
-
-# Opt in to new collections
-ceph telemetry on --license sharing-1-0
-ceph telemetry enable channel perf
-
-# Check the warning:
-timeout=60
-STATUS=$(ceph -s)
-until [[ $STATUS != *"Telemetry requires re-opt-in"* ]] || [ $timeout -le 0 ]; do
-    STATUS=$(ceph -s)
-    sleep 1
-    timeout=$(( timeout - 1 ))
-done
-if [ $timeout -le 0 ]; then
-    echo "STATUS should not contain re-opt-in warning at this point"
-    exit 1
-fi
-
-# Run show commands
-ceph telemetry show
-ceph telemetry show-device
-ceph telemetry show
-
-# Opt out
-ceph telemetry off
-
-echo OK