Finding an IPv4 address to advertise fails and crashes if the
interface exists but has no valid IPs. This can be fixed by
adding KeyError to the exceptions caught.
Change-Id: I60204427ec5201696d02c5c26f4b43a00d794413
Closes-Bug: #1342448
The agent attempts to sort the HardwareManager implementations found
by stevedore in order of suitability. This patch fixes a bug in the
sorting order that caused the GenericHardwareManager to always be
loaded.
Fixes bug 1327923
Change-Id: I1cc20e5351a704325f0cf41dab205c9164799f6a
During the first heartbeat, the heartbeater asks the agent to check
its advertised address; if the advertised IP is still the default
(None), the agent tries to replace it with the IP of the first network
interface it finds. If it fails to find either a network interface or
an IP address, the agent raises an exception.
Change-Id: I6d435d39e99ed0ff5c8b4883b6aa0b356f6cb4ae
Closes-Bug: #1309110
Add erase_devices method to the HardwareManager class. By default this
method iterates block devices, and calls a new abstract
erase_block_device method for each device. This patch includes a
simple implementation of erase_block_device on the
GenericHardwareManager which attempts to issue an ATA secure erase on
supported devices.
Change-Id: I81da065395b8785f636f1b0a0d60c9f1c045441e
The HardwareManager class was missing a few abstract method
declarations which it is expected to have. Add those.
Change-Id: I1d07b7f08a4fc23929bc09f65b897fdfa0da1770
Introduce `serializable_fields` to express which class attributes
to be serialized.
Get rid of OrderedDict. Just replacing it with regular dict.
Change-Id: I3f7639dab171d3d62e92d0d1bb6d7b071cf963ad
Added metaclass statement in base
HardwareManager class. It is necessary
in order to make it really abstract.
Change-Id: I2fa68f8cb11920d85989ba3589b4a394f17d42ae
Bumping the payload version to two, and adding CPU, Memory, and Block
Device information to the inventory.
Added dependency on psutil for available memory and cpu_count.
Requirements line copied from global requirements
Change-Id: Ia39c85c91b1d60468667787a7978020084dc6c2a
This removes the custom function that was in place before our move to
Openstack in favor of the utils method integrated with oslo.
Change-Id: If668e53ccc97743b00c4beae39d153ee63ed015a
The file handle for addr_info was left open, meaning we were leaking
file handles when sending system information. This ensures the handle is
closed.
Change-Id: I4b117d4f9ec32ad3f16f43632ffe9dc96da5ab7f
1) Added a py33 environment to tox
2) Updated tests to mock the correctly named builtins.open based on
python version
3) Other minor compatibility fixes
Tests for Python 3.3 will not pass due to this bug:
https://github.com/eventlet/eventlet/issues/83 among possibly others in
eventlet.
Change-Id: Ie4b512a926fa690ee77a71a89851c871ea1f6be0
Also fixes tests that were broken on PyPy.
Co-Authored-By: Jim Rollenhagen <jim@jimrollenhagen.com>
Change-Id: I2554aa844b040c4c74cbf287dccb06d816a39dbe