Utilize uuids internally to reference Instances

Registered by Brian Waldon

Currently we support uuids through our public interfaces, but internally we still depend on integers. We should transition the codebase to depend fully on uuids. We currently have a four-tiered approach:

1) Convert compute api to accept instance objects
2) Convert compute manager to accept instance uuids
3) Convert virt drivers to accept instance objects
4) Update any remaining integer-based calls

Blueprint information

Status:
Complete
Approver:
Vish Ishaya
Priority:
Medium
Drafter:
Brian Waldon
Direction:
Approved
Assignee:
Titan
Definition:
Approved
Series goal:
Accepted for essex
Implementation:
Implemented
Milestone target:
milestone icon 2012.1
Started by
Thierry Carrez
Completed by
Vish Ishaya

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/internal-uuids,n,z

Addressed by: https://review.openstack.org/1432
    Converting reboot to use instance objects

Addressed by: https://review.openstack.org/1459
    Converting resize to use instance objects

Addressed by: https://review.openstack.org/1462
    Converting rebuild to use instance objects.

Addressed by: https://review.openstack.org/1506
    Converting delete to use instance objects

Addressed by: https://review.openstack.org/1507
    Converting start and stop to use instance objects

Addressed by: https://review.openstack.org/1517
    Convert pause/unpause, sus/res to use instance obj

Addressed by: https://review.openstack.org/1518
    Converting metadata calls to use instance objects

Addressed by: https://review.openstack.org/1519
    Convert pause/unpause, sus/res to use instance obj

Addressed by: https://review.openstack.org/1520
    Converting set password to use instance objects

Addressed by: https://review.openstack.org/1521
    Convert pause/unpause, sus/res to use instance obj

Addressed by: https://review.openstack.org/1522
    Converting inject_file to use instance objects

Addressed by: https://review.openstack.org/1523
    Converting rescue/unrescue to use instance objects

Addressed by: https://review.openstack.org/1531
    Converting fixed ip calls to use instance objects

Addressed by: https://review.openstack.org/1532
    Converting consoles calls to use instance objects

Addressed by: https://review.openstack.org/1534
    Converting attach_volume to use instance object

Addressed by: https://review.openstack.org/1535
    Converting snapshot/backup to use instance objects

Addressed by: https://review.openstack.org/1536
    Converting network methods to use instance objects

Addressed by: https://review.openstack.org/1538
    Convert security_group calls to use instance objs

Addressed by: https://review.openstack.org/1539
    Converting lock/unlock to use instance objects

Addressed by: https://review.openstack.org/1540
    Convert remaining calls to use instance objects

Addressed by: https://review.openstack.org/1727
    pause/unpause in compute manager to use uuids

Addressed by: https://review.openstack.org/1729
    suspend/resume in compute manager to use uuids

Addressed by: https://review.openstack.org/1735
    snapshot/backup in compute manager to use uuids

Addressed by: https://review.openstack.org/1737
    suspend/resume in compute manager to use uuids

Addressed by: https://review.openstack.org/1738
    lock/unlock in compute manager to use uuids

Addressed by: https://review.openstack.org/1766
    Updating attach/detach in compute.api and compute.manager to use instance uuid instead of instance id. blueprint internal-uuids

Addressed by: https://review.openstack.org/1848
    Updating {add,remove}_security_group in compute.api to use instance uuids instead of instance ids. blueprint internal-uuids

Addressed by: https://review.openstack.org/1851
    Clean up compute api

Addressed by: https://review.openstack.org/1852
    Change compute API.update() to take object+params

Addressed by: https://review.openstack.org/1855
    Updating {add,remove}_fixed_ip_from_instance in compute.api and compute.manager to use instance uuid instead of instance id. blueprint internal-uuids

Addressed by: https://review.openstack.org/1856
    start/stop in compute manager to use uuids

Addressed by: https://review.openstack.org/1869
    power_on/power_off in compute manager to use uuids

Addressed by: https://review.openstack.org/1874
    rescue/unrescue in compute manager to use uuids

Addressed by: https://review.openstack.org/1876
    Updating set_admin_password in compute.api and compute.manager to use instance uuids instead of instance ids. Blueprint internal-uuids

Addressed by: https://review.openstack.org/1878
    reset/inject network info in compute to use uuid

Addressed by: https://review.openstack.org/1911
    Use instances for consoles and diagnostics

Addressed by: https://review.openstack.org/1919
    Use instance uuids for consoles and diagnostics.

Addressed by: https://review.openstack.org/1924
    Updating inject_file in compute.api and compute.manager to use instance uuids instead of instance ids. blueprint: internal-uuids

Addressed by: https://review.openstack.org/1927
    Use uuids for file injection.

Addressed by: https://review.openstack.org/1928
    Convert compute manager delete methods to objects

Addressed by: https://review.openstack.org/1942
    Use uuids for compute manager agent update.

Addressed by: https://review.openstack.org/1943
    reboot & rebuild to use uuids in compute manager

Addressed by: https://review.openstack.org/1950
    Fixing get_info method implementations in virt drivers to accept instance_name instead of instance_id. The abstract class virt.ComputeDriver defines get_info as: def get_info(self, instance_name). blueprint: internal-uuids

Addressed by: https://review.openstack.org/1956
    Make run_instance only support instance uuids.

Addressed by: https://review.openstack.org/1980
    Replacing instance id's in in xenapi.vmops and the xen plugin with instance uuids. The only references to instance id's left are calls to the wait_for_task() method. I will address that in another branch. blueprint: internal-uuids

Addressed by: https://review.openstack.org/2017
    Replace more cases of instance ids with uuids

Addressed by: https://review.openstack.org/2019
    Replace more cases of instance ids with uuids

Addressed by: https://review.openstack.org/2024
    Convert get_lock in compute to use uuids

Addressed by: https://review.openstack.org/2114
    Update associate_floating_ip to use instance objs

Addressed by: https://review.openstack.org/2244
    Renaming instance_actions.instance_id column to instance_uuid. blueprint: internal-uuids

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.