def pre_restore_check(self):
     names = docker.get_docker_container_names(status="running")
     containers = set(magic_consts.RUNNING_REQUIRED_CONTAINERS) - set(names)
     if containers:
         raise Exception(
             "Required running containers: {0}".format(
                 ", ".join(containers)))
Beispiel #2
0
def test_get_container_names_with_format(mocker):
    sub_mock = mocker.patch(
        "octane.util.subprocess.call",
        return_value=("fuel-core-container_1\nfuel-core-container_2\n\n",
                      None))
    assert not docker.get_docker_container_names.use_without
    assert ["container_1", "container_2"] == \
        docker.get_docker_container_names()
    assert not docker.get_docker_container_names.use_without
    sub_mock.assert_called_once_with(
        ["docker", "ps", '--all', '--format="{{.Names}}"'],
        stdout=subprocess.PIPE)
Beispiel #3
0
 def pre_restore_check(self):
     names = docker.get_docker_container_names(status="running")
     containers = set(magic_consts.RUNNING_REQUIRED_CONTAINERS) - set(names)
     if containers:
         raise Exception("Required running containers: {0}".format(
             ", ".join(containers)))
     backup_ip = self.get_backup_dict()["ADMIN_NETWORK"]["ipaddress"]
     current_ip = self.get_current_dict()["ADMIN_NETWORK"]["ipaddress"]
     if backup_ip != current_ip:
         raise Exception(
             "Restore allowed on machine with same ipaddress. "
             "Use fuel-menu to set up ipaddress to {0}".format(backup_ip))
Beispiel #4
0
def test_get_container_names(mocker):

    def foo(call_args, *args, **kwargs):
        if '--format="{{.Names}}"' in call_args:
            raise subprocess.CalledProcessError(2, call_args)
        return ("NAMES\nfuel-core-container_1\nfuel-core-container_2", None)

    sub_mock = mocker.patch("octane.util.subprocess.call", side_effect=foo)
    assert not docker.get_docker_container_names.use_without
    assert ["container_1", "container_2"] == \
        docker.get_docker_container_names()
    sub_mock.assert_has_calls([
        mock.call(
            ["docker", "ps", '--all', '--format="{{.Names}}"'],
            stdout=subprocess.PIPE
        ), mock.call(
            ["docker", "ps", '--all'],
            stdout=subprocess.PIPE
        )])
    assert 2 == sub_mock.call_count
    assert docker.get_docker_container_names.use_without