Esempio n. 1
0
def stop_containers(configuration):
    """
    stop old containers based on images

    Args:
        configuration: user final configuration

    Returns:
        True
    """
    containers_list = running_containers()
    container_names = virtual_machine_names_to_container_names(configuration)
    if containers_list:
        for container in container_names:
            if container in containers_list:
                info(
                    "killing container {0}".format(
                        os.popen(
                            "docker kill {0}".format(
                                container
                            )
                        ).read().rsplit()[0]
                    )
                )
    return True
Esempio n. 2
0
def get_image_name_of_selected_modules(configuration):
    """
    get list of image name using user final configuration

    Args:
        configuration: user final configuration

    Returns:
        list of virtual machine image name
    """
    return virtual_machine_names_to_container_names(configuration)
 def test_virtual_machine_container_names(self):
     modules_list = load_all_modules()
     config = honeypot_configuration_builder(modules_list)
     container_names = virtual_machine_names_to_container_names(config)
     # list of all modules available
     all_modules = [
         'ohp_ftpserver_weak_password', 'ohp_ftpserver_strong_password',
         'ohp_icsserver_veeder_root_guardian_ast',
         'ohp_sshserver_weak_password', 'ohp_sshserver_strong_password',
         'ohp_httpserver_basic_auth_strong_password',
         'ohp_httpserver_basic_auth_weak_password'
     ]
     self.assertCountEqual(container_names, all_modules)
Esempio n. 4
0
def remove_old_containers(configuration):
    """
    remove old containers based on images

    Args:
        configuration: user final configuration

    Returns:
        True
    """

    containers_list = all_existing_containers()
    for container in virtual_machine_names_to_container_names(configuration):
        if container in containers_list:
            info("removing container {0}".format(os.popen("docker rm {0}".format(container)).read().rsplit()[0]))
    return True