avocado.utils.software_manager package¶
Subpackages¶
- avocado.utils.software_manager.backends package
- Submodules
- avocado.utils.software_manager.backends.apt module
- avocado.utils.software_manager.backends.base module
- avocado.utils.software_manager.backends.dnf module
- avocado.utils.software_manager.backends.dpkg module
- avocado.utils.software_manager.backends.rpm module
- avocado.utils.software_manager.backends.yum module
- avocado.utils.software_manager.backends.zypper module
- Module contents
Submodules¶
avocado.utils.software_manager.distro_packages module¶
-
avocado.utils.software_manager.distro_packages.
install_distro_packages
(distro_pkg_map, interactive=False)¶ Installs packages for the currently running distribution
This utility function checks if the currently running distro is a key in the distro_pkg_map dictionary, and if there is a list of packages set as its value.
If these conditions match, the packages will be installed using the software manager interface, thus the native packaging system if the currently running distro.
Parameters: distro_pkg_map (dict) – mapping of distro name, as returned by utils.get_os_vendor(), to a list of package names Returns: True if any packages were actually installed, False otherwise
avocado.utils.software_manager.inspector module¶
-
avocado.utils.software_manager.inspector.
SUPPORTED_PACKAGE_MANAGERS
= {'apt-get': <class 'avocado.utils.software_manager.backends.apt.AptBackend'>, 'dnf': <class 'avocado.utils.software_manager.backends.dnf.DnfBackend'>, 'yum': <class 'avocado.utils.software_manager.backends.yum.YumBackend'>, 'zypper': <class 'avocado.utils.software_manager.backends.zypper.ZypperBackend'>}¶ Mapping of package manager name to implementation class.
-
class
avocado.utils.software_manager.inspector.
SystemInspector
¶ Bases:
object
System inspector class.
This may grow up to include more complete reports of operating system and machine properties.
Probe system, and save information for future reference.
-
get_package_management
()¶ Determine the supported package management systems present on the system. If more than one package management system installed, try to find the best supported system.
-
avocado.utils.software_manager.manager module¶
-
class
avocado.utils.software_manager.manager.
SoftwareManager
¶ Bases:
object
Package management abstraction layer.
It supports a set of common package operations for testing purposes, and it uses the concept of a backend, a helper class that implements the set of operations of a given package management tool.
Lazily instantiate the object
Module contents¶
Software package management library.
This is an abstraction layer on top of the existing distributions high level package managers. It supports package operations useful for testing purposes, and multiple high level package managers (here called backends).
-
avocado.utils.software_manager.
install_distro_packages
(distro_pkg_map, interactive=False)¶ Installs packages for the currently running distribution
This utility function checks if the currently running distro is a key in the distro_pkg_map dictionary, and if there is a list of packages set as its value.
If these conditions match, the packages will be installed using the software manager interface, thus the native packaging system if the currently running distro.
Parameters: distro_pkg_map (dict) – mapping of distro name, as returned by utils.get_os_vendor(), to a list of package names Returns: True if any packages were actually installed, False otherwise
-
class
avocado.utils.software_manager.
SoftwareManager
¶ Bases:
object
Package management abstraction layer.
It supports a set of common package operations for testing purposes, and it uses the concept of a backend, a helper class that implements the set of operations of a given package management tool.
Lazily instantiate the object