Adds a new API for retrieving a snapshot's parent volume name.
SSH is used as there is currently no way to get this
information from the LH REST API.
Change-Id: I92921eb2eaaa0a18633b0883dfe990ae1d2cde0d
I added the version and downloads image to os-brick
a while back. You can view them here:
https://pypi.python.org/pypi/os-brick
This patch adds those image specific to the lefthand client
Change-Id: I4eea8a5fdeebbdf023a61de2c98d6bf0876e60a7
Adds support for remote copy via SSH. Newly added API calls
include:
- makeVolumeRemote
- makeVolumePrimary
- createRemoteSnapshotSchedule
- deleteRemoteSnapshotSchedule
- getRemoteSnapshotSchedule
- stopRemoteSnapshotSchedule
- startRemoteSnapshotSchedule
- doesRemoteSnapshotScheduleExist
- getIPFromCluster
The option for running remote copy tests against live arrays is now
available through the config.ini file.
Change-Id: I6be740d57e87cd7ef46fdafadaca4778441dbdfd
SSH is needed to make Remote Copy related calls to a LeftHand array.
Currently, SSH support is not available in the client. This patch adds
such capabilities.
Change-Id: I50ff9e31c3d3fac97bbabb95880346795f3b4656
The new API allows modification of snapshot options.
This allows for renaming of a snapshot which is used in
actions such as manage/unmanage of snapshots.
Change-Id: Ib0305e3ca5ef7cebbe3d46de64e849284a5dc763
The error description was not being displayed when an exception
was being raised. This was due to the patch merged in from
issue #12 (reported in the 3PAR client), which changed the body
to type bytes instead of typestr. The check in exceptions.py is
now updated to represent this change.
Change-Id: I471192a38b47f118114239fce63c52c9764b1ac9
Currently there is no way to suppress this warning, making the log
file bogged down with these messages. There should be an override
flag that allows you to willingly disabled these log messages.
Change-Id: Ie8a65feb2e9c3cfb666861157e2236e90e25ee29
This patch changes all references to HP in the client to now
be HPE.
The client itself is also renamed to hpelefthandclient.
The new version for this client is 2.0.0.
Change-Id: I7bfb20e5619b93bd1d7e0b7728932eb36bb0dad9
httplib2 is no longer maintained and may pose a security threat.
All calls and imports from httlib2 have been removed and replaced
with Python Requests.
Change-Id: I3cb24d34b990ecf3d8387bc194046806fdbfd06c
The Exception class for the LeftHand client did not have any
unit tests.
This patch adds unit tests that check the output from the
from_response function and the ClientException class when an
error is passed in.
This patch also removed the use of 'ref' from the
ClientException class. It was added in fa50dedd but was
never officially released so it will not be deprecated.
Change-Id: Ifeb0687e00808155fda116ac97abcf6afaedbff5
In LeftHand, the error exception returns messageID and message, we
are currently looking at code and desc, which do not exist. This patch
saves the correct values. This patch also throws the correct values in
the flask server as well.
There are some driver functions that look at the exact error message,
so having this saved properly is important.
Change-Id: I21399d6a7a2932485df34b2dda40c789e5edd746
Snapshotting multiple volumes at once is needed for consistency
group support. Version 12.5 of the LeftHand API supports this
feature, a client call is needed to invoke it.
Change-Id: I6399270c6a0742d09fdb88fa13af84dca4e9c718
In createVolume, clusterID is posted to the LeftHand API which is
incorrect and causes errors if the optional parameter clusterName
is not provided as well. clusterId should be posted instead.
Closes-Issue #3
Change-Id: Ief3d8748d3c665b6c1c4b95d875776bc599e6651
httplib2 is no longer maintained and may pose a security threat.
All calls and imports from httlib2 have been removed and replaced
with Python Requests.
Fixes order of operations for the case where ex_desc is None
during a client initialization.
Change-Id: I36f228fd72f52b239572915df931780d0ced3388
Client is fully compatible with Python3.4+. New requirements and test
requirements files have been added for Python3.4 to use instead
of the default files Python2.x looks at.
Tox now supports py34 testing. An additional section in tox.ini was
added to support this.
Basic Python calls have been modified in order to allow backwards
compatability between Python2.x and Python3.4.
Change-Id: I10ad569e5621e133d92561c6951b3a6ab8dfd4d7
Errors occuring during login were not very descriptive. This
patch adds more details about why a login to a LH backend failed.
Also, added the ability to toggle debug on before the client has
been initialized.
bug reference:
https://github.com/hp-storage/python-3parclient/issues/9
Change-Id: I7fe700ae11703dabd82436a105f634ddd5e8b8b1
Updated getVolumes so it can be limited to query volumes based on
a clusterName or/and with smaller set of fields.
Added a unit test.
Updated findInDict in base class to be able to just check the key.
Change-Id: I7d647917f2ca48e259a55ed32f23ea5378d3b0fa
Change README and test code so that tests are run from the top-level
directory.
Incorporated instructions for running with tox.
Change-Id: I278d29c47906461dfd4a0efbfff441a4cd924cb2
Updated the GitHub account references from WaltHP to hp-storage. The
repos have already been transfered to the new account. Update install
example to use "pip install ."
Change-Id: I3a08b0cb6476ade978a6c1f1a1b21e40ba5baee2
Updated setup.py to have correct test-requirements.
Updated requirements and test-requirements to contain
the proper packages.
Change-Id: Ib3ec3abaf2cc0eb27e0ff3ad4574207eee088611
Fixed a bug where multiple loggers would be created if the
LeftHand client was initialized multiple times. Debug messages
would then start repeating and making debugging difficult.
This fix is similar to the fix in the 3PAR client.
Change-Id: Ia1af8e608f5d703931b87223e46dc398cd715484
findServerVolumes added to the client.
Unit tests for server functions in the client added.
Removed unneeded print outputs during tearDown of unit tests.
Minor typo corrections.
Renamed test_HPLeftHandMockServer_flask to HPLeftHandMockServer_flask.
Change-Id: I7bbf5fa6f67efdf9bff272286cd057078a5b509c
When the test creates volumes, the volumes are now named
after the time they were created at. This is to avoid
attempts to create two volumes with the same name by
two simultaneous Jenkins jobs. This patch is based on
a previous patch but now depends on tox.
Change-Id: I89e75375cf5e5cdfd45eb0c4e850b126f55a4348