wal-g
1package pg
2
3import (
4"github.com/spf13/cobra"
5"github.com/wal-g/tracelog"
6"github.com/wal-g/wal-g/internal"
7"github.com/wal-g/wal-g/internal/databases/postgres"
8)
9
10const (
11WalRestoreUsage = "wal-restore target-pgdata source-pgdata"
12WalRestoreShortDescription = "Restores WAL segments from storage."
13WalRestoreLongDescription = "Restores the missing WAL segments that will be needed to perform pg_rewind from storage."
14)
15
16// walRestoreCmd represents the walRestore command
17var walRestoreCmd = &cobra.Command{
18Use: WalRestoreUsage,
19Short: WalRestoreShortDescription,
20Long: WalRestoreLongDescription,
21Args: cobra.ExactArgs(2),
22Run: func(cmd *cobra.Command, args []string) {
23storage, err := internal.ConfigureStorage()
24tracelog.ErrorLogger.FatalfOnError("Error on configure external folder %v\n", err)
25postgres.HandleWALRestore(args[0], args[1], storage.RootFolder())
26},
27}
28
29func init() {
30Cmd.AddCommand(walRestoreCmd)
31}
32