nova/nova/objects
Takashi NATSUME 0bc5a4ecb5 objects: Update keypairs when saving an instance
The keypair of a server is updated when rebuilding the server with a
keypair. This function has been added since API microversion 2.54.
However the 'keypairs' of the instance object is not saved when saving
the instance object currently.

Make the instance object update the 'keypairs' field when saving the
instance object.

Conflicts:
	nova/tests/unit/fake_instance.py
	nova/tests/unit/objects/test_instance.py

NOTE(stephenfin): Conflicts in 'fake_instance.py' are due to change
If7f48933db10fcca3b9a05e1e978dfc51f6dabd0 ("Claim resources in resource
tracker"), which is related to the vPMEM work and shouldn't be
backported, while the conflicts in 'test_instance.py' are due to change
Ic89352a9900515484bffe961475feb1cefc6b2a9 ("Remove
'instance_update_at_top', 'instance_destroy_at_top'") which removed some
cells v1 tests but shouldn't be removed here where cells v1 is
technically still a thing.

Change-Id: I8a2726b39d0444de8c35480024078a97430f5d0c
Closes-Bug: #1843708
Co-authored-by: Stephen Finucane <stephenfin@redhat.com>
(cherry picked from commit 086796021b)
(cherry picked from commit aed86ee5d6)
(cherry picked from commit b971dc82cb)
2020-07-27 16:33:40 +01:00
..
__init__.py network: Always retrieve network information if available 2018-07-03 16:50:06 +01:00
agent.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
aggregate.py Transform aggregate.update_prop notification 2018-07-15 23:36:31 +09:00
bandwidth_usage.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
base.py [placement] Object changes to support last-modified headers 2017-12-07 18:47:17 +00:00
block_device.py Add volume_type field to BlockDeviceMapping object 2018-09-28 03:29:24 -04:00
build_request.py Fix listing deleted servers with a marker 2019-10-23 15:03:13 -04:00
cell_mapping.py Fix using template cell urls with nova-manage 2019-01-17 14:18:14 -08:00
compute_node.py Fix ComputeNode ovo compatibility code 2019-01-25 14:17:59 +00:00
console_auth_token.py Reduce scope of 'path' query parameter to noVNC consoles 2019-10-02 16:19:14 +00:00
diagnostics.py Added nova objects for intance diagnostics 2017-05-30 00:39:44 +04:00
dns_domain.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
ec2.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
external_event.py Add ability to signal and perform online volume size change 2017-07-12 11:53:20 -04:00
fields.py Extend RequestGroup object for mapping 2019-02-07 20:06:51 -05:00
fixed_ip.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
flavor.py Merge "Remove old flavor_create db api method" 2018-03-20 18:11:06 +00:00
floating_ip.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
host_mapping.py Add --by-service to discover_hosts 2018-03-16 15:55:19 -07:00
hv_spec.py objects: Move 'hv_type' to 'fields.HVType' 2016-11-25 16:19:43 +00:00
image_meta.py Add HPET timer support for x86 guests 2018-11-20 22:39:37 +00:00
instance.py objects: Update keypairs when saving an instance 2020-07-27 16:33:40 +01:00
instance_action.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
instance_fault.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
instance_group.py Avoid unnecessary joins in InstanceGroup.get_hosts 2019-06-10 15:15:23 +00:00
instance_info_cache.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
instance_mapping.py Add online data migration for populating user_id 2019-03-08 19:01:41 -05:00
instance_numa_topology.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
instance_pci_requests.py Remove stale nested backport from InstancePCIRequests 2020-07-09 15:44:44 +00:00
keypair.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
migrate_data.py Remove _legacy_dict methods 2019-02-22 13:28:11 -05:00
migration.py Join migration_context and flavor in Migration.instance 2019-11-26 13:40:43 +00:00
migration_context.py Move get_pci_mapping_for_migration to MigrationContext 2019-05-26 18:40:28 +03:00
monitor_metric.py Fix MonitorMetric obj_make_compatible 2016-09-12 14:10:41 +00:00
network.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
network_metadata.py Assorted cleanups from numa-aware-vswitches series 2018-07-27 09:49:12 -07:00
network_request.py Merge "Remove DictCompat from NetworkRequest" 2016-06-30 10:23:36 +00:00
numa.py Fix overcommit for NUMA-based instances 2019-01-16 11:50:14 +00:00
pci_device.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
pci_device_pool.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
quotas.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
request_spec.py Workaround missing RequestSpec.instance_group.uuid 2019-06-03 20:55:19 -04:00
security_group.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
security_group_rule.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
selection.py Move the to_dict() method to the Selection object 2017-12-07 15:01:09 +00:00
service.py Don't generate service UUID for deleted services 2019-08-07 21:04:07 +00:00
tag.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
task_log.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
trusted_certs.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
vcpu_model.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virt_cpu_topology.py cleanup NovaObjectDictCompat from virt_cpu_topology 2015-08-05 08:56:30 +05:30
virt_device_metadata.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virtual_interface.py Populate InstanceMapping.user_id during migrations and schedules 2019-03-08 19:01:25 -05:00
volume_usage.py Transform volume.usage notification 2018-10-09 06:28:11 +00:00