The iDRACCard attribute GroupID is empty for 15th Generation servers,
e.g., Dell EMC PowerEdge R750 and R650, which triggered the error
"attribute GroupID is not nullable".
A similar error message has been observed when processing the
iDRACCardInteger attributes LowerBound and UpperBound read
from a PowerEdge XE2420 server.
This change sets those attributes as nullable.
Change-Id: If34d96fab4249f466f63b3740d1ff5eb68012462
(cherry picked from commit 1488d904e2ad19e1b6455f66e23cdb03243f6912)
When converting Dell EMC PERC H755 RAID controller physical
disks to non-RAID mode, RAID-0 virtual disks get created
for each physical disk and disks moved to 'Online' state.
This is different from other controllers supporting non-RAID
conversion and takes up physical disks that cannot be
later used for user intended RAID configuration. This change
excludes H755 RAID controller's physical disks when converting
to non-RAID mode and leaves disks in 'Ready' state.
Conflicts:
dracclient/resources/raid.py
dracclient/tests/test_raid.py
Change-Id: Id6de320c8e8a9ca21fac277718c405c657f58a3a
(cherry picked from commit 9ebc4afc849dc2909b42f2708d39595639819404)
`StartingLBA` needs to be passed when creating virtual disks
sharing same physicial disks. Otherwise, only the first virtual
disk creation succeeds and iDRAC job has status "Completed
with Errors".
Change-Id: I985a714636fb2036cca038ffa281c1b1e01ffd52
(cherry picked from commit d26664e7f9f36e8935d4b38e1bc80c892bfcd6d7)
This change provides the time system inventory was last performed
by the iDRAC. That is done during system restart and referred to as
Collect System Inventory on Restart (CSIOR). The value is represented
in yyyymmddHHMMSS format.
Change-Id: I73ff5eb517528afe56b5cf45a74fa5d5519db186
Closes-Bug: #1894938
(cherry picked from commit a4c819e3045a13fb2d6c633af9c8b71dfb49d8f9)
This patch increases the amount of time to sleep before checking to see
if the iDRAC is ready following a reset to 60 seconds. 30 seconds was
too short for some servers.
Change-Id: I9252a2d56b852f72efcf571bf7d8e70cbb7cd874
(cherry picked from commit 1aaaf93f7cdcd51b9b57ff405ff64058202b7aa3)
This patch adds the ability to get and set the settings for RAID
settings.
Change-Id: Ifc63ca7d9a30378e75b160739b709a1264ffe550
(cherry picked from commit c3bb9606aa32d3cd1b44e5baab4ec2f298ed1c83)
This patch adds `bus` attribute to PhysicalDisks so clients
can determine the PCI bus ID of NVMe drives.
Change-Id: I9b6b88826b9902a059e1bf537e51d9f97c9389ba
(cherry picked from commit 719a7d81f8ac4d49bf1fd784665117adc62f676b)
This patch creates a new doc/requirements.txt file, moves into it the
required packages from test-requirements.txt, and makes the necessary
changes to the docs build to fix the dependencies.
Change-Id: I6cc9aadc6359fac5b985afb370bd4e33d4749b74
(cherry picked from commit 1b22d279e81c565396b126a40d0760d46ddf6ce7)
That's what the OpenStack community is using today. Also with newer
Sphinx versions, the current approach does no longer build.
Change-Id: Iab9f72bb146e8dd36de7fa868b41801e0c97e2ea
(cherry picked from commit b4c304c5d61a044f3e57025a5e5b729550458dc5)
This patch changes the parsing of virtual disks so
that if the DCIM_VirutalDiskView.RAIDStatus attribute
is not present then DCIM_VirutalDiskView.RaidStatus
will be used instead.
This is needed due to the attribute being renamed in
LCC version 4.0.0
Change-Id: I4ca1b7f6df47ce808920b5e24ad0be6b76963917
(cherry picked from commit 01e7ca19ce4161d9153dfe45520072521b0164b0)
This patch corrects the pointer to upper_constraints.txt so that it
uses the one on the stable/train branch.
Change-Id: I9b9ddfe44ff778d061f76b607f5cfa45f981a4fe
This patch updates .gitreview on the stable/train branch so that
"git review" automatically pushes to the correct branch.
Change-Id: I5d7060cf70a7ba091af77c03ecd112475e5e8edb
This patch adds the gate jobs for this repo to this repo. It also
switches from running py35 unit tests to running py36/37 unit tests.
Change-Id: Iee58de2768962fa27d11b513b1462f2d9c2a277d
iDRAC driver fails to clear foreign drives on some controllers
and returns message_id ``STOR058`` which means controllers does
not support clear_foreign_config operation.
Change-Id: I7df2d30242e7a490dfdce04d7f6ce98c68e9f0ed
This is a mechanically generated patch to ensure unit testing is in place
for all of the Tested Runtimes for Train.
See the Train python3-updates goal document for details:
https://governance.openstack.org/tc/goals/train/python3-updates.html
Change-Id: Ic94863fc8a5907fc3874cccb87ed217bcd671252
This patch is to check if a node is in recovery mode and take it
out of recovery mode by setting LifecycleControllerState attribute
value to 'Enabled'.
Modified list_lifecycle_settings() method to use
utils.list_settings() for retrieving lifecycle settings.
Change-Id: I4287f317b2413b70cd00fd4cf8aa69bff6ae5e2f
We are currently checking the MessageID to determine if an iDRAC
is ready. This patch is to check the value of LCStatus instead of
MessageID. If the value of LCStatus is "0", then the iDRAC is
considered ready.
Change-Id: I3426c226c4bb3cdcc95b98e9b203f100bb6777d5
This patch updates change_physical_disk_state() so that it returns the
actual results of drive conversion on each controller. This allows the
caller to use the returned information for realtime drive conversion.
This patch also deprecates returning the is_reboot_required and
commit_required_ids keys in the dictionary.
Change-Id: I10f4a44660e70f0cd8efd0ca9e8e96cb46751a61
When clear_foreign_config() does not detect a foreign disk, instead
of failing and raising an exception, it succeeds and returns a value
which informs the caller nothing further needs to be done.
Change-Id: I4cea95659db11747b1c8708e1dbe7cac53c0eaf9
This fixes the is_raid_controller method so that it returns true
for a BOSS controller in addition to normal RAID controllers.
Change-Id: Iedd3179b8b2b6e3815709cc1acfd6a3059e42399
For raid deletion, existing delete_virtual_disk functionality is not
freeing up foreign drives and spares, so have added ResetConfig and
ClearForeignConfig functionality for freeing up foreign drives and
spares.
Change-Id: I76390dc4fcf8de2fe5aa3d660f77edcef4a4dec1
When enumerating DCIM_ControllerView, the DriverVersion field may have
unprintable ASCII characters in it if the server has a BOSS card. In
the past, it was observed that this field could contain unprintable
non-ASCII characters, but unprintable ASCII characters have been
found in it as well.
This fix changes the filtering so that only printable ASCII
characters and the tab character pass the filter.
Closes-Bug: 1816194
Change-Id: If7274fed19fb763aa7c2e4adc3676a4e3c26aee0
The current code waits for 3 consecutive failed pings, each 10 seconds
apart to determine that an iDRAC has gone down during an iDRAC reset.
This is too long for some servers, as the iDRAC may come back up before
the 3rd ping failure. This results in a failure to detect the iDRAC
going down, which causes a timeout on the reset.
This patch changes the code to wait for only 2 consecutive ping
failures, which is what our highly tested downstream code does.
Closes-Bug: 1816195
Change-Id: Iac21d5eb722834089cbe4a2e7e19370a951951f0
Build a list of controllers which had disks converted
to or from RAID/JBOD and inidicate if a reboot is required.
The following steps allow the caller to retrieve a list of
controllers that have disks comverted to the specified
RAID status:
- Examine all disks in the system and filter out any that
are not attached to a RAID/BOSS controller.
- Inspect the controllers' disks to see if there are
disks that need to be converted. If a disk is already in
the desired status the disk is ignored, otherwise
it is converted. This function also handles failed or
unknown disk status appropriately and will raise exception(s)
where needed.
- Finally a dict is returned containing a list of controller
IDs for controllers whom had any of their disks converted,
and whether a reboot is required.
Typically the caller would then create a config job for the
list of controllers returned to finalize the RAID
configuration and reboot the node if necessary.
Change-Id: I5229f7699c9ca1d5b72a54b4ddcea6313b440836
Co-Authored-By: Christopher Dearborn <Christopher.Dearborn@dell.com>
Adds new function to reset the iDRAC and wait for it
to become operational again.
Change-Id: Ia8dc0b97e02fc5f2c4d39b6b6d90456c1cfc5b7a
Co-Authored-By: Christopher Dearborn <christopher.dearborn@dell.com>