示例#1
0
 def test_recovery_targets(self, tmpdir):
     r = Restore()
     r._load_config = Mock()  # pylint: disable=protected-access
     r._get_object_storage = Mock()  # pylint: disable=protected-access
     with pytest.raises(RestoreError) as excinfo:
         r.run(args=[
             "get-basebackup",
             "--config=" + str(tmpdir),
             "--target-dir=" + str(tmpdir),
             "--site=test",
             "--recovery-target-action=promote",
             "--recovery-target-name=foobar",
             "--recovery-target-xid=42",
         ])
     assert "at most one" in str(excinfo.value)
     with pytest.raises(RestoreError) as excinfo:
         r.run(args=[
             "get-basebackup",
             "--config=" + str(tmpdir),
             "--target-dir=" + str(tmpdir),
             "--site=test",
             "--recovery-target-action=promote",
             "--recovery-target-time=foobar",
         ])
     assert "recovery_target_time 'foobar'" in str(excinfo.value)
示例#2
0
 def test_recovery_targets(self, tmpdir):
     config_file = tmpdir.join("conf.json").strpath
     write_json_file(config_file, {"backup_sites": {"test": {}}})
     r = Restore()
     r._get_object_storage = Mock()  # pylint: disable=protected-access
     with pytest.raises(RestoreError) as excinfo:
         r.run(args=[
             "get-basebackup",
             "--config", config_file,
             "--target-dir", tmpdir.strpath,
             "--site=test",
             "--recovery-target-action=promote",
             "--recovery-target-name=foobar",
             "--recovery-target-xid=42",
         ])
     assert "at most one" in str(excinfo.value)
     with pytest.raises(RestoreError) as excinfo:
         r.run(args=[
             "get-basebackup",
             "--config", config_file,
             "--target-dir", tmpdir.strpath,
             "--site=test",
             "--recovery-target-action=promote",
             "--recovery-target-time=foobar",
         ])
     assert "recovery_target_time 'foobar'" in str(excinfo.value)
示例#3
0
    def test_recovery_targets(self, tmpdir):
        config_file = tmpdir.join("conf.json").strpath

        # Instantiate a fake PG data directory
        pg_data_directory = os.path.join(str(self.temp_dir), "PG_DATA_DIRECTORY")
        os.makedirs(pg_data_directory)
        open(os.path.join(pg_data_directory, "PG_VERSION"), "w").write("9.6")

        write_json_file(config_file, {"backup_sites": {"test": {"pg_data_directory": pg_data_directory}}})

        r = Restore()
        r._get_object_storage = Mock()  # pylint: disable=protected-access
        with pytest.raises(RestoreError) as excinfo:
            r.run(args=[
                "get-basebackup",
                "--config", config_file,
                "--target-dir", tmpdir.strpath,
                "--site=test",
                "--recovery-target-action=promote",
                "--recovery-target-name=foobar",
                "--recovery-target-xid=42",
            ])
        assert "at most one" in str(excinfo.value)
        with pytest.raises(RestoreError) as excinfo:
            r.run(args=[
                "get-basebackup",
                "--config", config_file,
                "--target-dir", tmpdir.strpath,
                "--site=test",
                "--recovery-target-action=promote",
                "--recovery-target-time=foobar",
            ])
        assert "recovery_target_time 'foobar'" in str(excinfo.value)
示例#4
0
    def test_recovery_targets(self, tmpdir):
        config_file = tmpdir.join("conf.json").strpath

        # Instantiate a fake PG data directory
        pg_data_directory = os.path.join(str(self.temp_dir), "PG_DATA_DIRECTORY")
        os.makedirs(pg_data_directory)
        open(os.path.join(pg_data_directory, "PG_VERSION"), "w").write("9.6")

        write_json_file(config_file, {"backup_sites": {"test": {"pg_data_directory": pg_data_directory}}})

        r = Restore()
        r._get_object_storage = Mock()  # pylint: disable=protected-access
        with pytest.raises(RestoreError) as excinfo:
            r.run(args=[
                "get-basebackup",
                "--config", config_file,
                "--target-dir", tmpdir.strpath,
                "--site=test",
                "--recovery-target-action=promote",
                "--recovery-target-name=foobar",
                "--recovery-target-xid=42",
            ])
        assert "at most one" in str(excinfo.value)
        with pytest.raises(RestoreError) as excinfo:
            r.run(args=[
                "get-basebackup",
                "--config", config_file,
                "--target-dir", tmpdir.strpath,
                "--site=test",
                "--recovery-target-action=promote",
                "--recovery-target-time=foobar",
            ])
        assert "recovery_target_time 'foobar'" in str(excinfo.value)