]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
rbd: properly pass ceph global command line args to subprocess
authorMykola Golub <mgolub@suse.com>
Sun, 7 Jan 2018 11:08:06 +0000 (13:08 +0200)
committerMykola Golub <mgolub@suse.com>
Wed, 17 Jan 2018 08:00:33 +0000 (10:00 +0200)
commit722fbb903efdd533db3a3c75b6611e543b5e323f
tree86569376d56bb92bb09033f50f12c11831622621
parent9478c064d7e3752db98efe86f5a40f4a152281ab
rbd: properly pass ceph global command line args to subprocess

When initializing the global context, global_init parses command line
arguments and removes ceph global args from the list. As a result they
are not visible for rbd command line parser and global options were
ignored when passing them to subprocesses like nbd or ggate.

Fix this by keeping a list of ceph global init command line
arguments. To build the list we compare the list of initial command
line args and those that remain after global_init parsing.

After this fix it is possible to pass any ceph global option to a
subprocess.

Signed-off-by: Mykola Golub <mgolub@suse.com>
35 files changed:
src/tools/rbd/Shell.cc
src/tools/rbd/Shell.h
src/tools/rbd/action/Bench.cc
src/tools/rbd/action/Children.cc
src/tools/rbd/action/Clone.cc
src/tools/rbd/action/Copy.cc
src/tools/rbd/action/Create.cc
src/tools/rbd/action/Diff.cc
src/tools/rbd/action/DiskUsage.cc
src/tools/rbd/action/Export.cc
src/tools/rbd/action/Feature.cc
src/tools/rbd/action/Flatten.cc
src/tools/rbd/action/Ggate.cc
src/tools/rbd/action/Group.cc
src/tools/rbd/action/ImageMeta.cc
src/tools/rbd/action/Import.cc
src/tools/rbd/action/Info.cc
src/tools/rbd/action/Journal.cc
src/tools/rbd/action/Kernel.cc
src/tools/rbd/action/List.cc
src/tools/rbd/action/Lock.cc
src/tools/rbd/action/MergeDiff.cc
src/tools/rbd/action/MirrorImage.cc
src/tools/rbd/action/MirrorPool.cc
src/tools/rbd/action/Nbd.cc
src/tools/rbd/action/ObjectMap.cc
src/tools/rbd/action/Pool.cc
src/tools/rbd/action/Remove.cc
src/tools/rbd/action/Rename.cc
src/tools/rbd/action/Resize.cc
src/tools/rbd/action/Snap.cc
src/tools/rbd/action/Status.cc
src/tools/rbd/action/Trash.cc
src/tools/rbd/action/Watch.cc
src/tools/rbd/rbd.cc