osia.installer package

Submodules

osia.installer.executor module

Executor module implements controlling logic of cluster installation

exception osia.installer.executor.InstallerExecutionException(*args, **kwargs)

Bases: Exception

Class represents exception raised by installer failure

osia.installer.executor.delete_cluster(cluster_name, installer)

Function is the controller of all actions leading to the cluster’s deletion.

osia.installer.executor.execute_installer(installer, base_path, operation, os_image=None)

Function executes actual installation of OpenShift

osia.installer.executor.install_cluster(cloud_provider, cluster_name, configuration, installer, dns_settings=None)

Function represents main entrypoint to all logic necessary for cluster’s deployment.

osia.installer.storage module

Module implements logic for persistence layer of osia

Currently the only supported persistance is via git. Module is responsible for maintenance of the git repository and to store the generated artifacts by the `openshift-install binary.

osia.installer.storage.check_repository()

Function checks local repository if it is up2date with remote. In case when there is difference between upstream and local copy it tries to pull from remote.

It returns the Repo object and remote associated with current tracking branch.

osia.installer.storage.delete_directory(cluster_directory)

Function deletes commited directory both from local copy and from the remote repository.

osia.installer.storage.write_changes(cluster_directory)

Function stages generated directory, which contains files generated by openshift-install function, creates commit, and pushes to the remote of tracking branch.

Module contents

The module represents all exported classes and functions required to full installation of cluster

class osia.installer.DNSProvider

Bases: object

Class implements dynamic provier of DNSUtil base class

classmethod instance()osia.installer.dns.base.DNSProvider

Returns singleton instance

load(directory: str) → Optional[osia.installer.dns.base.DNSUtil]

Method loads saved configuration of specific DNSUtil from file

classmethod register_provider(name: str, clazz: ClassVar)

Method to dynamically register new implementation of DNSUtil

class osia.installer.InstallerProvider

Bases: object

Class implements dynamic provider of registered platform specific implementations of AbstractInstaller. Class implements singleton design pattern.

add_installer(name: str, instance: ClassVar)

Insert concrete implementation of AbstractInstaller into the registry

classmethod instance()osia.installer.clouds.base.InstallerProvider

Method to obtains singleton instance.

classmethod register(name, instance)

Method to dynamically register implementation of AbstractInstaller

osia.installer.delete_cluster(cluster_name, installer)

Function is the controller of all actions leading to the cluster’s deletion.

osia.installer.download_installer(installer_version: str, dest_directory: str, source: str) → str

Starts search and extraction of installer

osia.installer.install_cluster(cloud_provider, cluster_name, configuration, installer, dns_settings=None)

Function represents main entrypoint to all logic necessary for cluster’s deployment.