Skip to content

Commit 9d14e06

Browse files
committed
Allow reading BACKUP_PATH from env variables, add some new options (not implemented yet)
1 parent 2f76db6 commit 9d14e06

File tree

2 files changed

+17
-7
lines changed

2 files changed

+17
-7
lines changed

pg_probackup.c

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,11 @@ bool stream_wal = false;
3636
bool from_replica = false;
3737
static bool backup_logs = false;
3838
bool progress = false;
39+
/* delete options */
3940
bool delete_wal = false;
41+
bool delete_expired = false;
42+
bool apply_to_all = false;
43+
bool force_delete = false;
4044

4145
/* restore configuration */
4246
static char *target_time;
@@ -64,11 +68,11 @@ static pgut_option options[] =
6468
{ 's', 'i', "backup-id", &backup_id_string_param, SOURCE_CMDLINE },
6569
/* backup options */
6670
{ 'b', 10, "backup-pg-log", &backup_logs, SOURCE_CMDLINE },
67-
{ 'f', 'b', "backup-mode", opt_backup_mode, SOURCE_CMDLINE },
68-
{ 'b', 'C', "smooth-checkpoint", &smooth_checkpoint, SOURCE_CMDLINE },
69-
{ 's', 'S', "slot", &replication_slot, SOURCE_CMDLINE },
71+
{ 'f', 'b', "backup-mode", opt_backup_mode, SOURCE_CMDLINE },
72+
{ 'b', 'C', "smooth-checkpoint", &smooth_checkpoint, SOURCE_CMDLINE },
73+
{ 's', 'S', "slot", &replication_slot, SOURCE_CMDLINE },
7074
{ 'u', 2, "archive-timeout", &archive_timeout, SOURCE_CMDLINE },
71-
/* options with only long name (keep-xxx) */
75+
{ 'b', 19, "delete-expired", &delete_expired, SOURCE_CMDLINE },
7276
/* restore options */
7377
{ 's', 3, "time", &target_time, SOURCE_CMDLINE },
7478
{ 's', 4, "xid", &target_xid, SOURCE_CMDLINE },
@@ -77,9 +81,12 @@ static pgut_option options[] =
7781
{ 'f', 'T', "tablespace-mapping", opt_tablespace_map, SOURCE_CMDLINE },
7882
/* delete options */
7983
{ 'b', 12, "wal", &delete_wal, SOURCE_CMDLINE },
80-
/* retention options */
81-
{ 'u', 13, "redundancy", &retention_redundancy, SOURCE_CMDLINE },
82-
{ 'u', 14, "window", &retention_window, SOURCE_CMDLINE },
84+
{ 'b', 16, "expired", &delete_expired, SOURCE_CMDLINE },
85+
{ 'b', 17, "all", &apply_to_all, SOURCE_CMDLINE },
86+
{ 'b', 18, "force", &force_delete, SOURCE_CMDLINE },
87+
/* configure options */
88+
{ 'u', 13, "set-retention-redundancy", &retention_redundancy, SOURCE_CMDLINE },
89+
{ 'u', 14, "set-retention-window", &retention_window, SOURCE_CMDLINE },
8390
/* other */
8491
{ 'U', 15, "system-identifier", &system_identifier, SOURCE_FILE_STRICT },
8592

pgut/pgut.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -523,6 +523,9 @@ option_from_env(pgut_option options[])
523523
if (opt->source > SOURCE_ENV || opt->allowed < SOURCE_ENV)
524524
continue;
525525

526+
if (strcmp(opt->lname, "backup-path") == 0)
527+
value = getenv("BACKUP_PATH");
528+
526529
if (strcmp(opt->lname, "pgdata") == 0)
527530
value = getenv("PGDATA");
528531
if (strcmp(opt->lname, "port") == 0)

0 commit comments

Comments
 (0)