def config_template(self): # NOTE: we set pg_receivexlog_path and pg_basebackup_path per site and globally mostly to verify that # it works, the config keys are deprecated and will be removed in a future release at which point we'll # switch to using pg_bin_directory config. bindir = find_pg_binary("") if hasattr(psycopg2.extras, "PhysicalReplicationConnection"): active_backup_mode = "walreceiver" else: active_backup_mode = "pg_receivexlog" config = { "alert_file_dir": os.path.join(str(self.temp_dir), "alerts"), "backup_location": os.path.join(str(self.temp_dir), "backupspool"), "backup_sites": { self.test_site: { "active_backup_mode": active_backup_mode, "object_storage": { "storage_type": "local", "directory": os.path.join(self.temp_dir, "backups"), }, "pg_receivexlog_path": os.path.join(bindir, "pg_receivexlog"), }, }, "json_state_file_path": os.path.join(self.temp_dir, "state.json"), "pg_basebackup_path": os.path.join(bindir, "pg_basebackup"), } return set_config_defaults(config)
def __init__(self, pgdata): pgver = os.getenv("PG_VERSION") pgbin, ver = pghconfig.find_pg_binary("", versions=[pgver] if pgver else None) self.pgbin = pgbin self.ver = ver self.pgdata = pgdata self.pg = None self.user = None
def config_template(self, override=None): # NOTE: we set pg_receivexlog_path and pg_basebackup_path per site and globally mostly to verify that # it works, the config keys are deprecated and will be removed in a future release at which point we'll # switch to using pg_bin_directory config. bindir, ver = find_pg_binary("") if hasattr(psycopg2.extras, "PhysicalReplicationConnection"): active_backup_mode = "walreceiver" else: active_backup_mode = "pg_receivexlog" # 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(ver) config = { "alert_file_dir": os.path.join(str(self.temp_dir), "alerts"), "backup_location": os.path.join(str(self.temp_dir), "backupspool"), "backup_sites": { self.test_site: { "active_backup_mode": active_backup_mode, "object_storage": { "storage_type": "local", "directory": os.path.join(self.temp_dir, "backups"), }, "pg_data_directory": pg_data_directory, "pg_receivexlog_path": os.path.join(bindir, "pg_receivexlog"), }, }, "json_state_file_path": os.path.join(self.temp_dir, "state.json"), "pg_basebackup_path": os.path.join(bindir, "pg_basebackup"), } if ver in ("10", "11"): config["backup_sites"][self.test_site]["pg_receivexlog_path"] = os.path.join(bindir, "pg_receivewal") if override: all_site_overrides = override.pop("backup_sites", None) for site_name, site_override in (all_site_overrides or {}).items(): if site_name in config["backup_sites"]: config["backup_sites"][site_name].update(site_override) else: config["backup_sites"][site_name] = site_override config.update(override) compat.makedirs(config["alert_file_dir"], exist_ok=True) return set_and_check_config_defaults(config)
def config_template(self): # NOTE: we set pg_receivexlog_path and pg_basebackup_path per site and globally mostly to verify that # it works, the config keys are deprecated and will be removed in a future release at which point we'll # switch to using pg_bin_directory config. bindir, ver = find_pg_binary("") if hasattr(psycopg2.extras, "PhysicalReplicationConnection"): active_backup_mode = "walreceiver" else: active_backup_mode = "pg_receivexlog" # 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(ver) config = { "alert_file_dir": os.path.join(str(self.temp_dir), "alerts"), "backup_location": os.path.join(str(self.temp_dir), "backupspool"), "backup_sites": { self.test_site: { "active_backup_mode": active_backup_mode, "object_storage": { "storage_type": "local", "directory": os.path.join(self.temp_dir, "backups"), }, "pg_data_directory": pg_data_directory, "pg_receivexlog_path": os.path.join(bindir, "pg_receivexlog"), }, }, "json_state_file_path": os.path.join(self.temp_dir, "state.json"), "pg_basebackup_path": os.path.join(bindir, "pg_basebackup"), } if ver == "10": config["backup_sites"][ self.test_site]["pg_receivexlog_path"] = os.path.join( bindir, "pg_receivewal") return set_and_check_config_defaults(config)
def __init__(self, pgdata): self.pgbin = pghconfig.find_pg_binary("") self.pgdata = pgdata self.pg = None self.user = None
def __init__(self, pgdata): pgver = os.getenv("PG_VERSION") self.pgbin = pghconfig.find_pg_binary("", versions=[pgver] if pgver else None) self.pgdata = pgdata self.pg = None self.user = None