CachedHelmInventory#

class neophile.inventory.helm.CachedHelmInventory(session, cache_path)#

Bases: HelmInventory

Cache the inventory of versions from a Helm repository.

Currently this does not protect against multiple versions of neophile runnign simultaneously. This can be added later.

Parameters:
  • session (ClientSession) – Client session to use for requests for Helm repository index files.

  • cache_path (Path) –

Methods Summary

inventory(url)

Inventory the available versions of Helm charts.

Methods Documentation

async inventory(url)#

Inventory the available versions of Helm charts.

Retrieve the inventory from the given Helm repository.

Parameters:

url (str) – URL of the repository.

Returns:

Mapping of Helm chart names to the latest available version of that Helm chart.

Return type:

dict of str

Raises:
  • aiohttp.ClientError – Raised on failure to retrieve the index file from the Helm repository.

  • ruamel.yaml.YAMLError – Raised if the index file for the repository doesn’t parse as YAML.