Exemplo n.º 1
0
def clean_deployment(cluster_hosts):
    """Clean deployment of clusters.

    :param cluster_hosts: clusters and hosts in each cluster to clean.
    :type cluster_hosts: dict of int or str to list of int or str

    .. note::
        The function should be called out of database session.
    """
    with util.lock('serialized_action'):
        logging.debug('clean cluster_hosts: %s', cluster_hosts)
        with database.session():
            cluster_hosts, os_versions, target_systems = (
                util.update_cluster_hosts(cluster_hosts))
            manager = ConfigManager()
            manager.clean_cluster_and_hosts(
                cluster_hosts, os_versions, target_systems)
            manager.sync()
Exemplo n.º 2
0
def clean_deployment(cluster_hosts):
    """Clean deployment of clusters.

    :param cluster_hosts: clusters and hosts in each cluster to clean.
    :type cluster_hosts: dict of int or str to list of int or str

    .. note::
        The function should be called out of database session.
    """
    with util.lock('serialized_action') as lock:
        if not lock:
            raise Exception(
                'failed to acquire lock to clean deployment')

        logging.debug('clean cluster_hosts: %s', cluster_hosts)
        with database.session():
            cluster_hosts, os_versions, target_systems = (
                util.update_cluster_hosts(cluster_hosts))
            manager = ConfigManager()
            manager.clean_cluster_and_hosts(
                cluster_hosts, os_versions, target_systems)
            manager.sync()