]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agocmake,debian: install pure python module to deb_system path
Kefu Chai [Thu, 4 Aug 2022 13:52:43 +0000 (21:52 +0800)]
cmake,debian: install pure python module to deb_system path

in ubuntu 22.04 and debian unstable, the layout (scheme) for system
python module is named "deb_system", the default one is 'posix_local'.
and 'posix_local' installs python modules into paths like
usr/local/lib/python3.10/dist-packages/. hence dh_install fails
when it tries to find the files to be packaged under directory of
usr/lib/python3*/site-packages/.

in this change, the "deb_system" scheme is used if it is available,
and fall back to "posix_prefix" to be backward compatible with older
debian (derivative) distros.

also, update the source directories of pure python's installation
from `site-packages` to `*-packages`, to be compatible with ubuntu focal
and ubuntu jammy. as we are now using the specified scheme instead of
the default one.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 04967404ed682835f81c1a5e51f94d09805d38b3)
Conflicts:
    apply the same change to debian/python3-cephfs.install, which
    was remove in main branch, but we need to preserve it in pacific.

3 years agodebian: install from site-packages to dist-packages
Kefu Chai [Fri, 1 Apr 2022 00:22:11 +0000 (08:22 +0800)]
debian: install from site-packages to dist-packages

this change addresses the regression introduced by
637dd7b40404e644519b1fc3b5ef03f2d18def00

dist-packages is a debian specific directory for holding 3rd party
python modules. so install the pure python packages into it.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit e6eee052220e78b09fab04dab27ef7901ffbe8f3)

3 years agodo_cmake.sh: build with python3.10 on ubuntu version >= 22.0
Laura Flores [Mon, 22 Aug 2022 20:46:53 +0000 (20:46 +0000)]
do_cmake.sh: build with python3.10 on ubuntu version >= 22.0

Fixes: https://tracker.ceph.com/issues/57230
Signed-off-by: Laura Flores <lflores@redhat.com>
(cherry picked from commit 20d609b4ab0b829e4bcf43d81ae2e10e36ded8e0)

3 years agomgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h
Pete Zaitcev [Wed, 15 Dec 2021 05:04:34 +0000 (23:04 -0600)]
mgr: Define PY_SSIZE_T_CLEAN ahead of every Python.h

Building on Fedora 35 with Python 3.10 makes vstart to loop
forever, throwing the following message:

 Error EINVAL: SystemError: PY_SSIZE_T_CLEAN macro must be
 defined for '#' formats

I followed the hint in the following document:
 https://docs.python.org/3/c-api/intro.html

It says "recommended" to always define PY_SSIZE_T_CLEAN,
but as you can see it is actually required in our case.

Fixes: https://tracker.ceph.com/issues/53441
Signed-off-by: Pete Zaitcev <zaitcev@redhat.com>
(cherry picked from commit 389054888f2aa782f73564125ec7a1ef0212d536)

Conflicts:
src/mgr/CMakeLists.txt: trivial resolution

3 years agopybind/mgr/dashboard: do not use distutils.version.StrictVersion
Kefu Chai [Mon, 8 Aug 2022 14:41:17 +0000 (22:41 +0800)]
pybind/mgr/dashboard: do not use distutils.version.StrictVersion

replace `distutils.version.StrictVersion` with
`pkg_resources.parse_version()`

as the former is deprecated, see https://peps.python.org/pep-0632/.
let's use `pkg_resources` instead. this change also addresses
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1010894.
we have this issue when testing with an ubuntu jammy test node.
see https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1967139

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 075b31c1c763286065f13be87c6ba987529b1206)

Conflicts:
debian/ceph-mgr-dashboard.requires: add the runtime requirement
        to debian/control instead.
src/mypy-constrains.txt: not backported (too new for pacific)
src/pybind/mgr/dashboard/requirements.txt: trivial resolution
src/pybind/mgr/tox.ini: not backported (too new for pacific)

3 years agovstart.sh: disable "rook" mgr module by default
Kefu Chai [Wed, 21 Apr 2021 13:50:21 +0000 (21:50 +0800)]
vstart.sh: disable "rook" mgr module by default

as we don't have "jsonpatch" installed for running "make check", "rook"
module always fails to load, and the error message when mgr is
unable to load is misleading and distracting. let's just disabled it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit bb75ef228a7fefbbf3a61f577bf424ff0db0b67f)

3 years agomgr/dashboard: bump up more-itertools
Kefu Chai [Fri, 12 Aug 2022 05:06:25 +0000 (13:06 +0800)]
mgr/dashboard: bump up more-itertools

before this change, more-itertools tries to import Sequence from
collections, this leads us to failures like:

```
Traceback (most recent call last):
  File "/usr/lib/python3.10/runpy.py", line 187, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/usr/lib/python3.10/runpy.py", line 110, in _get_module_details
    __import__(pkg_name)
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/__init__.py",
line 9, in <module>
    import cherrypy
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/__init__.py",
line 76, in <module>
    from . import _cprequest, _cpserver, _cptree, _cplogging, _cpconfig
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/_cprequest.py",
line 11, in <module>
    from cherrypy import _cpreqbody
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cherrypy/_cpreqbody.py",
line 135, in <module>
    import cheroot.server
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cheroot/server.py",
line 96, in <module>
    from .workers import threadpool
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/cheroot/workers/threadpool.py",
line 20, in <module>
    from jaraco.functools import pass_none
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/jaraco/functools.py",
line 8, in <module>
    import more_itertools
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/more_itertools/__init__.py",
line 1, in <module>
    from more_itertools.more import *  # noqa
  File
"/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/lib/python3.10/site-packages/more_itertools/more.py",
line 3, in <module>
    from collections import Counter, defaultdict, deque, Sequence
ImportError: cannot import name 'Sequence' from 'collections'
(/usr/lib/python3.10/collections/__init__.py)
ERROR: InvocationError for command
/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/bin/python3
-m dashboard.controllers.docs
/home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr/dashboard/.tox/openapi-check/tmp/openapi.yaml
(exited with code 1)
```
after this change, more-itertools is pin'ed at the latest stable
at the time of writing, which includes the fixes including
https://github.com/more-itertools/more-itertools/commit/30a861bc5a4f53a9ba73923c9048a3632a0f9d18
.

please note, more-itertools dropped python3.3 support. but neither
do us support this python version, so we should be safe.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 26f5678d4f58bfa18c389cd05ecdc454deb3024f)

3 years agopybind/mgr/dashboard: do not install enum34
Kefu Chai [Sun, 31 Jan 2021 04:03:07 +0000 (12:03 +0800)]
pybind/mgr/dashboard: do not install enum34

enum was introduced by python 3.4, but we require python3.6 and up.
so drop it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 9d0023ba906f3a5eb930318609db5ec61e57f030)

3 years agorun-make-check.sh: Don't enable WITH_SEASTAR
Tim Serong [Mon, 22 Aug 2022 04:10:53 +0000 (14:10 +1000)]
run-make-check.sh: Don't enable WITH_SEASTAR

It doesn't make sense to build with seastar on LTS branches as crimson
is still under active development.

Fixes: https://tracker.ceph.com/issues/57229
Signed-off-by: Tim Serong <tserong@suse.com>
3 years agocmake/modules: avoid using distutils
Kefu Chai [Fri, 25 Mar 2022 15:06:46 +0000 (23:06 +0800)]
cmake/modules: avoid using distutils

to address following warning from python 3.9:

<string>:1: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
<string>:1: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 637dd7b40404e644519b1fc3b5ef03f2d18def00)

3 years agocmake/modules: drop a cmake variable
Kefu Chai [Fri, 25 Mar 2022 15:02:06 +0000 (23:02 +0800)]
cmake/modules: drop a cmake variable

less redirections

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit f0fc04fbea3ec68d1cab321e016046e0b204def1)

3 years agocmake: use ceph repo with tag
Kefu Chai [Fri, 27 Aug 2021 16:14:55 +0000 (00:14 +0800)]
cmake: use ceph repo with tag

to address following warning:

fatal: reference is not a tree: 7f02f21f53ccd5e2448086f8e9015489693dd2dc
CMake Error at /home/jenkins-build/build/workspace/ceph-pull-requests/build/fio_ext-prefix/tmp/fio_ext-gitclone.cmake:40 (message):
  Failed to checkout tag: '7f02f21f53ccd5e2448086f8e9015489693dd2dc'

it seems that the shallow option does not work with a sha1 tag option,
let's continue using the ceph repo with a tag.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit d7771002ef9a455390aadbcc84287dd9b738c629)

3 years agocmake: use upstream repo for fio
Kefu Chai [Thu, 26 Aug 2021 15:57:00 +0000 (23:57 +0800)]
cmake: use upstream repo for fio

this change partially reverts 10baab3fc8293b8c30ca90a4acd76f70d011f1b5,
but since the fix for C++ build is not included by any tag or branche so
far. let's just use the sha1 for now.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit b65d0747b57ad9a32030ed49322f028c449a1d5f)

3 years agocmake/modules/BuildFIO: use ceph fork
Kefu Chai [Sat, 14 Aug 2021 01:47:36 +0000 (09:47 +0800)]
cmake/modules/BuildFIO: use ceph fork

to pick up the clang build fix. we should use the upstream repo, once the
clang build fix gets merged.

bumping up the fio helps to address following error, as this part was rewritten:

src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o.d -o src/test/fio/CMakeFiles/fio_ceph_objectstore.dir/fio_ceph_objectstore.cc.o -c ../src/test/fio/fio_ceph_objectstore.cc
In file included from ../src/test/fio/fio_ceph_objectstore.cc:26:
In file included from src/fio/fio.h:18:
In file included from src/fio/thread_options.h:6:
In file included from src/fio/options.h:8:
src/fio/parse.h:128:13: error: arithmetic on a pointer to void
        return ret + offset;
               ~~~ ^
1 error generated.

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit 10baab3fc8293b8c30ca90a4acd76f70d011f1b5)

3 years agocmake: pass compile options by fio interface library
Kefu Chai [Tue, 23 Mar 2021 07:16:04 +0000 (15:16 +0800)]
cmake: pass compile options by fio interface library

for better readability and maintainability

Signed-off-by: Kefu Chai <kchai@redhat.com>
(cherry picked from commit c190fee53d23212faf22b26df33346b393e11b8d)

3 years agoMerge pull request #46901 from dparmar18/wip-56112-pacific
Yuri Weinstein [Tue, 16 Aug 2022 14:32:13 +0000 (07:32 -0700)]
Merge pull request #46901 from dparmar18/wip-56112-pacific

pacific: qa/cephfs: fallback to older way of get_op_read_count

Reviewed-by: Kotresh HR <khiremat@redhat.com>
3 years agoMerge pull request #47321 from adk3798/wip-56504-pacific
zdover23 [Mon, 15 Aug 2022 15:31:49 +0000 (01:31 +1000)]
Merge pull request #47321 from adk3798/wip-56504-pacific

pacific: doc/cephadm/services: the config section of service specs

Reviewed-by: Zac Dover <zac.dover@gmail.com>
3 years agoMerge pull request #47369 from kotreshhr/wip-56978-pacific
Yuri Weinstein [Mon, 15 Aug 2022 15:21:51 +0000 (08:21 -0700)]
Merge pull request #47369 from kotreshhr/wip-56978-pacific

pacific: mgr/volumes: Fix subvolume creation in FIPS enabled system.

Reviewed-by: Ramana Raja <rraja@redhat.com>
3 years agoMerge pull request #47587 from zdover23/wip-doc-2022-08-15-backport-47580-to-pacific
zdover23 [Mon, 15 Aug 2022 15:18:44 +0000 (01:18 +1000)]
Merge pull request #47587 from zdover23/wip-doc-2022-08-15-backport-47580-to-pacific

pacific: doc/rados/operations: add prompts to operating.rst

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agodoc/rados/operations: add prompts to operating.rst 47587/head
Zac Dover [Sat, 13 Aug 2022 23:14:56 +0000 (09:14 +1000)]
doc/rados/operations: add prompts to operating.rst

This commit adds ".. prompt:: bash $"-style prompts to operating.rst.
This brings this file up to the standard established in 2020 when
Kefu added support for the ".. prompt::" directive.

This commit is a part of an initiative to modernize the presentation
of all BASH commands in the RADOS documentation.

The progress of this project can be tracked here:
https://tracker.ceph.com/issues/57108

Signed-off-by: Zac Dover <zac.dover@gmail.com>
(cherry picked from commit 69d62c05ef0ac8b903944d9e8c8fe4fbb3f73275)

3 years agoMerge pull request #47578 from idryomov/wip-alloc-size-doc-fixup-pacific
Ilya Dryomov [Sun, 14 Aug 2022 06:52:58 +0000 (08:52 +0200)]
Merge pull request #47578 from idryomov/wip-alloc-size-doc-fixup-pacific

pacific: doc/man/rbd: Mention changed `bluestore_min_alloc_size`

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agodoc/man/rbd: Mention changed `bluestore_min_alloc_size` 47578/head
Niklas Hambüchen [Sun, 2 Jan 2022 22:27:55 +0000 (23:27 +0100)]
doc/man/rbd: Mention changed `bluestore_min_alloc_size`

This change was done in: https://github.com/ceph/ceph/pull/34588

Signed-off-by: Niklas Hambüchen <mail@nh2.me>
(cherry picked from commit 254025343b1c49e1d0aa72fdea0cbe0483704245)

3 years agoMerge pull request #47307 from yaarith/wip-56486-pacific
Laura Flores [Thu, 11 Aug 2022 23:57:25 +0000 (18:57 -0500)]
Merge pull request #47307 from yaarith/wip-56486-pacific

pacific: mgr/telemetry: reset health warning after re-opting-in

3 years agoMerge pull request #47337 from ifed01/wip-ifed-fix-mempool-cache-other-pac
Igor Fedotov [Thu, 11 Aug 2022 11:22:46 +0000 (14:22 +0300)]
Merge pull request #47337 from ifed01/wip-ifed-fix-mempool-cache-other-pac

pacific: os/bluestore: fix AU accounting in bluestore_cache_other mempool

Reviewed-by: akuczyk@redhat.com
3 years agoMerge pull request #47357 from rhcs-dashboard/wip-56966-pacific
Pere Diaz Bou [Wed, 10 Aug 2022 08:40:51 +0000 (10:40 +0200)]
Merge pull request #47357 from rhcs-dashboard/wip-56966-pacific

pacific: mgr/dashboard: add required validation for frontend and monitor port

3 years agoMerge pull request #47454 from rhcs-dashboard/wip-57038-pacific
Pere Diaz Bou [Wed, 10 Aug 2022 08:26:34 +0000 (10:26 +0200)]
Merge pull request #47454 from rhcs-dashboard/wip-57038-pacific

pacific: mgr/dashboard: host list tables doesn't show all services deployed

Reviewed-by: Aashish Sharma <aasharma@redhat.com>
Reviewed-by: Pere Diaz Bou <pdiazbou@redhat.com>
3 years agoMerge pull request #47497 from tchaikov/pacific-pr-47486
Kefu Chai [Wed, 10 Aug 2022 05:51:10 +0000 (13:51 +0800)]
Merge pull request #47497 from tchaikov/pacific-pr-47486

pacific: mgr/dashboard: bump up teuthology

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
3 years agoMerge pull request #47211 from kamoltat/wip-ksirivad-backport-pacific-fix-56151
Yuri Weinstein [Tue, 9 Aug 2022 16:52:13 +0000 (09:52 -0700)]
Merge pull request #47211 from kamoltat/wip-ksirivad-backport-pacific-fix-56151

pacific:src/mgr/DaemonServer.cc: fix typo in output gap >= max_pg_num_change

Reviewed-by: Neha Ojha <nojha@redhat.com>
3 years agoMerge pull request #46748 from myoungwon/pacific-53855
Yuri Weinstein [Tue, 9 Aug 2022 16:50:56 +0000 (09:50 -0700)]
Merge pull request #46748 from myoungwon/pacific-53855

pacific: test: fix TierFlushDuringFlush to wait until dedup_tier is set on bas…

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #47111 from kotreshhr/wip-56527-pacific
Yuri Weinstein [Tue, 9 Aug 2022 16:13:05 +0000 (09:13 -0700)]
Merge pull request #47111 from kotreshhr/wip-56527-pacific

pacific: mds: Don't blocklist clients in any replay state

Reviewed-by: Xiubo Li <xiubli@redhat.com>
3 years agoMerge pull request #46797 from mchangir/pacific-mgr-snap_schedule-persist-all-changes...
Yuri Weinstein [Tue, 9 Aug 2022 16:11:50 +0000 (09:11 -0700)]
Merge pull request #46797 from mchangir/pacific-mgr-snap_schedule-persist-all-changes-to-rados

pacific: mgr/snap_schedule: persist all updates to RADOS

Reviewed-by: Venky Shankar <vshankar@redhat.com>
3 years agoMerge pull request #47372 from adk3798/wip-56743-pacific
Adam King [Mon, 8 Aug 2022 20:00:53 +0000 (16:00 -0400)]
Merge pull request #47372 from adk3798/wip-56743-pacific

pacific: mgr/cephadm: Add disk rescan feature to the orchestrator

Reviewed-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47484 from tchaikov/pacific-pr-47478
Kefu Chai [Mon, 8 Aug 2022 13:21:34 +0000 (21:21 +0800)]
Merge pull request #47484 from tchaikov/pacific-pr-47478

pacific: cmake: remove spaces in macro used for compiling cython code

Reviewed-by: Tim Serong <tserong@suse.com>
3 years agomgr/dashboard: bump up teuthology 47497/head
Kefu Chai [Sat, 6 Aug 2022 00:24:12 +0000 (08:24 +0800)]
mgr/dashboard: bump up teuthology

to include the fix of e7c5d67e10fe29da22180f9e09b8973ae166c8fc,
see https://github.com/ceph/teuthology/pull/1746.
to address the test failure on ubuntu jammy. where we have python3.10

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 0aa1fa68d354badd3363a4ea6cacbce373c3316e)

3 years agoMerge pull request #47413 from guits/pacific-cv-backports
Guillaume Abrioux [Mon, 8 Aug 2022 12:55:40 +0000 (14:55 +0200)]
Merge pull request #47413 from guits/pacific-cv-backports

ceph-volume: Pacific backports

3 years agocmake: remove spaces in macro used for compiling cython code 47484/head
Kefu Chai [Fri, 5 Aug 2022 08:40:41 +0000 (16:40 +0800)]
cmake: remove spaces in macro used for compiling cython code

we are facing following FTBFS on jammy + GCC-11.2 + Cython 0.29 +
CMake 3.22:

creating /home/jenkins-build/build/workspace/ceph-api/build/lib/cython_modules/temp.linux-x86_64-3.10/home/jenkins-build/build/workspace/ceph-api/build/src/pybind/cephfs
compile options: '-I/usr/include/python3.10 -I/usr/include/python3.10 -c'
extra options: '-Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -iquote/home/jenkins-build/build/workspace/ceph-api/src/include -w -Dvoid0=dead_function(void) -D__Pyx_check_single_interpreter(ARG)=ARG ## 0 -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2'
cc: /home/jenkins-build/build/workspace/ceph-api/build/src/pybind/cephfs/cephfs.c
cc: warning: ##: linker input file unused because linking not done
cc: error: ##: linker input file not found: No such file or directory
cc: warning: 0: linker input file unused because linking not done
cc: error: 0: linker input file not found: No such file or directory

it seems cython is not able to escape the space in the "extra options"
anymore, so the "##" and "0" are considered as object files passed to
compiler in addition to cephfs.c.

in this change the spaces are removed to help cython to make the right
decision.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
(cherry picked from commit 5824fed5b427f1d055fb7104fea2e68cd36e6844)

Conflicts:
cmake/modules/Distutils.cmake: trivial resolution

3 years agoMerge pull request #47266 from cfsnyder/wip-56646-pacific
Yuri Weinstein [Fri, 5 Aug 2022 21:53:24 +0000 (14:53 -0700)]
Merge pull request #47266 from cfsnyder/wip-56646-pacific

pacific: rgw: maintain object instance within RGWRadosObject::get_obj_state method

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoceph-volume: filter out non-existing devices 47413/head
Guillaume Abrioux [Mon, 25 Jul 2022 15:19:01 +0000 (17:19 +0200)]
ceph-volume: filter out non-existing devices

[1] has broken teuthology tests.

```
[root@smithi097 /]# ls -l /sys/block/
total 0
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-0 -> ../devices/virtual/block/dm-0
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-1 -> ../devices/virtual/block/dm-1
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-2 -> ../devices/virtual/block/dm-2
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-3 -> ../devices/virtual/block/dm-3
lrwxrwxrwx 1 root root 0 Jul 25 14:15 dm-4 -> ../devices/virtual/block/dm-4
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop0 -> ../devices/virtual/block/loop0
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop1 -> ../devices/virtual/block/loop1
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop2 -> ../devices/virtual/block/loop2
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop3 -> ../devices/virtual/block/loop3
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop4 -> ../devices/virtual/block/loop4
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop5 -> ../devices/virtual/block/loop5
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop6 -> ../devices/virtual/block/loop6
lrwxrwxrwx 1 root root 0 Jul 25 14:13 loop7 -> ../devices/virtual/block/loop7
lrwxrwxrwx 1 root root 0 Jul 25 14:12 nvme0n1 -> ../devices/pci0000:00/0000:00:02.0/0000:02:00.0/nvme/nvme0/nvme0n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme1c1n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme1/nvme1c1n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme1n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys1/nvme1n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme2c2n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme2/nvme2c2n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme2n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys2/nvme2n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme3c3n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme3/nvme3c3n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme3n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys3/nvme3n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme4c4n1 -> ../devices/virtual/nvme-fabrics/ctl/nvme4/nvme4c4n1
lrwxrwxrwx 1 root root 0 Jul 25 14:18 nvme4n1 -> ../devices/virtual/nvme-subsystem/nvme-subsys4/nvme4n1
lrwxrwxrwx 1 root root 0 Jul 25 14:12 sda -> ../devices/pci0000:00/0000:00:1f.2/ata5/host4/target4:0:0/4:0:0:0/block/sda
[root@smithi097 /]#
```

devices like `nvme1c1n1` exist in `/sys/block` but aren't present in `/dev`

```
[root@smithi097 /]# ls -l /dev/nvme*
crw------- 1 root root  10, 122 Jul 25 14:16 /dev/nvme-fabrics
crw------- 1 root root 240,   0 Jul 25 14:12 /dev/nvme0
brw-rw---- 1 root disk 259,   0 Jul 25 14:15 /dev/nvme0n1
crw------- 1 root root 240,   1 Jul 25 14:16 /dev/nvme1
brw-rw---- 1 root disk 259,   2 Jul 25 15:24 /dev/nvme1n1
crw------- 1 root root 240,   2 Jul 25 14:16 /dev/nvme2
brw-rw---- 1 root disk 259,   4 Jul 25 15:24 /dev/nvme2n1
crw------- 1 root root 240,   3 Jul 25 14:16 /dev/nvme3
brw-rw---- 1 root disk 259,   6 Jul 25 15:24 /dev/nvme3n1
crw------- 1 root root 240,   4 Jul 25 14:16 /dev/nvme4
brw-rw---- 1 root disk 259,   8 Jul 25 15:24 /dev/nvme4n1
[root@smithi097 /]#
```

If a device isn't actually present in `/dev`, `get_block_devs_sysfs()` shouldn't return it.

[1] https://github.com/ceph/ceph/commit/c7f017b21ade3762ba5b7b9688bed72c6b6

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 0ee8351e4d564724aa68a2b8d03bc53e281e7fc9)

3 years agoceph-volume/tests: fix test_exception_returns_default
Guillaume Abrioux [Wed, 3 Aug 2022 09:16:36 +0000 (11:16 +0200)]
ceph-volume/tests: fix test_exception_returns_default

There are cases, like running tests as root user, where this test fails
because root user can always read the file content.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 47aec3b86bcc850292f66d24670c5d8dc0a33c85)

3 years agoceph-volume: drop `ceph-bluestore-tool` call in Device._parse()
Guillaume Abrioux [Mon, 18 Jul 2022 14:54:17 +0000 (14:54 +0000)]
ceph-volume: drop `ceph-bluestore-tool` call in Device._parse()

disk.has_bluestore_label() does the same thing without a subprocess call.

Fixes: https://tracker.ceph.com/issues/56622
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit f5f3117510c287d817534c9f7c25af5f208c2f56)

3 years agoceph-volume: fix is_ceph_disk_member()
Guillaume Abrioux [Tue, 26 Jul 2022 14:24:31 +0000 (16:24 +0200)]
ceph-volume: fix is_ceph_disk_member()

`dev['NAME']` can't match `part` given that it's the name of the
parent device being compared to the partition name.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 24899a1f8d77bc3c10ef158bb463349d615f7c57)
(cherry picked from commit 66d0a07b34faa4514b1b7cb2d46ed90d83b91963)

3 years agoceph-volume/tests: migrate to pyfakefs
Guillaume Abrioux [Wed, 27 Jul 2022 11:41:41 +0000 (13:41 +0200)]
ceph-volume/tests: migrate to pyfakefs

ceph-volume unit tests shouldn't actually create contents on the
filesystem from where it runs (even though they are written in a tmp
dir), let's use pyfakefs.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 1274ba34b4d21c5abf2cd2da035d6d25ae8d03da)

3 years agoceph-volume/tests: fix test_path_is_valid()
Guillaume Abrioux [Wed, 27 Jul 2022 12:28:10 +0000 (14:28 +0200)]
ceph-volume/tests: fix test_path_is_valid()

When ceph-volume tests are run from a host where there's no `/dev/sda`
device, this test fails.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 7ab9d99420db2995542dfab7c416021dcc1c4a47)

3 years agoceph-volume: report slave devices in inventory
Guillaume Abrioux [Tue, 19 Jul 2022 12:06:10 +0000 (12:06 +0000)]
ceph-volume: report slave devices in inventory

`ceph-volume inventory` currently reports the following:

```

Device Path               Size        rotates available Model name
/dev/mapper/mpatha        50.00 GB    True    True
/dev/mapper/mpathaa       6.00 GB     True    True
/dev/mapper/mpathab       6.00 GB     True    True
/dev/mapper/mpathac       6.00 GB     True    True
/dev/mapper/mpathad       6.00 GB     True    True
/dev/mapper/mpathae       6.00 GB     True    True
```

whereas something like following would be useful:

```

Device Path               Size         Device nodes    rotates available Model name
/dev/mapper/mpatha        50.00 GB     sdf,sde         True    True
/dev/mapper/mpathaa       6.00 GB      sdbe,sdat       True    True
/dev/mapper/mpathab       6.00 GB      sdav,sdbf       True    True
/dev/mapper/mpathac       6.00 GB      sdbb,sdbl       True    True
/dev/mapper/mpathad       6.00 GB      sdas,sdbc       True    True
/dev/mapper/mpathae       6.00 GB      sdax,sdbh       True    True
```

Fixes: https://tracker.ceph.com/issues/56624
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 1ac2a8270cf4aece58ae3f952cc4d1ef978384ed)

3 years agoceph-volume: support symlinks as devices
Jan Sobczak [Fri, 20 Nov 2020 13:33:13 +0000 (14:33 +0100)]
ceph-volume: support symlinks as devices

This makes ceph-volume support passing symlinks as devices.

Fixes: https://tracker.ceph.com/issues/49103
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 9ddc5b77372cd2e0d5badd433c93d147cb25c6ee)

3 years agoceph-volume: improve mpath devices reporting
Guillaume Abrioux [Tue, 19 Jul 2022 11:13:31 +0000 (11:13 +0000)]
ceph-volume: improve mpath devices reporting

An environment with mpath devices looks like following:

`lsblk` output:

```
sdy        65:128  0    6G  0 disk
`-mpathm  252:8    0    6G  0 mpath
sdz        65:144  0    6G  0 disk
`-mpathm  252:8    0    6G  0 mpath
```

`multipath -ll` output:

```
mpathm (3600140575bbe2d3c0c6493fb6e6ed84c) dm-8 LIO-ORG,TCMU device
size=6.0G features='0' hwhandler='1 alua' wp=rw
|-+- policy='service-time 0' prio=50 status=active
| `- 2:0:0:30 sdz  65:144 active ready running
`-+- policy='service-time 0' prio=10 status=enabled
  `- 3:0:0:30 sdy  65:128 active ready running
```

`ceph-volume inventory` output:
```
Device Path               Size         rotates available Model name
/dev/mapper/mpathm        6.00 GB      True    True
/dev/sdy                  6.00 GB      True    False     TCMU device
/dev/sdz                  6.00 GB      True    False     TCMU device
```

ceph-volume shouldn't report devices `/dev/sdy` and `/dev/sdz`, they will never be
available in such a scenario. Considering this, in a host with a bunch of mpath devices
it will pollute the inventory output.

Fixes: https://tracker.ceph.com/issues/56621
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit e892f02a1a9126cbb520c90aeef0afb3590ddbbb)

3 years agoceph-volume: fix simple scan
Guillaume Abrioux [Fri, 29 Jul 2022 13:58:05 +0000 (15:58 +0200)]
ceph-volume: fix simple scan

When the class `Device` is instantiated with a path instead of a
block device, it fails like following.

```
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/device.py", line 130, in __init__
    self._parse()
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/device.py", line 233, in _parse
    self.ceph_device = disk.has_bluestore_label(self.path)
  File "/usr/lib/python3.6/site-packages/ceph_volume/util/disk.py", line 906, in has_bluestore_label
    with open(device_path, "rb") as fd:
IsADirectoryError: [Errno 21] Is a directory: '/var/lib/ceph/osd/ceph-0/'
```

passing a path instead of a block device is valid, `simple scan` needs it.

Fixes: https://tracker.ceph.com/issues/56969
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 5a10e3e9e865aafd9d3f90beb186777060d17f08)

3 years agoceph-volume: Remove refs to get_block_devs_lsblk
Zack Cerza [Tue, 21 Jun 2022 17:37:49 +0000 (11:37 -0600)]
ceph-volume: Remove refs to get_block_devs_lsblk

It's been replaced by get_block_devs_sysfs

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 2023e71f695c1962534c6012d5b331bebd10ec31)

3 years agoceph-volume: Rename env var; add warning
Zack Cerza [Tue, 21 Jun 2022 17:28:30 +0000 (11:28 -0600)]
ceph-volume: Rename env var; add warning

So that we can have a nice big warning that fires once per invocation, I
think using a callable class with a class attribute seems like a decent
approach. A closure could work too.

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit 69f58f51a2d7967d597a8d61c0ab20b52e8dc374)

3 years agoceph-volume: Optionally consume loop devices
Zack Cerza [Tue, 17 May 2022 17:29:02 +0000 (11:29 -0600)]
ceph-volume: Optionally consume loop devices

A similar proposal was rejected in #24765; I understand the logic
behind the rejection, but this will allow us to run Ceph clusters on
machines that lack disk resources for testing purposes. We just need to
make it impossible to accidentally enable, and make it clear it is
unsupported.

Signed-off-by: Zack Cerza <zack@redhat.com>
(cherry picked from commit c7f017b21ade3762ba5b7b9688bed72c6b60dc0e)

3 years agoceph-volume: drop self.abspath in Device()
Guillaume Abrioux [Fri, 8 Jul 2022 11:47:00 +0000 (13:47 +0200)]
ceph-volume: drop self.abspath in Device()

seems useless to have both self.path and self.abspath attributes.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 01112ba6894834287092d3b672ec548cb3a4d676)

3 years agoceph-volume: do not call get_device_vgs() per devices
Guillaume Abrioux [Tue, 19 Jul 2022 11:07:33 +0000 (11:07 +0000)]
ceph-volume: do not call get_device_vgs() per devices

let's call `ceph_volume.api.lvm.get_all_devices_vgs` only one time instead
so we avoid a bunch of subprocess calls that slow down the process when running
`ceph-volume inventory` command.

Fixes: https://tracker.ceph.com/issues/56623
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit f5bd0f6da9a3c2f60df2ed6dfaa4c26831a3be37)

3 years agoceph-volume: fix fast device alloc size on mulitple device
Arthur Outhenin-Chalandre [Tue, 14 Jun 2022 09:02:05 +0000 (11:02 +0200)]
ceph-volume: fix fast device alloc size on mulitple device

The size computed by get_physical_fast_allocs() was wrong when the
function had multiple devices to treat.

For instance if there is 4 OSDs and 2 fast devices of each 10G while
allocating 2 slots per fast devvices. The behavior before was that each
slot would be 2.5G meaning that both fast devices would half full. The
behavior now is that each slot will take 5G so that the fast devices
would be full.

Fixes: https://tracker.ceph.com/issues/56031
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
(cherry picked from commit d0f9e93914e2b7feac41a634311d74c146c8868b)

3 years agoceph-volume: fix shebang of install command
Arthur Outhenin-Chalandre [Tue, 14 Jun 2022 09:10:33 +0000 (11:10 +0200)]
ceph-volume: fix shebang of install command

Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
(cherry picked from commit 5255d4be74f15032331ba24b708ad04193ff87f3)

3 years agoceph-volume: fix `simple scan`
Guillaume Abrioux [Wed, 6 Jul 2022 11:42:02 +0000 (13:42 +0200)]
ceph-volume: fix `simple scan`

`lsblk_all()` should return an empty dict `{}` if nothing was found.
If we raise `RuntimeError()` then the loop in `scan.Scan.main` will stop
and make ceph-volume fails because we don't try to catch this exception.
`scan.Scan.main()` has its own logic in order to detect the given path
is a ceph-disk created OSD anyway.

Fixes: https://tracker.ceph.com/issues/56482
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit 2630a50acb4654332c0b6801e9214564bd09d3d0)

3 years agoMerge pull request #47341 from cbodley/wip-56954
Yuri Weinstein [Thu, 4 Aug 2022 17:42:18 +0000 (10:42 -0700)]
Merge pull request #47341 from cbodley/wip-56954

pacific: rgw: better tenant id from the uri on anonymous access

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agorgw: PutObj initializes source bucket for copy-source 47266/head
Casey Bodley [Tue, 2 Aug 2022 19:44:54 +0000 (15:44 -0400)]
rgw: PutObj initializes source bucket for copy-source

cherry-picks one more thing from 72d1a363263cf707d022ee756122236ba175cda2
to resolve a crash in CopyObj

Fixes: https://tracker.ceph.com/issues/56646
Signed-off-by: Casey Bodley <cbodley@redhat.com>
3 years agorgw: maintain object instance within RGWRadosObject::get_obj_state method
Cory Snyder [Mon, 25 Jul 2022 19:47:16 +0000 (15:47 -0400)]
rgw: maintain object instance within RGWRadosObject::get_obj_state method

It seems that the object instance was being stripped from the rgw_obj
inadvertently wihtin the RGWRadosObject::get_obj_state method. This
change fixes some S3 behavior related to concurrency and ECANCELED errors.

This is a partial cherry-pick from:
https://github.com/ceph/ceph/commit/72d1a363263cf707d022ee756122236ba175cda2

Fixes: https://tracker.ceph.com/issues/56646
Signed-off-by: Cory Snyder <csnyder@iland.com>
3 years agoMerge pull request #47041 from ifed01/wip-ifed-fix-s3-lock-pac
Yuri Weinstein [Thu, 4 Aug 2022 14:31:27 +0000 (07:31 -0700)]
Merge pull request #47041 from ifed01/wip-ifed-fix-s3-lock-pac

pacific: rgw: do not permit locked object version removal

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
3 years agoMerge pull request #47194 from adamemerson/wip-56586-pacific
Yuri Weinstein [Thu, 4 Aug 2022 13:09:32 +0000 (06:09 -0700)]
Merge pull request #47194 from adamemerson/wip-56586-pacific

pacific: rgw: Guard against malformed bucket URLs

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agoMerge pull request #47247 from idryomov/wip-56676-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:51:02 +0000 (05:51 -0700)]
Merge pull request #47247 from idryomov/wip-56676-pacific

pacific: librbd: tweak misleading "image is still primary" error message

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agoMerge pull request #47161 from idryomov/wip-56549-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:50:34 +0000 (05:50 -0700)]
Merge pull request #47161 from idryomov/wip-56549-pacific

pacific: librbd: bail from schedule_request_lock() if already lock owner

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47158 from idryomov/wip-48038-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:50:00 +0000 (05:50 -0700)]
Merge pull request #47158 from idryomov/wip-48038-pacific

pacific: qa/suites/rbd: disable workunit timeout for dynamic_features_no_cache

Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
3 years agoMerge pull request #47143 from idryomov/wip-56561-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:49:20 +0000 (05:49 -0700)]
Merge pull request #47143 from idryomov/wip-56561-pacific

pacific: rbd: don't default empty pool name unless namespace is specified

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47128 from idryomov/wip-50734-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:48:50 +0000 (05:48 -0700)]
Merge pull request #47128 from idryomov/wip-50734-pacific

pacific: qa/suites/rbd/pwl-cache: ensure recovery is actually tested

Reviewed-by: Christopher Hoffman <choffman@redhat.com>
3 years agoMerge pull request #47118 from idryomov/wip-56516-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:48:11 +0000 (05:48 -0700)]
Merge pull request #47118 from idryomov/wip-56516-pacific

pacific: rbd-mirror: remove bogus completed_non_primary_snapshots_exist check

Reviewed-by: Mykola Golub <mgolub@suse.com>
3 years agoMerge pull request #47295 from SUSE/wip-pacific-include-memory
Yuri Weinstein [Thu, 4 Aug 2022 12:47:34 +0000 (05:47 -0700)]
Merge pull request #47295 from SUSE/wip-pacific-include-memory

pacific: include/buffer: include <memory>

Reviewed-by: Kefu Chai <kchai@redhat.com>
3 years agoMerge pull request #47196 from adamemerson/wip-54491-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:46:20 +0000 (05:46 -0700)]
Merge pull request #47196 from adamemerson/wip-54491-pacific

pacific: rgw: Fix data race in ChangeStatus

Reviewed-by: Casey Bodley <cbodley@redhat.com>
3 years agoMerge pull request #47175 from yuvalif/wip-51943-pacific
Yuri Weinstein [Thu, 4 Aug 2022 12:44:48 +0000 (05:44 -0700)]
Merge pull request #47175 from yuvalif/wip-51943-pacific

pacific: rgw/notifications: Change in multipart upload notification behavior

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agoMerge pull request #46579 from cbodley/wip-55969
Yuri Weinstein [Thu, 4 Aug 2022 12:44:05 +0000 (05:44 -0700)]
Merge pull request #46579 from cbodley/wip-55969

pacific: rgw: check object storage_class when check_disk_state

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
3 years agomgr/dashboard: add cephadm e2e tests for checking count for services instances 47454/head
Avan Thakkar [Wed, 3 Aug 2022 08:45:02 +0000 (14:15 +0530)]
mgr/dashboard: add cephadm e2e tests for checking count for services instances

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit 25b03d85153e368098ebe5bf066f0872449af729)

3 years agomgr/dashboard: cluster > hosts: host list tables doesn't show all services deployed
Avan Thakkar [Mon, 25 Jul 2022 13:49:22 +0000 (19:19 +0530)]
mgr/dashboard: cluster > hosts: host list tables doesn't show all services deployed

Fixes: https://tracker.ceph.com/issues/53210
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
Service instances was displaying only the ceph services, but with these changes it'll display instances
of cephadm services as well.

(cherry picked from commit 4d50da7629145d40da3a2820c3b5c8cdb2bca33f)

3 years agoMerge pull request #47404 from aaSharma14/wip-57004-pacific
Nizamudeen A [Thu, 4 Aug 2022 07:25:18 +0000 (12:55 +0530)]
Merge pull request #47404 from aaSharma14/wip-57004-pacific

pacific: mgr/dashboard: Show error on creating service with duplicate service id

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47105 from rhcs-dashboard/wip-56562-pacific
Pere Diaz Bou [Thu, 4 Aug 2022 07:08:02 +0000 (09:08 +0200)]
Merge pull request #47105 from rhcs-dashboard/wip-56562-pacific

pacific: mgr/dashboard: rbd image pagination

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47431 from rhcs-dashboard/wip-57010-pacific
Pere Diaz Bou [Thu, 4 Aug 2022 06:46:02 +0000 (08:46 +0200)]
Merge pull request #47431 from rhcs-dashboard/wip-57010-pacific

pacific: mgr/dashboard: remove token logging

Reviewed-by: Avan Thakkar <athakkar@redhat.com>
Reviewed-by: Nizamudeen A <nia@redhat.com>
3 years agoMerge pull request #47443 from ceph/pacific-rtd
David Galloway [Wed, 3 Aug 2022 23:07:58 +0000 (19:07 -0400)]
Merge pull request #47443 from ceph/pacific-rtd

pacific: .readthedocs.yml: Always build latest doc/releases pages

3 years ago.readthedocs.yml: Always build latest doc/releases pages 47443/head
David Galloway [Thu, 30 Jun 2022 19:37:58 +0000 (15:37 -0400)]
.readthedocs.yml: Always build latest doc/releases pages

We don't backport PRs merged into doc/releases.  Therefore, when one browses to an older Ceph release version on docs.ceph.com (e.g., https://docs.ceph.com/en/pacific/), the information is out of date at best.

The doc/releases page is only accurate if browsing https://docs.ceph.com/en/latest/, for example.

So this post_checkout command will make sure we've checked out doc/releases from main before building and publishing.

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 055fe1f825b0629b7685d6d3d4d629ffc37a2d7c)

3 years agocephadm: give disk rescan its own parser object 47372/head
Adam King [Thu, 28 Jul 2022 00:27:54 +0000 (20:27 -0400)]
cephadm: give disk rescan its own parser object

It was using the same name as the agent. Missed this
in https://github.com/ceph/ceph/pull/46420/commits/6584c49bdf254e8750d23ed529478e6a9289e12f

Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit f8eae87accf1f79646d761e50656838d1933662d)

Conflicts:
src/cephadm/cephadm

3 years agocephadm: Add tests for rescan function
Paul Cuzner [Mon, 27 Jun 2022 06:41:27 +0000 (18:41 +1200)]
cephadm: Add tests for rescan function

Adds unittets for the rescan code

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 972fb0ab3c519141b2f07ac4f2d6bbb6b855441a)

Conflicts:
src/cephadm/tests/test_cephadm.py

3 years agodocs: Add docs for new host rescan feature
Paul Cuzner [Mon, 30 May 2022 01:55:27 +0000 (13:55 +1200)]
docs: Add docs for new host rescan feature

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 4525113fa123a5b1e8a23d6aefc306e6772326bc)

3 years agomgr/cephadm: Add new host rescan command
Paul Cuzner [Mon, 30 May 2022 01:54:33 +0000 (13:54 +1200)]
mgr/cephadm: Add new host rescan command

Adds a host rescan command to invoke cephadm's
rescan-disks subcommand

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit cc9eb1812e9aa138d7af7426b42657ace9020bea)

3 years agocephadm: Add rescan_disks subcommand
Paul Cuzner [Mon, 30 May 2022 01:52:57 +0000 (13:52 +1200)]
cephadm: Add rescan_disks subcommand

Add a new subcommand to probe each HBA to
force discovery of decies not automatically detected
by the kernel.

Signed-off-by: Paul Cuzner <pcuzner@redhat.com>
(cherry picked from commit 6584c49bdf254e8750d23ed529478e6a9289e12f)

Conflicts:
src/cephadm/cephadm

3 years agoMerge pull request #47375 from adk3798/wip-56985-pacific
Adam King [Wed, 3 Aug 2022 12:02:42 +0000 (08:02 -0400)]
Merge pull request #47375 from adk3798/wip-56985-pacific

pacific: mgr/cephadm: clear error message when resuming upgrade

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agoMerge pull request #47376 from adk3798/wip-56984-pacific
Adam King [Wed, 3 Aug 2022 12:02:09 +0000 (08:02 -0400)]
Merge pull request #47376 from adk3798/wip-56984-pacific

pacific: cephadm: Fix repo_gpgkey should return 2 vars

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
3 years agomgr/dashboard: add required validation for frontend and monitor port 47357/head
Avan Thakkar [Mon, 25 Jul 2022 10:34:00 +0000 (16:04 +0530)]
mgr/dashboard: add required validation for frontend and monitor port

Fixes: https://tracker.ceph.com/issues/56688
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit ea770fd858cae9a8b52c60b293f48cc4dbc925f8)

3 years agomgr/dashboard: remove token logging 47431/head
Pere Diaz Bou [Tue, 2 Aug 2022 16:56:49 +0000 (18:56 +0200)]
mgr/dashboard: remove token logging

Signed-off-by: Pere Diaz Bou <pdiazbou@redhat.com>
(cherry picked from commit fdaf909fba0c399b8d9bbc3a29a5af871546d9d9)

3 years agoqa: Fix use of 'sudo' args 47369/head
Kotresh HR [Sat, 30 Jul 2022 00:02:27 +0000 (05:32 +0530)]
qa: Fix use of 'sudo' args

https://tracker.ceph.com/issues/56727
Signed-off-by: Kotresh HR <khiremat@redhat.com>
(cherry picked from commit 5a33f7e6f6c1fbaa5078983ca2f0901296b65588)

3 years agomgr/volumes: Fix subvolume creation in FIPS enabled system.
Kotresh HR [Wed, 27 Jul 2022 11:09:08 +0000 (16:39 +0530)]
mgr/volumes: Fix subvolume creation in FIPS enabled system.

The md5 checksum is used in the construction of legacy
subvolume config filename. It's not used for security reason.
Hence marking the 'usedforsecurity' flag to false to
make it FIPs compliant.

The usage of md5 was always in there. The commit 373a04cf734
made it to get exercised in 'open_subvol' which is pre-requisite
for all the subvolume operations and hence subvolume
creation has failed.

Fixes: https://tracker.ceph.com/issues/56727
Signed-off-by: Kotresh HR <khiremat@redhat.com>
(cherry picked from commit ced3fac48d3da2320827c6c86ece3b87953badc7)

3 years agoMerge pull request #47271 from vumrao/wip-vumrao-56701
Yuri Weinstein [Tue, 2 Aug 2022 22:06:57 +0000 (15:06 -0700)]
Merge pull request #47271 from vumrao/wip-vumrao-56701

pacific: libcephsqlite: ceph-mgr crashes when compiled with gcc12

Reviewed-by: Laura Flores <lflores@redhat.com>
3 years agoMerge pull request #47416 from zdover23/wip-doc-2022-08-03-backport-47197-to-pacific
zdover23 [Tue, 2 Aug 2022 20:27:16 +0000 (06:27 +1000)]
Merge pull request #47416 from zdover23/wip-doc-2022-08-03-backport-47197-to-pacific

pacific: doc/dev: Elaborate on boost .deb creation

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
3 years agoMerge pull request #47296 from aclamk/wip-56669-pacific
Laura Flores [Tue, 2 Aug 2022 16:52:38 +0000 (11:52 -0500)]
Merge pull request #47296 from aclamk/wip-56669-pacific

pacific: os/bluestore: Fix collision between BlueFS and BlueStore deferred writes

3 years agodoc/dev: Elaborate on boost .deb creation 47416/head
David Galloway [Wed, 20 Jul 2022 21:07:44 +0000 (17:07 -0400)]
doc/dev: Elaborate on boost .deb creation

Signed-off-by: David Galloway <dgallowa@redhat.com>
(cherry picked from commit 3222485d6582ba6ab3ee908c13b6459c2e2b6302)

3 years agoMerge pull request #47304 from cbodley/wip-56731
Casey Bodley [Tue, 2 Aug 2022 15:02:10 +0000 (11:02 -0400)]
Merge pull request #47304 from cbodley/wip-56731

pacific: rgw/rgw_string.h: add missing includes for alpine and boost 1.75

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
3 years agoMerge pull request #47393 from adk3798/pacific-fix-flake8
Ilya Dryomov [Tue, 2 Aug 2022 09:37:27 +0000 (11:37 +0200)]
Merge pull request #47393 from adk3798/pacific-fix-flake8

pacific: pybind/mgr: fix flake8

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
3 years agomgr/dashboard: Show error on creating service with duplicate service id 47404/head
Aashish Sharma [Mon, 25 Jul 2022 08:18:39 +0000 (13:48 +0530)]
mgr/dashboard: Show error on creating service with duplicate service id

Fixes: https://tracker.ceph.com/issues/56689
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
(cherry picked from commit 07cfd44193f6ebd552d13325858e8b5b5c131bfb)

3 years agomgr/cephadm: fix flake8 47393/head
Avan Thakkar [Mon, 1 Aug 2022 09:23:14 +0000 (14:53 +0530)]
mgr/cephadm: fix flake8

Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit a124f6c47b119a8741f347ea5a809f3fb48d6679)

3 years agocephadm: ceph.manual.gpg cleanup 47376/head
Laurent Barbe [Fri, 29 Jul 2022 07:33:36 +0000 (09:33 +0200)]
cephadm: ceph.manual.gpg cleanup

Cleanup file /etc/apt/trusted.gpg.d/ceph.manual.gpg when repo is removed

Signed-off-by: Laurent Barbe <laurent@ksperis.com>
(cherry picked from commit bf0951353a80dc17edcc85a7914cfaf2b956d544)

3 years agocephadm: Fix repo_gpgkey should return 2 vars
Laurent Barbe [Thu, 28 Jul 2022 07:30:59 +0000 (09:30 +0200)]
cephadm: Fix repo_gpgkey should return 2 vars

when option --gpg-url is specified, the name used for the gpg filename is missing and throws an exception
this adds the string "manual" to the gpg key : /etc/apt/trusted.gpg.d/ceph.manual.gpg

Fixes: https://tracker.ceph.com/issues/56950
Signed-off-by: Laurent Barbe <laurent@ksperis.com>
(cherry picked from commit 79c805546c9bf4747a9019f4ad59f55e03c9fcef)

3 years agomgr/cephadm: clear error message when resuming upgrade 47375/head
Adam King [Tue, 26 Jul 2022 13:55:05 +0000 (09:55 -0400)]
mgr/cephadm: clear error message when resuming upgrade

the message field in the output of "ceph orch upgrade status"
will first take the value of the error field of the UpgradeState,
and if only if it blank/None, display an info string we periodically
update throughout the upgrade with useful info such as that
we're upgrading a daemon of a particular type or pulling an image
on a certain host. When an upgrade fails, we set the error field
of the UpgradeState, pause the upgrade and raise a health warning.
Sometimes, the user is able to resolve the issue and simply resume
the upgrade. The issue here is, in that case, the error field of
the UpgradeState is still set, so instead of seeing the useful info
messages, it will continue to display an error message that may
no longer be relevant. By emptying the error field of the UpgradeState
when upgrades are resumed, we return to normal behavior of
displaying the info string, and will only show another error message
if another error actually occurs.

Fixes: https://tracker.ceph.com/issues/56714
Signed-off-by: Adam King <adking@redhat.com>
(cherry picked from commit 429561ccb7b524f071214ff3aad99ba8830a924c)

3 years agoMerge pull request #47319 from adk3798/wip-56739-pacific
Adam King [Fri, 29 Jul 2022 21:21:27 +0000 (17:21 -0400)]
Merge pull request #47319 from adk3798/wip-56739-pacific

pacific: cephadm: add "su root root" to cephadm.log logrotate config

Reviewed-by: Guillaume Abrioux <gabrioux@redhat.com>