Discussion:
[Libstoragemgmt-devel] [SCM] libstoragemgmt branch, master, updated. 0.1.0-115-gf2ff674
Tony Asleson
2014-05-02 22:19:47 UTC
Permalink
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "libstoragemgmt".

The branch, master has been updated
via f2ff6747ed18b4ea1d54a1d7f4005319e3d65c4c (commit)
via 84efa8110892fc0c6238d77f46ff5ce2007f38ae (commit)
from 46c062bf43f27ea9a005da4d3bff2aec39690555 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit f2ff6747ed18b4ea1d54a1d7f4005319e3d65c4c
Author: Tony Asleson <***@redhat.com>
Date: Fri May 2 16:17:28 2014 -0500

lsm_daemon.c: Make process_directory handle nested dirs

Modified to handle nested sub directories generically and to remove
memory leaks and possible null pointer de-reference.

Signed-off-by: Tony Asleson <***@redhat.com>

commit 84efa8110892fc0c6238d77f46ff5ce2007f38ae
Author: Gris Ge <***@redhat.com>
Date: Fri May 2 22:23:22 2014 +0800

change code layout

New code layout:

* /python_binding
# Holding Python API codes.
* /c_binding
# Holding C API codes.
* /plugin
# Every plugin has its own folder. Example:
# 'sim://' plugin is /plugin/sim/
* /tools/lsmcli
# lsmcli code.
# Renamed from lsmclipy to lsmcli as we don't have lsmcli in C now.
* /daemon
# lsmd and lsm_restd
* /test
# Nothing changed. Just some code sync for this layout change.
* /doc
# Nothing changed. Just changed lsmclipy to lsmcli in doxygen.

Changed install layout:
* Plugin python module moved from lsm/ folder to lsm/plugin folder.
Example:
$PYTHONPATH/lsm/
$PYTHONPATH/lsm/plugin
$PYTHONPATH/lsm/plugin/sim/simarray.py
$PYTHONPATH/lsm/plugin/sim/simulator.py
$PYTHONPATH/lsm/plugin/sim/__init__.py
* libstoragemgmt.spec.in moved from top folder to /packaging folder.

Changed codes:
* If "lsmd" found a folder in $plugin_dir, it will try to search this
file:
$plugin_dir/$folder_name/$folder_name_lsmplugin
# This changes allows running lsm in devel codes and in test mode.
# As there is no folder(except . and ..) in /usr/bin, we will not get
# any penalty.
* Plugins are using this kind of module path:
from lsm.plugin.sim.simualtor import SimPlugin
# As plugin python module was moved from lsm/ folder to lsm/plugin
# folder.
* /tests/runtest.sh
# Just
* Automake and autoconf files.
* RPM spec file.

Tested by these auto-test commands:
* make check
* make distcheck

Tested by lsmcli command(using RPM installation) against these plugin:
$ lsmcli list --type systems
* sim
* simc
* smispy # tested on EMC VNX.
* ontap
* targetd
* smispy(eseries)

Plugin not tested:
* IBM V7K (/plugin/v7k)
* Nstor (/plugin/nstor)

TODO:
* _cmdline.py
Current shared with lsmcli and _transport.py.
I would suggest move lsmcli codes to /tools/lsmcli/cmdline.py,
and merge remaining codes to _transport.py
* /python_binding/plugin_helper/
Move plugin only codes from /python_binding/lsm/_xxx.py to
/python_binding/plugin_helper/ folder.
* Remove private calls of lsm from plugin codes.

It spent a lot of time to me to understand the code work flow and layout,
I hope this patch could save some time of others.

My intension for this patch is make thing more clarity in code layout.
Any comments or correction will be well appreciated.

Signed-off-by: Gris Ge <***@redhat.com>

-----------------------------------------------------------------------

Summary of changes:
.gitignore | 9 +++-
Makefile.am | 4 +-
c_binding/Makefile.am | 17 ++++++
{include => c_binding/include}/Makefile.am | 1 -
.../include}/libstoragemgmt/Makefile.am | 1 -
.../include}/libstoragemgmt/libstoragemgmt.h | 1 -
.../libstoragemgmt/libstoragemgmt_accessgroups.h | 0
.../libstoragemgmt/libstoragemgmt_blockrange.h | 0
.../libstoragemgmt/libstoragemgmt_capabilities.h | 0
.../libstoragemgmt/libstoragemgmt_common.h | 1 -
.../include}/libstoragemgmt/libstoragemgmt_disk.h | 0
.../include}/libstoragemgmt/libstoragemgmt_error.h | 1 -
.../include}/libstoragemgmt/libstoragemgmt_fs.h | 0
.../libstoragemgmt/libstoragemgmt_initiators.h | 1 -
.../libstoragemgmt/libstoragemgmt_nfsexport.h | 0
.../libstoragemgmt/libstoragemgmt_optionaldata.h | 0
.../libstoragemgmt/libstoragemgmt_plug_interface.h | 1 -
.../include}/libstoragemgmt/libstoragemgmt_pool.h | 1 -
.../libstoragemgmt/libstoragemgmt_snapshot.h | 0
.../libstoragemgmt/libstoragemgmt_systems.h | 0
.../include}/libstoragemgmt/libstoragemgmt_types.h | 1 -
.../libstoragemgmt/libstoragemgmt_version.h.in | 0
.../libstoragemgmt/libstoragemgmt_volumes.h | 1 -
{src => c_binding}/lsm_convert.cpp | 0
{src => c_binding}/lsm_convert.hpp | 0
{src => c_binding}/lsm_datatypes.cpp | 0
{src => c_binding}/lsm_datatypes.hpp | 1 -
{src => c_binding}/lsm_ipc.cpp | 0
{src => c_binding}/lsm_ipc.hpp | 0
{src => c_binding}/lsm_mgmt.cpp | 0
{src => c_binding}/lsm_plugin_ipc.cpp | 0
{src => c_binding}/lsm_plugin_ipc.hpp | 0
{src => c_binding}/test.cpp | 6 +-
{src => c_binding}/util/misc.cpp | 0
{src => c_binding}/util/misc.h | 0
{src => c_binding}/util/qparams.c | 0
{src => c_binding}/util/qparams.h | 0
configure.ac | 18 ++++---
daemon/Makefile.am | 23 ++++++++
{src => daemon}/lsm_daemon.c | 27 ++++++++--
{src => daemon}/lsm_rest.c | 0
{src => daemon}/lsm_rest.h | 0
lsm/Makefile.am | 41 ---------------
packaging/Makefile.am | 2 +
.../libstoragemgmt.spec.in | 30 +++++++----
plugin/Makefile.am | 54 +++++++++++++++++--
{lsm/lsm/external => plugin}/__init__.py | 0
{lsm/lsm/external => plugin/nstor}/__init__.py | 0
{lsm/lsm => plugin/nstor}/nstor.py | 0
{lsm => plugin/nstor}/nstor_lsmplugin | 2 +-
{lsm/lsm/external => plugin/ontap}/__init__.py | 0
{lsm/lsm => plugin/ontap}/na.py | 2 +-
{lsm/lsm => plugin/ontap}/ontap.py | 0
{lsm => plugin/ontap}/ontap_lsmplugin | 2 +-
{lsm/lsm/external => plugin/sim}/__init__.py | 0
{lsm => plugin/sim}/sim_lsmplugin | 2 +-
{lsm/lsm => plugin/sim}/simarray.py | 2 +-
{lsm/lsm => plugin/sim}/simulator.py | 0
plugin/simc/Makefile.am | 11 ++++
plugin/{ => simc}/simc_lsmplugin.c | 0
{lsm/lsm/external => plugin/smispy}/__init__.py | 0
{lsm/lsm => plugin/smispy}/eseries.py | 2 +-
{lsm/lsm => plugin/smispy}/smis.py | 0
{lsm/lsm => plugin/smispy}/smisproxy.py | 0
{lsm => plugin/smispy}/smispy_lsmplugin | 2 +-
{lsm/lsm/external => plugin/targetd}/__init__.py | 0
{lsm/lsm => plugin/targetd}/targetd.py | 0
{lsm => plugin/targetd}/targetd_lsmplugin | 2 +-
{lsm/lsm/external => plugin/v7k}/__init__.py | 0
{lsm/lsm => plugin/v7k}/ibmv7k.py | 0
{lsm => plugin/v7k}/v7k_lsmplugin | 2 +-
python_binding/Makefile.am | 18 +++++++
{lsm => python_binding}/lsm/__init__.py | 0
{lsm => python_binding}/lsm/_client.py | 0
{lsm => python_binding}/lsm/_cmdline.py | 2 +-
{lsm => python_binding}/lsm/_common.py | 0
{lsm => python_binding}/lsm/_data.py | 0
{lsm => python_binding}/lsm/_iplugin.py | 0
{lsm => python_binding}/lsm/_pluginrunner.py | 0
{lsm => python_binding}/lsm/_transport.py | 0
{lsm => python_binding}/lsm/external/__init__.py | 0
{lsm => python_binding}/lsm/external/xmltodict.py | 0
{lsm => python_binding}/lsm/version.py.in | 0
src/Makefile.am | 28 ----------
test/Makefile.am | 7 ++-
test/runtests.sh | 40 +++++++++++----
tools/Makefile.am | 2 +-
tools/lsmcli/Makefile.am | 7 +++
{lsm/lsm/external => tools/lsmcli}/__init__.py | 0
.../lsmcli/data_display.py | 0
tools/{lsmclipy => lsmcli}/lsmcli | 0
tools/lsmclipy/Makefile.am | 1 -
92 files changed, 234 insertions(+), 142 deletions(-)
create mode 100644 c_binding/Makefile.am
rename {include => c_binding/include}/Makefile.am (99%)
rename {include => c_binding/include}/libstoragemgmt/Makefile.am (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_accessgroups.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_blockrange.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_capabilities.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_common.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_disk.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_error.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_fs.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_initiators.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_nfsexport.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_optionaldata.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_plug_interface.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_pool.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_snapshot.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_systems.h (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_types.h (99%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_version.h.in (100%)
rename {include => c_binding/include}/libstoragemgmt/libstoragemgmt_volumes.h (99%)
rename {src => c_binding}/lsm_convert.cpp (100%)
rename {src => c_binding}/lsm_convert.hpp (100%)
rename {src => c_binding}/lsm_datatypes.cpp (100%)
rename {src => c_binding}/lsm_datatypes.hpp (99%)
rename {src => c_binding}/lsm_ipc.cpp (100%)
rename {src => c_binding}/lsm_ipc.hpp (100%)
rename {src => c_binding}/lsm_mgmt.cpp (100%)
rename {src => c_binding}/lsm_plugin_ipc.cpp (100%)
rename {src => c_binding}/lsm_plugin_ipc.hpp (100%)
rename {src => c_binding}/test.cpp (97%)
rename {src => c_binding}/util/misc.cpp (100%)
rename {src => c_binding}/util/misc.h (100%)
rename {src => c_binding}/util/qparams.c (100%)
rename {src => c_binding}/util/qparams.h (100%)
create mode 100644 daemon/Makefile.am
rename {src => daemon}/lsm_daemon.c (96%)
rename {src => daemon}/lsm_rest.c (100%)
rename {src => daemon}/lsm_rest.h (100%)
delete mode 100644 lsm/Makefile.am
rename libstoragemgmt.spec.in => packaging/libstoragemgmt.spec.in (95%)
copy {lsm/lsm/external => plugin}/__init__.py (100%)
copy {lsm/lsm/external => plugin/nstor}/__init__.py (100%)
rename {lsm/lsm => plugin/nstor}/nstor.py (100%)
rename {lsm => plugin/nstor}/nstor_lsmplugin (96%)
copy {lsm/lsm/external => plugin/ontap}/__init__.py (100%)
rename {lsm/lsm => plugin/ontap}/na.py (99%)
rename {lsm/lsm => plugin/ontap}/ontap.py (100%)
rename {lsm => plugin/ontap}/ontap_lsmplugin (96%)
copy {lsm/lsm/external => plugin/sim}/__init__.py (100%)
rename {lsm => plugin/sim}/sim_lsmplugin (96%)
rename {lsm/lsm => plugin/sim}/simarray.py (99%)
rename {lsm/lsm => plugin/sim}/simulator.py (100%)
create mode 100644 plugin/simc/Makefile.am
rename plugin/{ => simc}/simc_lsmplugin.c (100%)
copy {lsm/lsm/external => plugin/smispy}/__init__.py (100%)
rename {lsm/lsm => plugin/smispy}/eseries.py (99%)
rename {lsm/lsm => plugin/smispy}/smis.py (100%)
rename {lsm/lsm => plugin/smispy}/smisproxy.py (100%)
rename {lsm => plugin/smispy}/smispy_lsmplugin (95%)
copy {lsm/lsm/external => plugin/targetd}/__init__.py (100%)
rename {lsm/lsm => plugin/targetd}/targetd.py (100%)
rename {lsm => plugin/targetd}/targetd_lsmplugin (95%)
copy {lsm/lsm/external => plugin/v7k}/__init__.py (100%)
rename {lsm/lsm => plugin/v7k}/ibmv7k.py (100%)
rename {lsm => plugin/v7k}/v7k_lsmplugin (96%)
create mode 100644 python_binding/Makefile.am
rename {lsm => python_binding}/lsm/__init__.py (100%)
rename {lsm => python_binding}/lsm/_client.py (100%)
rename {lsm => python_binding}/lsm/_cmdline.py (99%)
rename {lsm => python_binding}/lsm/_common.py (100%)
rename {lsm => python_binding}/lsm/_data.py (100%)
rename {lsm => python_binding}/lsm/_iplugin.py (100%)
rename {lsm => python_binding}/lsm/_pluginrunner.py (100%)
rename {lsm => python_binding}/lsm/_transport.py (100%)
copy {lsm => python_binding}/lsm/external/__init__.py (100%)
rename {lsm => python_binding}/lsm/external/xmltodict.py (100%)
rename {lsm => python_binding}/lsm/version.py.in (100%)
delete mode 100644 src/Makefile.am
create mode 100644 tools/lsmcli/Makefile.am
rename {lsm/lsm/external => tools/lsmcli}/__init__.py (100%)
rename lsm/lsm/lsmcli_data_display.py => tools/lsmcli/data_display.py (100%)
rename tools/{lsmclipy => lsmcli}/lsmcli (100%)
delete mode 100644 tools/lsmclipy/Makefile.am


hooks/post-receive
--
libstoragemgmt
Loading...