open-vault/command/operator_raft_snapshot.go
hc-github-team-secure-vault-core c3ac053218
backport of commit 63ab253cb429c6fd7d7d61be6f76b25c742de7d1 (#23929)
Co-authored-by: Ellie <ellie.sterner@hashicorp.com>
2023-10-31 15:18:21 -05:00

51 lines
1.3 KiB
Go

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
package command
import (
"strings"
"github.com/mitchellh/cli"
)
var _ cli.Command = (*OperatorRaftSnapshotCommand)(nil)
type OperatorRaftSnapshotCommand struct {
*BaseCommand
}
func (c *OperatorRaftSnapshotCommand) Synopsis() string {
return "Restores and saves snapshots from the Raft cluster"
}
func (c *OperatorRaftSnapshotCommand) Help() string {
helpText := `
Usage: vault operator raft snapshot <subcommand> [options] [args]
This command groups subcommands for operators interacting with the snapshot
functionality of the integrated Raft storage backend. Here are a few examples of
the Raft snapshot operator commands:
Installs the provided snapshot, returning the cluster to the state defined in it:
$ vault operator raft snapshot restore raft.snap
Saves a snapshot of the current state of the Raft cluster into a file:
$ vault operator raft snapshot save raft.snap
Inspects a snapshot based on a file:
$ vault operator raft snapshot inspect raft.snap
Please see the individual subcommand help for detailed usage information.
`
return strings.TrimSpace(helpText)
}
func (c *OperatorRaftSnapshotCommand) Run(args []string) int {
return cli.RunResultHelp
}