def get_pod_data_volume(persistence_data): persistence_data = validate_persistence_data(persistence_data=persistence_data) volumes = [] volume_mounts = [] for persistence_name in persistence_data: persistence_volumes, persistence_volume_mounts = get_volume_from_definition( volume_name=persistence_name, volume_settings=settings.PERSISTENCE_DATA) volumes += persistence_volumes volume_mounts += persistence_volume_mounts return volumes, volume_mounts
def get_data_store_secrets(persistence_data, data_paths): persistence_data = validate_persistence_data( persistence_data=persistence_data) secrets = set([]) secret_keys = {} for persistence_name in persistence_data: store, persistence_secret, persistence_secret_key = get_store_secret_from_definition( volume_name=persistence_name, volume_settings=settings.PERSISTENCE_DATA) if persistence_secret and persistence_secret_key and persistence_name in data_paths: secrets.add((persistence_secret, persistence_secret_key)) secret_keys[data_paths[persistence_name]] = { 'store': store, 'secret_key': persistence_secret_key } return secrets, secret_keys
def set_persistence(instance, default_persistence_data=None, default_persistence_outputs=None): if instance.persistence: return persistence_data = None persistence_outputs = None if instance.specification and instance.specification.persistence: persistence_data = instance.specification.persistence.data persistence_outputs = instance.specification.persistence.outputs if not persistence_data and default_persistence_data: persistence_data = default_persistence_data if not persistence_outputs and default_persistence_outputs: persistence_outputs = default_persistence_outputs persistence_data = validate_persistence_data( persistence_data=persistence_data) persistence_outputs = validate_persistence_outputs( persistence_outputs=persistence_outputs) persistence_config = PersistenceConfig(data=persistence_data, outputs=persistence_outputs) instance.persistence = persistence_config.to_dict()
def test_validate_persistence_data(self): assert validate_persistence_data(['path1', 'path2']) == ['path1', 'path2'] assert validate_persistence_data( None) == settings.PERSISTENCE_DATA.keys()