avocado.core.dependencies.requirements.cache.backends package
Submodules
avocado.core.dependencies.requirements.cache.backends.sqlite module
Test requirements module.
- avocado.core.dependencies.requirements.cache.backends.sqlite.CACHE_DATABASE_PATH = '/home/docs/avocado/data/cache/requirements.sqlite'
The location of the requirements cache database
- avocado.core.dependencies.requirements.cache.backends.sqlite.SCHEMA = ['CREATE TABLE IF NOT EXISTS requirement_type (requirement_type TEXT UNIQUE)', 'CREATE TABLE IF NOT EXISTS environment_type (environment_type TEXT UNIQUE)', 'CREATE TABLE IF NOT EXISTS environment (environment_type TEXT,environment TEXT,FOREIGN KEY(environment_type) REFERENCES environment_type(environment_type))', 'CREATE UNIQUE INDEX IF NOT EXISTS environment_idx ON environment (environment, environment_type)', 'CREATE TABLE IF NOT EXISTS requirement (environment_type TEXT,environment TEXT,requirement_type TEXT,requirement TEXT,saved BOOLEAN,FOREIGN KEY(environment_type) REFERENCES environment(environment_type),FOREIGN KEY(environment) REFERENCES environment(environment),FOREIGN KEY(requirement_type) REFERENCES requirement_type(requirement_type))', 'CREATE UNIQUE INDEX IF NOT EXISTS requirement_idx ON requirement (environment_type, environment, requirement_type, requirement)']
The definition of the database schema
- avocado.core.dependencies.requirements.cache.backends.sqlite.delete_environment(environment_type, environment)
Deletes environment with all its requirements from cache.
- avocado.core.dependencies.requirements.cache.backends.sqlite.delete_requirement(environment_type, environment, requirement_type, requirement)
Deletes requirement from cache.
- avocado.core.dependencies.requirements.cache.backends.sqlite.get_all_environments_with_requirement(environment_type, requirement_type, requirement)
Fetches all environments with selected requirement from cache.
- avocado.core.dependencies.requirements.cache.backends.sqlite.get_all_requirements()
Fetches all requirements from database.
- Returns:
Dict with all environments which has requirements.
- avocado.core.dependencies.requirements.cache.backends.sqlite.is_environment_prepared(environment)
Checks if environment has all requirements saved.
- avocado.core.dependencies.requirements.cache.backends.sqlite.is_requirement_in_cache(environment_type, environment, requirement_type, requirement)
Checks if requirement is in cache.
- Return type:
True if requirement is in cache False if requirement is not in cache None if requirement is in cache but it is not saved yet.
- avocado.core.dependencies.requirements.cache.backends.sqlite.set_requirement(environment_type, environment, requirement_type, requirement, saved=True)
- avocado.core.dependencies.requirements.cache.backends.sqlite.update_environment(environment_type, old_environment, new_environment)
Updates environment information for each requirement in one environment.
It will remove the old environment and add the new one to the cache.
- Parameters:
environment_type (str) – Type of fetched environment
old_environment – Environment which should be updated
new_environment – Environment, which will be a reimbursement for the old one.
- avocado.core.dependencies.requirements.cache.backends.sqlite.update_requirement_status(environment_type, environment, requirement_type, requirement, new_status)
Updates status of selected requirement in cache.
The status has two values, save=True or not_save=False.