
This extends versioned objects and uses the object's convert_to_version() to perform conversions between different versions of the object. This conversion is only done at the "boundaries" of the api and conductor services. That is, when reading/writing to the database and when serializing/deserializing (for RPC). Internally, the services deal with the latest versions of the objects. Version column is introduced to make sure reading the DB object versions happens transparently for the developer. An exception is raised in case of a version compatibility error. The version column is null at first and will be filled with the appropriate versions by a data migration script in a following patch. Change-Id: I34629a5cbab7ff3f246ea19c0cb766badc7061db Partial-Bug: #1526283 Co-Authored-By: Ruby Loo <ruby.loo@intel.com>
Team and repository tags
Ironic
Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.
Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
- Documentation: http://docs.openstack.org/developer/ironic
- Source: http://git.openstack.org/cgit/openstack/ironic
- Bugs: http://bugs.launchpad.net/ironic
- Wiki: https://wiki.openstack.org/wiki/Ironic
- APIs: http://developer.openstack.org/api-ref/baremetal/index.html
Project status, bugs, and requests for feature enhancements (RFEs) are tracked on Launchpad: http://launchpad.net/ironic
For information on how to contribute to ironic, see http://docs.openstack.org/developer/ironic/dev/code-contribution-guide.html