summaryrefslogtreecommitdiff
path: root/releasenotes
diff options
context:
space:
mode:
authorDmitry Tantsur <divius.inside@gmail.com>2018-01-16 17:27:17 +0100
committerDmitry Tantsur <divius.inside@gmail.com>2018-01-26 21:17:26 +0000
commitcc6f7bc73e2b1c9dad9624f3bc9c4c6ac3d103de (patch)
tree016aa468cdbc15a9f31b5c73b5450f16e736aba6 /releasenotes
parent98570dc6addb4dbdac8cf394fcf29e6c640f1fff (diff)
downloadironic-cc6f7bc73e2b1c9dad9624f3bc9c4c6ac3d103de.tar.gz
Automatically migrate nodes to hardware types
This change adds a new data migration: migrate_to_hardware_types. It works by walking through known classic drivers, detecting matching hardware types and interfaces and updates nodes accordingly. Nodes that cannot be updated (e.g. matching hardware type is not enabled) are skipped. A new migration option reset_unsupported_interfaces can be set to True to allow resetting optional interfaces to their no-op versions. The example implementation are provided for the community supported IPMI and SNMP drivers, as well as for fake drivers based on them. Change-Id: I732b44f2ab1ef73f56b352415ffd9cdd8a0e232b Partial-Bug: #1690185
Diffstat (limited to 'releasenotes')
-rw-r--r--releasenotes/notes/migrate_to_hardware_types-0c85c6707c4f296d.yaml23
1 files changed, 23 insertions, 0 deletions
diff --git a/releasenotes/notes/migrate_to_hardware_types-0c85c6707c4f296d.yaml b/releasenotes/notes/migrate_to_hardware_types-0c85c6707c4f296d.yaml
new file mode 100644
index 000000000..5853f9160
--- /dev/null
+++ b/releasenotes/notes/migrate_to_hardware_types-0c85c6707c4f296d.yaml
@@ -0,0 +1,23 @@
+---
+upgrade:
+ - |
+ Adds new data migration ``migrate_to_hardware_types`` that will try to
+ migrate nodes from classic drivers to hardware types on upgrade. Matching
+ hardware types and interfaces have to be provided on classic drivers
+ themselves. Nodes that cannot be migrated are skipped. This can primary
+ happen for three reasons:
+
+ * migration is not implemented for the classic driver,
+ * the matching hardware type is not enabled,
+ * one or more matching hardware interfaces are not enabled.
+
+ In the latter case, the new migration command line option
+ ``reset_unsupported_interfaces`` can be used to reset optional interfaces
+ (all except for ``boot``, ``deploy``, ``management`` and ``power``) to
+ their no-op implementations (e.g. ``no-inspect``) if the matching
+ implementation is not enabled. Use it like::
+
+ ironic-dbsync online_data_migrations --option migrate_to_hardware_types.reset_unsupported_interfaces=true
+
+ This migration can be repeated several times to migrate skipped nodes
+ after the configuration is changed.