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:
parent
6f3185f251
commit
2ebfb12b84
30
elements/proliant-tools/README.rst
Normal file
30
elements/proliant-tools/README.rst
Normal 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
|
1
elements/proliant-tools/element-deps
Normal file
1
elements/proliant-tools/element-deps
Normal file
@ -0,0 +1 @@
|
|||||||
|
package-installs
|
38
elements/proliant-tools/install.d/65-proliant-tools-install
Executable file
38
elements/proliant-tools/install.d/65-proliant-tools-install
Executable 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
|
1
elements/proliant-tools/package-installs.yaml
Normal file
1
elements/proliant-tools/package-installs.yaml
Normal file
@ -0,0 +1 @@
|
|||||||
|
alien:
|
10
elements/proliant-tools/pkg-map
Normal file
10
elements/proliant-tools/pkg-map
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"family": {
|
||||||
|
"debian": {
|
||||||
|
"alien": "alien"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"default": {
|
||||||
|
"alien": ""
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user