Hi all,

I've been promising to do more knowledge sharing on IPA Hardware Managers, specifically in the form of a presentation. However, I wanted to go a different route that would be more likely to stand the test of time and be more self-service.

To that end, I've created a couple of well-commented example hardware managers here: https://github.com/jayofdoom/ipa-example-hardware-managers. If you've been wanting to know about how to write additional IPA Hardware Managers, between this and the already-existing inline documentation in IPA itself there should be more than enough information to get started. PRs and feedback accepted.

As a note, my hope is that we can find a reasonable place for this to live in the openstack namespace. I only created this in github so I could spend my time this afternoon writing the examples rather than getting repositories created.

While working on this, however, I came to a realization -- despite our documentation telling folks to subclass *either* hardware.HardwareManager or hardware.GenericHardwareManager (http://docs.openstack.org/developer/ironic-python-agent/#how-can-i-build-a-custom-hardwaremanager), after a lot of thought (and some time spent trying to drum up a use case for an example where it's useful), I think we should change this, and only encourage subclassing HardwareManager for out of tree hardware managers. I don't believe there's a technical way to prevent it, so it shouldn't technically be an API break, but I wanted to get a consensus before moving forward and making that change.

I hope the information is useful!

Thanks,
Jay Faulkner
OSIC


__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to