plugins.installer module

class plugins.installer.AbstractPluginInstaller(distribution=None, skip_docker=False)

Bases: object

A class that is used to handle plugin installation. Any class subclassing it may overwrite any public method except install(). You may assume that the cwd is self.base_path. If any other method than install() is called, then the caller has to ensure this.

Parameters:
  • distribution (str | None) – The distribution on which the installer is executed. See check_distribution()

  • skip_docker (bool) – Whether or not to do anything docker related.

base_path = None

The base directory of the plugin Must be overwritten by a class variable of a child class

build()

Build and install projects that can’t be installed through a package manager

install()

Completely install the plugin.

install_docker_images()

Build/Pull docker images

install_files()

Download and install files.

install_other_packages()

Install packages with package managers other than pip/dnf/apt.

install_pip_packages()

Install packages with pip

install_system_packages()

Install packages with apt/dnf