Add proliant-tools element

This new element installs hpssacli utility (for configuring
RAID) and installs proliantutils python module (which has
ironic-python-agent hardware manager for HP ProLiant hardware).

This module also exposes a new environment variable DIB_HPSSACLI_URL
which allows operator to pass a custom HTTP(S) URL for RPM of hpssacli
utility.

NOTE: This module currently supports only installing from source.

Change-Id: I0494e3db623fdd7ea9182ffba21c0652aaad113c
This commit is contained in:
Ramakrishnan G 2014-12-09 00:17:37 +05:30
parent 6f3185f251
commit 2ebfb12b84
5 changed files with 80 additions and 0 deletions

View File

@ -0,0 +1,30 @@
proliant-tools
==============
* This element can be used when building ironic-agent ramdisk. It
enables ironic-agent ramdisk to do in-band cleaning operations specific
to HP ProLiant hardware.
* Works with ubuntu and fedora distributions (on which ironic-agent
element is supported).
* Currently the following utilities are installed:
+ `proliantutils`_ - This module registers an ironic-python-agent hardware
manager for HP ProLiant hardware, which implements in-band cleaning
steps. The latest version of ``proliantutils`` available is
installed. This python module is released with Apache license.
+ `HP Smart Storage Administrator (HP SSA) CLI for Linux 64-bit`_ - This
utility is used by ``proliantutils`` library above for doing in-band RAID
configuration on HP ProLiant hardware. Currently installed version is
2.30. Newer version of ``hpssacli`` when available, may be installed to
the ramdisk by using the environment variable ``DIB_HPSSACLI_URL``.
``DIB_HPSSACLI_URL`` should contain the HTTP(S) URL for downloading the
RPM package for ``hpssacli`` utility. Availability of newer versions can
be in the Revision History in the above link. This utility is closed source
and is released with `HP End User License Agreement Enterprise Version`_.
.. _`proliantutils`: https://pypi.python.org/pypi/proliantutils
.. _`HP Smart Storage Administrator (HP SSA) CLI for Linux 64-bit`: http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_b6a6acb9762443b182280db805
.. _`HP End User License Agreement Enterprise Version`: ftp://ftp.hp.com/pub/softlib2/software1/doc/p2057331991/v33194/hpeula-en.html

View File

@ -0,0 +1 @@
package-installs

View File

@ -0,0 +1,38 @@
#!/bin/bash
#
# Copyright 2015 Hewlett-Packard Development Company, L.P.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
if [ ${DIB_DEBUG_TRACE:-1} -gt 0 ]; then
set -x
fi
set -eu
set -o pipefail
# Set the below variable to allow hpssacli to be installed from custom URLs.
DIB_HPSSACLI_URL=${DIB_HPSSACLI_URL:-https://ftp.hp.com/pub/softlib2/software1/pubsw-linux/p1857046646/v109216/hpssacli-2.30-6.0.x86_64.rpm}
curl -k -o /tmp/hpssacli.rpm $DIB_HPSSACLI_URL
if [[ $DISTRO_NAME = "ubuntu" || $DISTRO_NAME = "debian" ]]; then
# There is no deb package for hpssacli. Install with alien.
alien -i /tmp/hpssacli.rpm
else
rpm -iv /tmp/hpssacli.rpm
fi
rm -f /tmp/hpssacli.rpm
# Install proliantutils python module
pip install proliantutils

View File

@ -0,0 +1 @@
alien:

View File

@ -0,0 +1,10 @@
{
"family": {
"debian": {
"alien": "alien"
}
},
"default": {
"alien": ""
}
}