]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
14 months agocrimson/osd: make osd_op_params::at_version coherent with last log entry 57056/head
Radoslaw Zarzynski [Tue, 23 Apr 2024 14:10:22 +0000 (14:10 +0000)]
crimson/osd: make osd_op_params::at_version coherent with last log entry

Before this commit we were doing something like:

1. initialize `at_version` with PG::projected_last_update`
   **incremented by one**.
2. produce a log entry at such version.
3. increment `at_version` for the sake of a further production
   that may never come.

The problem is `osd_op_params::at_version` is higher by one
than the last log entry which hurts at later stages of
`osd_op_params` processing (I was hit in the shared EC code
by the assertion in `PG::op_applied`).

This patch changes the algorithm to:

A. initialize `at_version` with PG::projected_last_update`
   **incremented by one**.
B. increment `at_version` for the sake of the very next production.
C. produce a log entry at this version.

Co-authored-by: Matan Breizman <mbreizma@redhat.com>
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
14 months agocrimson/osd: s/fill_op_params_bump_pg_version/fill_op_params/ in OpsExecuter
Radoslaw Zarzynski [Tue, 23 Apr 2024 14:04:02 +0000 (14:04 +0000)]
crimson/osd: s/fill_op_params_bump_pg_version/fill_op_params/ in OpsExecuter

Since https://github.com/ceph/ceph/pull/53054 it doesn't
bump `PG::projected_last_update` anymore.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
14 months agocrimson/osd: on the cloning path bump obj version closer to its usage
Radoslaw Zarzynski [Tue, 23 Apr 2024 13:54:23 +0000 (13:54 +0000)]
crimson/osd: on the cloning path bump obj version closer to its usage

My understanding at the time of writing is this change is a pure
refactoring.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
14 months agoMerge pull request #57102 from xxhdx1985126/wip-65672
Matan Breizman [Wed, 1 May 2024 07:10:58 +0000 (10:10 +0300)]
Merge pull request #57102 from xxhdx1985126/wip-65672

crimson/osd/osdop_params:Unify OpsExecuter::user_modify and osd_op_params_t::user_modify

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
14 months agoMerge pull request #56995 from athanatos/sjust/wip-65185-scrub-attr-error
Yuri Weinstein [Tue, 30 Apr 2024 23:32:33 +0000 (16:32 -0700)]
Merge pull request #56995 from athanatos/sjust/wip-65185-scrub-attr-error

osd: only call stat/getattrs once per object during deep-scrub

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
14 months agoMerge PR #56997 into main
Patrick Donnelly [Tue, 30 Apr 2024 20:46:06 +0000 (16:46 -0400)]
Merge PR #56997 into main

* refs/pull/56997/head:
pybind/mgr: disable sqlite3/python autocommit
qa/tasks/mgr: add tests for sqlite autocommit
qa/tasks/vstart_runner: run daemons in foreground
qa/tasks/vstart_runner: add missing poll method
qa/suites/rados/mgr: add cli/devicehealth tasks
qa: reorganize mgr unit tests
qa: use position-independent link
qa: add missing terminating newline
pybind/mgr: add killpoint for sqlite3 database setup
mgr: allow specifying module option level
mon/MgrMonitor: promote standby when unsetting down flag
mon/MgrMonitor: only drop active if exists

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
14 months agoMerge pull request #57144 from adk3798/stray-laundry
Adam King [Tue, 30 Apr 2024 19:48:41 +0000 (15:48 -0400)]
Merge pull request #57144 from adk3798/stray-laundry

qa/cephadm: ignore stray daemon warning during rados_api_tests

Reviewed-by: Laura Flores <lflores@ibm.com>
14 months agoMerge pull request #56961 from adk3798/agent-check-error-before-json
Adam King [Tue, 30 Apr 2024 19:41:23 +0000 (15:41 -0400)]
Merge pull request #56961 from adk3798/agent-check-error-before-json

cephadm: have agent check for errors before json loading mgr response

Reviewed-by: <mfritch@suse.com>
14 months agoMerge pull request #56933 from adk3798/service-size-cleanup
Adam King [Tue, 30 Apr 2024 19:38:20 +0000 (15:38 -0400)]
Merge pull request #56933 from adk3798/service-size-cleanup

mgr/cephadm: cleanup service size logic block

Reviewed-by: Michael Fritch <mfritch@suse.com>
14 months agoMerge pull request #56928 from adk3798/grafana-anon-access-dropped
Adam King [Tue, 30 Apr 2024 19:36:27 +0000 (15:36 -0400)]
Merge pull request #56928 from adk3798/grafana-anon-access-dropped

python-common: handle "anonymous_access: false" in to_json of Grafana spec

Reviewed-by: Nizamudeen A <nia@redhat.com>
14 months agoMerge pull request #56350 from phlogistonjohn/jjm-mgr-smb-module
Adam King [Tue, 30 Apr 2024 19:32:39 +0000 (15:32 -0400)]
Merge pull request #56350 from phlogistonjohn/jjm-mgr-smb-module

mgr: add a new smb cluster & share module

Reviewed-by: Adam King <adking@redhat.com>
14 months agoMerge pull request #56817 from guits/cephadm-check-apply-spec-file
Adam King [Tue, 30 Apr 2024 19:30:30 +0000 (15:30 -0400)]
Merge pull request #56817 from guits/cephadm-check-apply-spec-file

cephadm: check if file exists when passing `--apply_spec`

Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: John Mulligan <jmulligan@redhat.com>
14 months agoMerge pull request #56487 from adk3798/bootstrap-custom-alerts
Adam King [Tue, 30 Apr 2024 19:23:59 +0000 (15:23 -0400)]
Merge pull request #56487 from adk3798/bootstrap-custom-alerts

cephadm: allow passing custom prometheus alerts to bootstrap

Reviewed-by: John Mulligan <jmulligan@redhat.com>
14 months agoMerge PR #57044 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:22:41 +0000 (12:22 -0400)]
Merge PR #57044 into main

* refs/pull/57044/head:
qa: increase debugging for snap_schedule

Reviewed-by: Milind Changire <mchangir@redhat.com>
14 months agoMerge PR #57043 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:22:15 +0000 (12:22 -0400)]
Merge PR #57043 into main

* refs/pull/57043/head:
client: clear resend_mds only after sending request

Reviewed-by: Milind Changire <mchangir@redhat.com>
14 months agoMerge PR #57020 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:21:20 +0000 (12:21 -0400)]
Merge PR #57020 into main

* refs/pull/57020/head:
mds/cache: don't assume non-auth xlocks to be remote locks

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
14 months agoMerge PR #56935 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:20:17 +0000 (12:20 -0400)]
Merge PR #56935 into main

* refs/pull/56935/head:
mds: encode flags for all inode types
qa: test file inode with F_QUIESCE_BLOCK is replicated

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
14 months agoMerge PR #56934 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:19:31 +0000 (12:19 -0400)]
Merge PR #56934 into main

* refs/pull/56934/head:
mds: move drop_locks to directly after rdonly check
qa: test quiesce.block is replicated
qa: test that ceph.dir.subvolume is replicated properly
mds: add debug "lock path" command
qa: move reqid_tostr helper
qa: return run_shell process for waiters

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
14 months agoMerge PR #56923 into main
Patrick Donnelly [Tue, 30 Apr 2024 16:18:45 +0000 (12:18 -0400)]
Merge PR #56923 into main

* refs/pull/56923/head:
qa: extend rank 1 lockup for test_quiesce_authpin_wait

Reviewed-by: Leonid Usov <leonid.usov@ibm.com>
14 months agoMerge pull request #57148 from zdover23/wip-doc-2024-04-30-cephadm-services-monitoring
Anthony D'Atri [Tue, 30 Apr 2024 14:10:17 +0000 (10:10 -0400)]
Merge pull request #57148 from zdover23/wip-doc-2024-04-30-cephadm-services-monitoring

doc/cephadm: add default monitor images

14 months agoMerge pull request #57153 from rkhudov/doc-man-8-radosgw-admin_add-get-lifecycle...
Zac Dover [Tue, 30 Apr 2024 12:24:10 +0000 (22:24 +1000)]
Merge pull request #57153 from rkhudov/doc-man-8-radosgw-admin_add-get-lifecycle-config-command

doc/man/8/radosgw-admin: add get lifecycle command

Reviewed-by: Zac Dover <zac.dover@proton.me>
14 months agoMerge pull request #57154 from cityofships/main
Zac Dover [Tue, 30 Apr 2024 12:17:49 +0000 (22:17 +1000)]
Merge pull request #57154 from cityofships/main

doc/rados/operations: rephrase OSDs peering

Reviewed-by: Zac Dover <zac.dover@proton.me>
14 months agoMerge pull request #55978 from xxhdx1985126/wip-librbd-unittest-sparsify
Ilya Dryomov [Tue, 30 Apr 2024 12:03:00 +0000 (14:03 +0200)]
Merge pull request #55978 from xxhdx1985126/wip-librbd-unittest-sparsify

test/librbd/test_internal: change to check for 4KB-aligned sparse read

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
14 months agodoc/rados/operations: rephrase OSDs peering 57154/head
Piotr Parczewski [Tue, 30 Apr 2024 10:56:44 +0000 (12:56 +0200)]
doc/rados/operations: rephrase OSDs peering

Signed-off-by: Piotr Parczewski <piotr@stackhpc.com>
14 months agoMerge pull request #55823 from ceph/wip-lusov-quiescer
Leonid S. Usov [Tue, 30 Apr 2024 10:53:46 +0000 (13:53 +0300)]
Merge pull request #55823 from ceph/wip-lusov-quiescer

qa: cephfs quiesce thrasher

14 months agodoc/man/8/radosgw-admin: add get lifecycle command 57153/head
rkhudov [Tue, 30 Apr 2024 10:00:36 +0000 (11:00 +0100)]
doc/man/8/radosgw-admin: add get lifecycle command

Signed-off-by: rkhudov <rhudov@gmail.com>
14 months agoMerge pull request #56806 from xxhdx1985126/wip-65399
Matan Breizman [Tue, 30 Apr 2024 09:29:59 +0000 (12:29 +0300)]
Merge pull request #56806 from xxhdx1985126/wip-65399

crimson/osd/pg_recovery: backoff if the recovery/backfill is deferred

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
14 months agoMerge pull request #56998 from xxhdx1985126/wip-65568
Matan Breizman [Tue, 30 Apr 2024 09:29:16 +0000 (12:29 +0300)]
Merge pull request #56998 from xxhdx1985126/wip-65568

crimson/osd/pg: only kick off snap trimming when PGs are clean

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
14 months agoMerge pull request #57128 from cyx1231st/wip-fix-ut-seastore-timeout
Yingxin [Tue, 30 Apr 2024 08:40:50 +0000 (16:40 +0800)]
Merge pull request #57128 from cyx1231st/wip-fix-ut-seastore-timeout

crimson/os/seastore: misc cleanups and fixes

Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agodoc/cephadm: add default monitor images 57148/head
Zac Dover [Tue, 30 Apr 2024 07:09:05 +0000 (17:09 +1000)]
doc/cephadm: add default monitor images

Add a list of default monitor images to the documentation. This commit
is made in response to a request from Eugen Block, and is made using the
information developed by Mr Block here:
https://lists.ceph.io/hyperkitty/list/ceph-users@ceph.io/thread/QGC66QIFBKRTPZAQMQEYFXOGZJ7RLWBN/.

Signed-off-by: Zac Dover <zac.dover@proton.me>
14 months agoMerge pull request #56892 from xxhdx1985126/wip-crimson-urgent-recovery-version
Matan Breizman [Tue, 30 Apr 2024 06:50:45 +0000 (09:50 +0300)]
Merge pull request #56892 from xxhdx1985126/wip-crimson-urgent-recovery-version

crimson/osd/osd_operations/client_request: retrieve the correct version for objects to be recovered urgently

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Matan Breizman <mbreizma@redhat.com>
14 months agoMerge pull request #56610 from Matan-B/wip-matanb-crimson-replicated-head-obc
Matan Breizman [Tue, 30 Apr 2024 06:45:57 +0000 (09:45 +0300)]
Merge pull request #56610 from Matan-B/wip-matanb-crimson-replicated-head-obc

crimson/osd/replicated_recovery_backend: Fix recovery obc usage

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agoMerge pull request #57135 from xxhdx1985126/wip-seastore-checksum-assertion-fix
Yingxin [Tue, 30 Apr 2024 01:52:17 +0000 (09:52 +0800)]
Merge pull request #57135 from xxhdx1985126/wip-seastore-checksum-assertion-fix

crimson/os/seastore/transaction_manager: remove incorrect assertions

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agoMerge pull request #57129 from xxhdx1985126/wip-65585
Yingxin [Tue, 30 Apr 2024 01:49:43 +0000 (09:49 +0800)]
Merge pull request #57129 from xxhdx1985126/wip-65585

crimson/os/seastore/transaction_manager: fix write pipeline phase leak

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
14 months agoqa/suites/fs: add quiescer to the fs suite 55823/head
Leonid Usov [Sat, 23 Mar 2024 15:29:28 +0000 (08:29 -0700)]
qa/suites/fs: add quiescer to the fs suite

Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
14 months agoqa/tasks: the quiescer task and a waiter task to test it
Leonid Usov [Sat, 16 Mar 2024 15:42:11 +0000 (11:42 -0400)]
qa/tasks: the quiescer task and a waiter task to test it

Fixes: https://tracker.ceph.com/issues/63669
Signed-off-by: Leonid Usov <leonid.usov@ibm.com>
14 months agopybind/mgr: disable sqlite3/python autocommit 56997/head
Patrick Donnelly [Wed, 17 Apr 2024 19:52:36 +0000 (15:52 -0400)]
pybind/mgr: disable sqlite3/python autocommit

SQLite3 and python's binding were both committing transactions at unintended
points. Turn it off and stop using executescript.

Fixes: https://tracker.ceph.com/issues/65494
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa/tasks/mgr: add tests for sqlite autocommit
Patrick Donnelly [Fri, 19 Apr 2024 03:35:05 +0000 (23:35 -0400)]
qa/tasks/mgr: add tests for sqlite autocommit

That autocommit is properly turned off and that commits via context managers
work as expected.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa/cephadm: ignore stray daemon warning during rados_api_tests 57144/head
Adam King [Mon, 29 Apr 2024 17:54:37 +0000 (13:54 -0400)]
qa/cephadm: ignore stray daemon warning during rados_api_tests

The "stray daemon" that is getting logged about in this test is
from "stray daemon laundry.pid70383 on host smithi027 not managed by cephadm".
It seems the rados_api_tests is creating some additional "laundry" entity
during these tests that gets reported as an actual daemon in the mgr,
but cephadm is unaware of it, resulting in the warning. Originally
we thought to maybe add "laundry" itself to the ignorelist, but
without an additional patch that added extra logging for debug
purposes (which can't be merged) the log statement found in
the logs due to this problem will not say what daemon it found
to be stray. There will just be a generic warning about a stray
daemon. In a real cluster, a user would then check "ceph health detail"
to find out what daemon is stray, but the log scraper can't do this
and just fails the test due to the presence of the warning.

Signed-off-by: Adam King <adking@redhat.com>
14 months agoqa/tasks/vstart_runner: run daemons in foreground
Patrick Donnelly [Fri, 19 Apr 2024 03:34:16 +0000 (23:34 -0400)]
qa/tasks/vstart_runner: run daemons in foreground

This mirrors teuthology and makes it possible to check the exit status of a
daemon.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa/tasks/vstart_runner: add missing poll method
Patrick Donnelly [Fri, 19 Apr 2024 03:31:07 +0000 (23:31 -0400)]
qa/tasks/vstart_runner: add missing poll method

Otherwise you cannot use LocalDaemon.check_status.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa/suites/rados/mgr: add cli/devicehealth tasks
Patrick Donnelly [Thu, 18 Apr 2024 20:58:56 +0000 (16:58 -0400)]
qa/suites/rados/mgr: add cli/devicehealth tasks

These should have been part of the commit adding the tests.

Fixes: 9ebcbdbed0fbaf37d60fbd8db321742ee5721d8c
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa: reorganize mgr unit tests
Patrick Donnelly [Tue, 23 Apr 2024 14:39:10 +0000 (10:39 -0400)]
qa: reorganize mgr unit tests

Refactor common tasks and allow loading mgrmodules before unittests start.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa: use position-independent link
Patrick Donnelly [Tue, 23 Apr 2024 14:26:11 +0000 (10:26 -0400)]
qa: use position-independent link

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoqa: add missing terminating newline
Patrick Donnelly [Tue, 23 Apr 2024 14:22:00 +0000 (10:22 -0400)]
qa: add missing terminating newline

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agopybind/mgr: add killpoint for sqlite3 database setup
Patrick Donnelly [Wed, 17 Apr 2024 19:44:30 +0000 (15:44 -0400)]
pybind/mgr: add killpoint for sqlite3 database setup

To catch unintentional autocommit by sqlite3.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agomgr: allow specifying module option level
Patrick Donnelly [Fri, 19 Apr 2024 18:31:09 +0000 (14:31 -0400)]
mgr: allow specifying module option level

Some are for development purposes and should be filtered out by the dashboard.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agomon/MgrMonitor: promote standby when unsetting down flag
Patrick Donnelly [Fri, 19 Apr 2024 02:18:57 +0000 (22:18 -0400)]
mon/MgrMonitor: promote standby when unsetting down flag

In the same epoch, to simplify testing.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agomon/MgrMonitor: only drop active if exists
Patrick Donnelly [Thu, 18 Apr 2024 19:40:19 +0000 (15:40 -0400)]
mon/MgrMonitor: only drop active if exists

This avoids an assertion in ::drop_active.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
14 months agoMerge pull request #57136 from zdover23/wip-doc-2024-04-29-radosgw-bucketpolicy
Anthony D'Atri [Mon, 29 Apr 2024 12:24:37 +0000 (08:24 -0400)]
Merge pull request #57136 from zdover23/wip-doc-2024-04-29-radosgw-bucketpolicy

doc/radosgw: disambiguate version-added remarks

14 months agodoc/radosgw: disambiguate version-added remarks 57136/head
Zac Dover [Mon, 29 Apr 2024 10:23:13 +0000 (20:23 +1000)]
doc/radosgw: disambiguate version-added remarks

Rewrite two sentences so that they explain precisely what was added to
Ceph and when it was added to Ceph.

This commit is made in response to a request made by Dr Per Mildner on
https://pad.ceph.com/p/Report_Documentation_Bugs.

Signed-off-by: Zac Dover <zac.dover@proton.me>
14 months agocrimson/osd/osd_operation: yield the cpu before another round the 56806/head
Xuehan Xu [Sun, 21 Apr 2024 04:41:29 +0000 (12:41 +0800)]
crimson/osd/osd_operation: yield the cpu before another round the
"with_throttle"

This is to avoid infinite recursive calling to "with_throttle_while"

Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
14 months agocrimson/osd/pg_recovery: backoff if the recovery/backfill is deferred
Xuehan Xu [Wed, 10 Apr 2024 06:51:47 +0000 (14:51 +0800)]
crimson/osd/pg_recovery: backoff if the recovery/backfill is deferred

Fixes: https://tracker.ceph.com/issues/65399
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agocrimson/os/seastore: drop the impossible error eagain 57128/head
Yingxin Cheng [Mon, 29 Apr 2024 03:39:44 +0000 (11:39 +0800)]
crimson/os/seastore: drop the impossible error eagain

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agocrimson/os/seastore/extent_placement_manager: make reserve and block atomic
Yingxin Cheng [Mon, 29 Apr 2024 03:03:02 +0000 (11:03 +0800)]
crimson/os/seastore/extent_placement_manager: make reserve and block atomic

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agocrimson/os/seastore: improve seastore_t logs
Yingxin Cheng [Mon, 29 Apr 2024 02:46:11 +0000 (10:46 +0800)]
crimson/os/seastore: improve seastore_t logs

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agocrimson/os/seastore/transaction_manager: remove incorrect assertions 57135/head
Xuehan Xu [Mon, 29 Apr 2024 08:56:09 +0000 (16:56 +0800)]
crimson/os/seastore/transaction_manager: remove incorrect assertions

Indirect mappings always hold the checksums of the corresponding intermediate
mappings, which may have non-zero

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agocrimson/os/seastore: add logs for background
Yingxin Cheng [Fri, 26 Apr 2024 07:59:55 +0000 (15:59 +0800)]
crimson/os/seastore: add logs for background

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agotest/crimson/gtest_seastar: add logs
Yingxin Cheng [Fri, 26 Apr 2024 06:23:28 +0000 (14:23 +0800)]
test/crimson/gtest_seastar: add logs

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agotest/crimson/gtest_seastar: cleanups
Yingxin Cheng [Fri, 26 Apr 2024 06:21:38 +0000 (14:21 +0800)]
test/crimson/gtest_seastar: cleanups

Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agoMerge pull request #55449 from xxhdx1985126/wip-seastore-extent-chksum
Yingxin [Mon, 29 Apr 2024 08:44:36 +0000 (16:44 +0800)]
Merge pull request #55449 from xxhdx1985126/wip-seastore-extent-chksum

crimson/os/seastore: support extent checksum verification

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
14 months agocrimson/os/seastore/transaction_manager: fix write pipeline phase leak 57129/head
Xuehan Xu [Wed, 24 Apr 2024 09:00:53 +0000 (17:00 +0800)]
crimson/os/seastore/transaction_manager: fix write pipeline phase leak

At present, if a transaction gets interrupted right after it enters
WritePipeline::ReserveProjectedUsage and before any later continuations
get executed, WritePipeline::ReserveProjectedUsage will be locked
forever.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agoMerge pull request #57088 from xxhdx1985126/wip-seastore-update-onode-size
Yingxin [Mon, 29 Apr 2024 06:50:01 +0000 (14:50 +0800)]
Merge pull request #57088 from xxhdx1985126/wip-seastore-update-onode-size

crimson/os/seastore: only update onode sizes when necessary

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agoMerge pull request #57118 from xxhdx1985126/wip-65673
Xuehan Xu [Mon, 29 Apr 2024 06:20:12 +0000 (14:20 +0800)]
Merge pull request #57118 from xxhdx1985126/wip-65673

test/ceph_crypto: define __has_feature if the compiler doesn't have it

Reviewed-by: Kefu Chai <kefu.chai@scylladb.com>
14 months agoMerge pull request #57119 from zdover23/wip-doc-2024-04-28-cephfs-client-auth
Zac Dover [Mon, 29 Apr 2024 02:37:53 +0000 (12:37 +1000)]
Merge pull request #57119 from zdover23/wip-doc-2024-04-28-cephfs-client-auth

doc/cephfs: edit front matter in client-auth.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
14 months agodoc/cephfs: edit front matter in client-auth.rst 57119/head
Zac Dover [Sun, 28 Apr 2024 13:18:50 +0000 (23:18 +1000)]
doc/cephfs: edit front matter in client-auth.rst

Clarify the front matter in doc/cephfs/client-auth.rst.

Co-authored-by: Anthony D'Atri <anthony.datri@gmail.com>
Signed-off-by: Zac Dover <zac.dover@proton.me>
14 months agoMerge pull request #57112 from tchaikov/erasure-code-free
Kefu Chai [Sun, 28 Apr 2024 15:14:49 +0000 (23:14 +0800)]
Merge pull request #57112 from tchaikov/erasure-code-free

erasure-code/shec: use free() to release alloc()'ed memory chunk

Reviewed-by: Rongqi Sun <sunrongqi@huawei.com>
14 months agoMerge pull request #57113 from tchaikov/erasure-code-free-crush-wrapper
Kefu Chai [Sun, 28 Apr 2024 12:27:03 +0000 (20:27 +0800)]
Merge pull request #57113 from tchaikov/erasure-code-free-crush-wrapper

test//erasure-code/TestErasureCodeLrc: free allocated CrushWrapper

Reviewed-by: Rongqi Sun <sunrongqi@huawei.com>
14 months agoMerge pull request #57111 from tchaikov/erasure-code-nullptr
Kefu Chai [Sun, 28 Apr 2024 12:26:21 +0000 (20:26 +0800)]
Merge pull request #57111 from tchaikov/erasure-code-nullptr

erasure-code/shec: replace 0 with nullptr when appropriate

Reviewed-by: Rongqi Sun <sunrongqi@huawei.com>
14 months agocrimson/osd/osdop_params:Unify OpsExecuter::user_modify and osd_op_params_t::user_modify 57102/head
Xuehan Xu [Fri, 26 Apr 2024 10:12:15 +0000 (18:12 +0800)]
crimson/osd/osdop_params:Unify OpsExecuter::user_modify and osd_op_params_t::user_modify

Before this change OpsExecuter::user_modify was maintained in OpsExecuter::do_write_op.
However, osd_op_params->user_modify was not updated when used in OpsExecuter::prepare_transaction

Fixes: https://tracker.ceph.com/issues/65672
Signed-off-by: Xuehan Xu <xxhdx1985126@gmail.com>
14 months agocrimson/osd/pg: SnapTrimEvent to support interrupts 56998/head
Xuehan Xu [Thu, 25 Apr 2024 05:56:25 +0000 (13:56 +0800)]
crimson/osd/pg: SnapTrimEvent to support interrupts

SnapTrimEvent operations are scheduled from `PG::on_active_actmap()`
using a `seastar::do_until` loop. This commit replaces the loop type
into an `interruptor::repeat` and SnapTrimEvent are now scheduled by
`start_operation_may_interrupt`.

Previously, `SnapTrimEvent::start` handled interruptions by returning
a `crimson::ct_error::eagain::make();`. Now, the errorator is directly
returned via the `snap_trim_event_ret_t` and interrupts the loop
described above.

As a result, interruptions originated by interval changes are now
supported by SnapTrimEvent.

Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agotest/ceph_crypto: define __has_feature if the compiler doesn't have it 57118/head
Xuehan Xu [Sun, 28 Apr 2024 03:11:57 +0000 (11:11 +0800)]
test/ceph_crypto: define __has_feature if the compiler doesn't have it

Refer to https://gcc.gnu.org/onlinedocs/cpp/_005f_005fhas_005ffeature.html
and https://clang.llvm.org/docs/LanguageExtensions.html#has-feature-and-has-extension
for further information

Fixes: https://tracker.ceph.com/issues/65673
Signed-off-by: Xuehan Xu <xuxuehan@qianxin.com>
14 months agotest//erasure-code/TestErasureCodeLrc: free allocated CrushWrapper 57113/head
Kefu Chai [Sun, 28 Apr 2024 01:05:07 +0000 (09:05 +0800)]
test//erasure-code/TestErasureCodeLrc: free allocated CrushWrapper

in TestErasureCodeLrc.cc, we create a `CrushWrapper` without
destroying and freeing it. and ASan points this out:
```
Indirect leak of 72000 byte(s) in 1000 object(s) allocated from:
    #0 0x559e00acc2bd in operator new(unsigned long) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_erasure_code_lrc+0x1ed2bd) (BuildId: 1cd93d0f231006242239eb0d81a8d677e36aeba2)
    #1 0x559e00b2bb76 in __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::allocate(unsigned long, void const*) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/ext/new_allocator.h:127:27
    #2 0x559e00b2bb00 in std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::allocate(unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/allocator.h:185:32
    #3 0x559e00b2bb00 in std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > > >::allocate(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >&, unsigned long) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/alloc_traits.h:464:20
    #4 0x559e00b2b9d1 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_get_node() /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_tree.h:561:16
    #5 0x559e00b2aae4 in std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >* std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_tree.h:611:23
    #6 0x559e00b29520 in std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int>, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_tree.h:2431:19
    #7 0x559e00b255c2 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, int, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, int> > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/stl_map.h:501:15
    #8 0x559e00b188da in CrushWrapper::set_item_name(int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/jenkins-build/build/workspace/ceph-pull-requests/src/crush/CrushWrapper.h:466:7
    #9 0x7feb54a4dcc2 in CrushWrapper::insert_item(ceph::common::CephContext*, int, float, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, bool) /home/jenkins-build/build/workspace/ceph-pull-requests/src/crush/CrushWrapper.cc:1119:5
    #10 0x559e00ada922 in ErasureCodeTest_create_rule_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/erasure-code/TestErasureCodeLrc.cc:127:5
    #11 0x559e00c0e0a6 in void testing::internal::HandleSehExceptionsInMethodIfSupported<testing::Test, void>(testing::Test*, void (testing::Test::*)(), char const*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/googletest/googletest/src/gtest.cc:2605:10
```

so, in this change, let's manage the lifecycle of the `CrushWrapper`
instance with a smart pointer, so that it is destroyed and free'd
properly, and this should silence the ASan warning.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
14 months agoerasure-code/shec: use free() to release alloc()'ed memory chunk 57112/head
Kefu Chai [Sun, 28 Apr 2024 00:51:03 +0000 (08:51 +0800)]
erasure-code/shec: use free() to release alloc()'ed memory chunk

ASan warns
```
==445793==ERROR: AddressSanitizer: alloc-dealloc-mismatch (malloc vs operator delete) on 0x602000039b10
    #0 0x5604a544112d in operator delete(void*) (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_erasure_code_shec_all+0x1e012d) (BuildId: 8cfc74d22471b6905f9b23304aed2af945265a13)
    #1 0x7fc14752f588 in ErasureCodeShecTableCache::~ErasureCodeShecTableCache() /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/shec/ErasureCodeShecTableCache.cc:61:19
    #2 0x5604a544ccbe in ParameterTest_parameter_all_Test::TestBody() /home/jenkins-build/build/workspace/ceph-pull-requests/src/test/erasure-code/TestErasureCodeShec_all.cc:263:1
...
0x602000039b10 is located 0 bytes inside of 4-byte region [0x602000039b10,0x602000039b14)
allocated by thread T0 here:
    #0 0x5604a5405afe in malloc (/home/jenkins-build/build/workspace/ceph-pull-requests/build/bin/unittest_erasure_code_shec_all+0x1a4afe) (BuildId: 8cfc74d22471b6905f9b23304aed2af945265a13)
    #1 0x7fc1474c9617 in reed_sol_vandermonde_coding_matrix /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/jerasure/jerasure/src/reed_sol.c:86:10
    #2 0x7fc147528634 in ErasureCodeShec::shec_reedsolomon_coding_matrix(int) /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/shec/ErasureCodeShec.cc:514:12
    #3 0x7fc147526cd8 in ErasureCodeShecReedSolomonVandermonde::prepare() /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/shec/ErasureCodeShec.cc:390:14
    #4 0x7fc1475187aa in ErasureCodeShec::init(std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >&, std::ostream*) /home/jenkins-build/build/workspace/ceph-pull-requests/src/erasure-code/shec/ErasureCodeShec.cc:57:3
```

where we use `delete` to free the encoder matrix allocated using
`malloc()`. as jerasure is a library implemented in C language,
unless we want to reimplment it in C++, we should use `free()` to
free the memory chunk allocated by
`reed_sol_vandermonde_coding_matrix()`. also, please note,
jerasure does not provide a function to free the memory allocated
by this function, we have to explore its implementation, and use
`malloc()` directly. this should silence the ASan warning.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
14 months agoerasure-code/shec: replace 0 with nullptr when appropriate 57111/head
Kefu Chai [Sun, 28 Apr 2024 00:36:09 +0000 (08:36 +0800)]
erasure-code/shec: replace 0 with nullptr when appropriate

0 fails to send the message to human readers that the variable is
a pointer, but nullptr does. for improving the readability, let's
use nullptr when the variable in question is a pointer.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
14 months agoMerge pull request #57105 from zdover23/wip-doc-2024-04-26-mgr-dashboard
Zac Dover [Fri, 26 Apr 2024 23:08:52 +0000 (09:08 +1000)]
Merge pull request #57105 from zdover23/wip-doc-2024-04-26-mgr-dashboard

doc/mgr: explain error message - dashboard.rst

Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
14 months agodoc/mgr: explain error message - dashboard.rst 57105/head
Zac Dover [Fri, 26 Apr 2024 11:59:09 +0000 (21:59 +1000)]
doc/mgr: explain error message - dashboard.rst

Explain that an error message received in response to
"redirect_resolve_ip_addr True" might be caused by having an
insufficiently recent release of Ceph running in your cluster.

Fixes: https://tracker.ceph.com/issues/61312
Signed-off-by: Zac Dover <zac.dover@proton.me>
14 months agoMerge pull request #52024 from lxbsz/wip-61660
Rishabh Dave [Fri, 26 Apr 2024 10:56:48 +0000 (16:26 +0530)]
Merge pull request #52024 from lxbsz/wip-61660

mds: fix the description for inotable testing only options

Reviewed-by: Dhairya Parmar <dparmar@redhat.com>
Reviewed-by: Rishabh Dave <ridave@redhat.com>
14 months agoMerge pull request #57035 from xxhdx1985126/wip-65610
Yingxin [Fri, 26 Apr 2024 02:08:53 +0000 (10:08 +0800)]
Merge pull request #57035 from xxhdx1985126/wip-65610

test/crimson/seastore/test_object_data_handler: remap pins through the transaction that created the pins

Reviewed-by: Yingxin Cheng <yingxin.cheng@intel.com>
14 months agoMerge pull request #56844 from cyx1231st/wip-crimson-fix-tri-mutex
Yingxin [Fri, 26 Apr 2024 02:07:07 +0000 (10:07 +0800)]
Merge pull request #56844 from cyx1231st/wip-crimson-fix-tri-mutex

crimson/common/tri_mutex: make locking/promotion atomic if possible

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Kefu Chai <tchaikov@gmail.com>
14 months agoMerge pull request #57093 from tchaikov/wip-ceph_crypto-matcher
Kefu Chai [Fri, 26 Apr 2024 00:41:48 +0000 (08:41 +0800)]
Merge pull request #57093 from tchaikov/wip-ceph_crypto-matcher

test: remove extraneous ")" after literal string for matcher

Reviewed-by: Casey Bodley <cbodley@redhat.com>
14 months agoqa/suites/orch: add test for smb mgr module basic deploy with resources 56350/head
John Mulligan [Wed, 24 Apr 2024 15:32:54 +0000 (11:32 -0400)]
qa/suites/orch: add test for smb mgr module basic deploy with resources

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agoqa/suites/orch: add test for smb mgr module basic deploy with cli
John Mulligan [Wed, 24 Apr 2024 15:32:47 +0000 (11:32 -0400)]
qa/suites/orch: add test for smb mgr module basic deploy with cli

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agoqa/suites/orch: add test for smb mgr module ad deploy with resources
John Mulligan [Wed, 3 Apr 2024 17:35:04 +0000 (13:35 -0400)]
qa/suites/orch: add test for smb mgr module ad deploy with resources

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agoqa/suites/orch: add test for smb mgr module ad deploy with cli
John Mulligan [Wed, 3 Apr 2024 17:34:53 +0000 (13:34 -0400)]
qa/suites/orch: add test for smb mgr module ad deploy with cli

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agoqa/tasks/cephadm: add a wait_for_service_not_present task func
John Mulligan [Tue, 23 Apr 2024 12:16:19 +0000 (08:16 -0400)]
qa/tasks/cephadm: add a wait_for_service_not_present task func

Add a wait_for_service_not_present task function that will wait until a
given service name is not present in the list of running cephadm
services. This is intended for testing service cleanup operations.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agodoc/mgr: add documentation for new smb mgr module
John Mulligan [Sat, 30 Mar 2024 20:50:29 +0000 (16:50 -0400)]
doc/mgr: add documentation for new smb mgr module

Add initial documentation for the new smb mgr module. It doesn't cover
every possible thing or expected future changes but it should cover
the basics of interacting with the module from the cli.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agoceph.spec.in: add smb module and python-dataclasses dependency
John Mulligan [Wed, 20 Mar 2024 18:08:24 +0000 (14:08 -0400)]
ceph.spec.in: add smb module and python-dataclasses dependency

The only distro ceph squid+ is building for at the moment that does not
already have a python version that includes dataclasses is centos/rhel
8. Add a dependency for the backport package on rhel8.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr: use black & isort on the smb module
John Mulligan [Tue, 30 Jan 2024 21:49:25 +0000 (16:49 -0500)]
pybind/mgr: use black & isort on the smb module

Provide tox envs that check or reformat code with black and isort,
currently applied to only the new smb module.
This is similar to what we recently did for enabling tox in the
cephadmlib dir as it only applies to new code. However, other modules
that want to opt-in to automated, python-community-wide typical,
stop-thinking-and-let-tools-do-it approach to code formatting can
be added to the new envs later on.

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_smb.py
John Mulligan [Tue, 30 Jan 2024 19:33:29 +0000 (14:33 -0500)]
pybind/mgr/smb: add unit tests file tests/test_smb.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_handler.py
John Mulligan [Sat, 27 Jan 2024 20:42:06 +0000 (15:42 -0500)]
pybind/mgr/smb: add unit tests file tests/test_handler.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_rados_store.py
John Mulligan [Wed, 13 Mar 2024 15:22:22 +0000 (11:22 -0400)]
pybind/mgr/smb: add unit tests file tests/test_rados_store.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_resources.py
John Mulligan [Tue, 30 Jan 2024 19:33:29 +0000 (14:33 -0500)]
pybind/mgr/smb: add unit tests file tests/test_resources.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_resourcelib.py
John Mulligan [Tue, 30 Jan 2024 19:33:29 +0000 (14:33 -0500)]
pybind/mgr/smb: add unit tests file tests/test_resourcelib.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_validation.py
John Mulligan [Wed, 7 Feb 2024 21:15:21 +0000 (16:15 -0500)]
pybind/mgr/smb: add unit tests file tests/test_validation.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add unit tests file tests/test_enums.py
John Mulligan [Tue, 30 Jan 2024 19:33:29 +0000 (14:33 -0500)]
pybind/mgr/smb: add unit tests file tests/test_enums.py

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: create a smb tests dir
John Mulligan [Tue, 30 Jan 2024 19:33:29 +0000 (14:33 -0500)]
pybind/mgr/smb: create a smb tests dir

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: extend module.py with real smb mgmt methods
John Mulligan [Tue, 30 Jan 2024 21:13:49 +0000 (16:13 -0500)]
pybind/mgr/smb: extend module.py with real smb mgmt methods

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add cli.py wrapper funcs for cli/mgr interaction
John Mulligan [Tue, 30 Jan 2024 19:39:16 +0000 (14:39 -0500)]
pybind/mgr/smb: add cli.py wrapper funcs for cli/mgr interaction

Signed-off-by: John Mulligan <jmulligan@redhat.com>
14 months agopybind/mgr/smb: add handler.py the main business logic & transaction core
John Mulligan [Tue, 30 Jan 2024 19:15:29 +0000 (14:15 -0500)]
pybind/mgr/smb: add handler.py the main business logic & transaction core

Signed-off-by: John Mulligan <jmulligan@redhat.com>