You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Update COMPUTE_STATUS_DISABLED from set_host_enabled compute call
This adds code to the ComputeManager.set_host_enabled method,
which will be called by the API in a subsequent change when
a compute service is enabled or disabled, which will add or remove
the COMPUTE_STATUS_DISABLED trait to/from the related compute node
resource providers managed by the compute service.
The set_host_enabled compute RPC API is a synchronous RPC call
and the only (non-fake) in-tree compute driver that implements the
set_host_enabled driver interface is XenAPIDriver. As such, the
method is changed to handle NotImplementedError so an error is not
returned to the API if a driver does not implement the interface.
Before this series, only the PUT /os-hosts/{host_name} API would
call this compute service method and that API was deprecated in 2.43.
In other words, most users (admins) are likely not using that API
and the only ones that could before were running with XenAPIDriver.
The change to update the COMPUTE_STATUS_DISABLED trait usage is
best effort so errors, expected or unexpected, from the ComputeVirtAPI
are logged but not raised back to the caller. With change
I3005b46221ac3c0e559e1072131a7e4846c9867c the ResourceTracker
update_available_resource flow will sync the trait based on the
current compute service disabled status.
The compute service RPC API version is incremented so that the API
will be able to determine if the compute service is new enough for
this new behavior when disabling/enabling a compute service in the
os-services API.
Part of blueprint pre-filter-disabled-computes
Change-Id: Ia95de2f23f12b002b2189c9294ec190569a628ab
0 commit comments