diff options
author | Dmitry Tantsur <divius.inside@gmail.com> | 2018-01-16 17:27:17 +0100 |
---|---|---|
committer | Dmitry Tantsur <divius.inside@gmail.com> | 2018-01-26 21:17:26 +0000 |
commit | cc6f7bc73e2b1c9dad9624f3bc9c4c6ac3d103de (patch) | |
tree | 016aa468cdbc15a9f31b5c73b5450f16e736aba6 /releasenotes | |
parent | 98570dc6addb4dbdac8cf394fcf29e6c640f1fff (diff) | |
download | ironic-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.yaml | 23 |
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. |