ironic-specs/specs/kilo-implemented/driver-internal-info.rst
Devananda van der Veen d6caa9a083 Reorganize specs tree
* Move liberty -> approved
* Move completed liberty specs to liberty-implemented
* Move kilo -> kilo-implemented
* Move juno -> juno-implemented
* Move kilo-archive -> backlog (moving these to approved causes test
  failures because the template changed since kilo)
* Reword the header for the index page
* Update unit tests to look at the new "approved" folder

** NOTE **

This patch does not create placeholders in the previous locations
for each spec. This will be done in the following patch so that the
history is preserved. Both patches must be landed together so that web
links are not broken for long.

Change-Id: I61f02731150ea944eafaa8c6ea702210364b3478
Implements: blueprint feature-based-releases
2015-08-05 06:57:53 -07:00

2.2 KiB

Driver Internal Info

https://blueprints.launchpad.net/ironic/+spec/driver-internal-info

Problem description

Driver should have its own infos which cannot manipulated by user/admin. These infos are not input from admin like driver_info and they may vary during the deployment process. They can only be used by driver itself.

One example is ipmitool. Not all IPMI firmware support set boot device persistent, so we need to save this locally.

Proposed change

  • Add a new internal attribute driver_internal_info in nodes table, which cannot modify by Admin/user by calling node.update API
  • Modify node.update to clear driver_internal_info when update driver via node.update API.

Alternatives

Saving these infos in a new table named driver_interal_info.

Data model impact

Add a new internal attribute driver_internal_info in node table. This field is a json dict.

REST API impact

The driver_internal_info field should be added to the node details API.

RPC API impact

None

Driver API impact

None

Nova driver impact

None

Security impact

None

Other end user impact

None

Scalability impact

None

Performance Impact

None

Other deployer impact

None

Developer impact

Other drivers should save their own infos into the new attribute.

Implementation

Assignee(s)

Primary assignee:

tan-lin-good

Work Items

  • Add driver_internal_info to the nodes table with a migration.
  • Update object Node.
  • Support clean a node's driver_internal_infos when it changes its driver.
  • Update some drivers with this feature.

Dependencies

None

Testing

Add unit tests.

Upgrades and Backwards Compatibility

Add a migration script for DB.

Documentation Impact

Update the developer documentation.

References

None