The ironic.drivers.modules.image_cache Module

The ironic.drivers.modules.image_cache Module

Utility for caching master images.

class ironic.drivers.modules.image_cache.ImageCache(master_dir, cache_size, cache_ttl)[source]

Bases: object

Class handling access to cache for master images.

clean_up(*args, **kwargs)[source]

Clean up directory with images, keeping cache of the latest images.

Files with link count >1 are never deleted. Protected by global lock, so that no one messes with master images after we get listing and before we actually delete files.

Parameters:amount – if present, amount of space to reclaim in bytes, cleaning will stop, if this goal was reached, even if it is possible to clean up more files
fetch_image(href, dest_path, ctx=None, force_raw=True)[source]

Fetch image by given href to the destination path.

Does nothing if destination path exists and is up to date with cache and href contents. Only creates a hard link (dest_path) to cached image if requested image is already in cache and up to date with href contents. Otherwise downloads an image, stores it in cache and creates a hard link (dest_path) to it.

Parameters:
  • href – image UUID or href to fetch
  • dest_path – destination file path
  • ctx – context
  • force_raw – boolean value, whether to convert the image to raw format
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.