compute: Add [compute-feature-enabled]ide_bus flag

This change adds a specific flag to allow environments to indicate that
they do not support an IDE bus being used to attach devices to an
instance.

This is required as Nova's libvirt driver is looking to default to the
newer QEMU machine types such as ``q35`` in the future [1]. These newer
machine types have dropped support for the IDE bus in favour of the more
modern SATA, SCSI and VirtIO buses. As such in the longer term it cannot
be assumed that the IDE bus will always be available and in the short
term we need a way to indicate that an environment doesn't support IDE
when it's using the ``q35`` machine type.

For now the flag defaults to True but will need to move to False if Nova
ever defaults to the ``q35`` machine type.

[1] https://specs.openstack.org/openstack/nova-specs/specs/wallaby/approved/libvirt-stash-instance-machine-type.html

Change-Id: I40824fc3c88f16050407e52a790dd162f1f67e3a
3 files changed