Support image pre-caching on compute nodes as requested via the API.
Upstream spec:
https://specs.openstack.org/openstack/nova-specs/specs/ussuri/approved/image-precache-support.html
Procedure for QE will be:
0. Set image_cache_manager_interval to something short like 10m for compute nodes
1. Set up a deployment with multiple compute nodes not using Ceph
2. Create an aggregate around multiple compute nodes
3. Request some image be pre-cached on that aggregate (openstack aggregate cache images)
4. Check logs on compute nodes to confirm (grep for 'Caching.*request' in compute logs. Check for errors around that time. Note timestamp on base image in $nova/instances/_base.
5. Re-request the same image, check that compute logs indicate that the image is already cached. Check base image file timestamp to ensure it has been updated.
6. Ensure that requesting the image be cached keeps the cache manager from removing it, and that it *is* removed once the cache manager runs after $interval time has passed since the last cache request.
Closing as CURRENTRELEASE. The code is present in 17.0 and 17.1, but no further QE work will be performed due to lack of capacity. This puts this RFE into the "implicitly supported" category like most Nova features that originate in the community and that appear in our OSP code without much involvement from Red Hat engineers. If a significant enough bug ends up being reported for this feature, we will re-evaluate the QE situation.
There will, however, be documentation written for this feature: https://issues.redhat.com/browse/RHOSPDOC-1276.