Discussion:
[Libstoragemgmt-devel] [SCM] libstoragemgmt branch, master, updated. 1.1.0-112-gc19a91c
Tony Asleson
2015-04-01 20:54:09 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 c19a91cd47331d72aae408595a779667165ff645 (commit)
via fecc31c2cc2dfe11d1183b2b67df27366f07873f (commit)
via f6a334fa405111e15ffb5bd190c4440ffc7d6f68 (commit)
via cab76935ac4eba6319586db4375d0471db05112b (commit)
via 21109cc59165ba6663f3a1828a2f6369ae88c7f5 (commit)
via 8953b98dd2e837019116273cc19387a8172d44d7 (commit)
via 325fa6b50239f84d02c76c953f3574f1ea872bbe (commit)
via 5e8087698a8962d587987a41316c4f129bb6ac5f (commit)
from 3f11665cbcfd438a57b805778d393e0c467b5a36 (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 c19a91cd47331d72aae408595a779667165ff645
Merge: 3f11665 fecc31c
Author: Tony Asleson <***@gmail.com>
Date: Wed Apr 1 15:08:11 2015 -0500

Merge pull request #5 from cathay4t/hpsa

[PATCH V5 0/7] New HP SmartArray Plugin.

commit fecc31c2cc2dfe11d1183b2b67df27366f07873f
Author: Gris Ge <***@redhat.com>
Date: Tue Mar 31 16:32:44 2015 +0800

HP SmartArray Plugin: Fix bug of parsing free disks.

* The _parse_hpssacli_output() method will fail if got free disks detected.
This fix is removing list used in _parse_hpssacli_output(), every line
will be stored as an dictionary key.
If current line is not 'key: value' format, the value will be set as None.
Also skipped the incorrect indented 'Physical Drives' line, in the seek
of avoiding duplication dictionary key.

* Also fix the incorrect 'flag_free' argument used for
SmartArray._hp_disk_to_lsm_disk() when facing free disks.

* Tested on HP P410i with one free disk, hence updated the TODO line about
free disks.

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

commit f6a334fa405111e15ffb5bd190c4440ffc7d6f68
Author: Gris Ge <***@redhat.com>
Date: Sat Mar 14 21:33:07 2015 +0800

HP SmartArray Plugin: Add lsm.Client.volume_raid_info() support.

* Depending on output of command 'hpssacli ctrl slot=X show config detail'

* The hpssacli provide strip size and stripe size which is min_io_size and
opt_io_size. They are identical to values of Linux sysfs equivalent
entries.

* Set Capabilities.VOLUME_RAID_INFO.

Changes in V2:

* Initialize these variables in volume_raid_info():
strip_size, stripe_size, raid_type

* Add an extra check to raise PLUGIN_BUG just in case we got LD but no PD
entry when checking raid disk members in volume_raid_info().

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

commit cab76935ac4eba6319586db4375d0471db05112b
Author: Gris Ge <***@redhat.com>
Date: Sat Mar 14 21:33:06 2015 +0800

HP SmartArray Plugin: Add lsm.Client.disks() support.

* Treating HP SmartArray physical disk as LSM disk.

* Depending on output of command "hpssacli ctrl all show config detail"

* Only support Disk.STATUS_FREE, Disk.STATUS_OK and Disk.STATUS_OTHER.
# Seeking server to investigate on spare disk and faulty disks.

* Including physical disk location in Disk.name.

* Set Capabilities.DISKS.

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

commit 21109cc59165ba6663f3a1828a2f6369ae88c7f5
Author: Gris Ge <***@redhat.com>
Date: Fri Mar 20 14:51:01 2015 +0800

HP SmartArray Plugin: Add lsm.Client.volumes() support.

* Treating HP SmartArray logical drive as LSM volume.

* Depend on output of command "hpssacli ctrl all show config detail".

* New method of utils.py:
* file_read()
# Simply use 'cat' command to do file read which provide better
# error handling using ExecError.

* The block size and block count is read from linux sysfs as hpssacli
provide the sdX name for each logical drive.
Faillback to 512 and calculated from other output entry.

* Include sdX name if found in Volume.name.

* Set Capabilities.VOLUMES.

Changes in V3(no changes in v2):

* Changed file_read() to use python fileIO(open,read,close).

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

commit 8953b98dd2e837019116273cc19387a8172d44d7
Author: Gris Ge <***@redhat.com>
Date: Fri Mar 20 14:51:00 2015 +0800

HP SmartArray Plugin: Add lsm.Client.pools() support.

* Treating HP SmartArray 'Array' term as LSM Pool.

* Depending on output of 'hpssacli ctrl all show config detail'.

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

commit 325fa6b50239f84d02c76c953f3574f1ea872bbe
Author: Gris Ge <***@redhat.com>
Date: Fri Mar 20 14:50:59 2015 +0800

HP SmartArray Plugin: Add systems() support.

* Using these two hpssacli commands to generate lsm.System:
hpssacli ctrl all show detail
hpssacli ctrl all show status

* New methods in utils.py:
* cmd_exec()
# Execute given commands and return STDOUT.

* New classes in utils.py:
* ExecError
# Holding command failure output and return code.

* New method decorator: @_handle_errors

* Apply decorator @_handle_errors to all public methods of SmartArray class.

* Important new internal methods of SmartArray class:
* _parse_hpssacli_output()
# Convert output string of hpssacli to python dictionary.
# The indention of output will be treated as dictionary key/value
# relationship.
* _sacli_exec()
# Execute hpssacli commands and call _parse_hpssacli_output() to
# parse output string.

Changes in V2:

* Fix the missing '()' after the error message format in
_parse_hpssacli_output()

* Treat hpssacli 'No controllers detected' error as LsmError
ErrorNumber.NOT_FOUND_SYSTEM.

Changes in V3:

* Moved the 'utils.py' from previous commit to this one along with rpm SPEC
file and automake files update.

* Fix bug in _parse_hpssacli_output() when 'hpssacli' have this kind of
message in output:

Note: Predictive Spare Activation Mode is enabled, physical drives that
are in predictive failure state will not be available for use as data or
spare drives.

We filter out all line start with 'Note:'

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

commit 5e8087698a8962d587987a41316c4f129bb6ac5f
Author: Gris Ge <***@redhat.com>
Date: Fri Mar 20 14:50:58 2015 +0800

New plugin: HP SmartArray Plugin.

* New empty(no real function) plugin: HP SmartArray with URI 'hpsa://' and
no password required.

* The hpsa plugin will use HP binary tool -- hpssacli to control localhost
HP SmartArray cards. Hence root privilege required.

* This patch contains:
1. Autotools update for new plugin.
2. RPM SPEC file update for new plugin package:
libstoragemgmt-hpsa-plugin (Fedora/RHEL)
libstoragemgmt1-hpsa-plugin (OpenSuSE)
3. New manpage: hpsa_lsmplugin.1
4. The lsm plugin configuration file for root privilege requirement.

Changes in V3(no changes in V2):

* Move the 'utils.py' files to next commit along with its rpm spec and
automake file update.

Changes in V5(no changes in V3):

* RPM SPEC: Restart lsmd daemon on hpsa plugin installation.

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

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

Summary of changes:
config/Makefile.am | 5 +
config/pluginconf.d/{megaraid.conf => hpsa.conf} | 0
configure.ac | 14 +
doc/man/Makefile.am | 4 +
doc/man/hpsa_lsmplugin.1.in | 50 ++
packaging/libstoragemgmt.spec.in | 46 ++
plugin/Makefile.am | 2 +-
plugin/hpsa/Makefile.am | 8 +
plugin/hpsa/__init__.py | 1 +
plugin/hpsa/hpsa.py | 533 ++++++++++++++++++++
.../{ontap/ontap_lsmplugin => hpsa/hpsa_lsmplugin} | 8 +-
plugin/{megaraid => hpsa}/utils.py | 11 +
12 files changed, 677 insertions(+), 5 deletions(-)
copy config/pluginconf.d/{megaraid.conf => hpsa.conf} (100%)
create mode 100644 doc/man/hpsa_lsmplugin.1.in
create mode 100644 plugin/hpsa/Makefile.am
create mode 100644 plugin/hpsa/__init__.py
create mode 100644 plugin/hpsa/hpsa.py
copy plugin/{ontap/ontap_lsmplugin => hpsa/hpsa_lsmplugin} (87%)
copy plugin/{megaraid => hpsa}/utils.py (90%)


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