forked from TrueCloudLab/frostfs-node
Evgenii Stratonikov
5521737f0b
Adopt EnableTraverseRunHooks to get rid of tracing boilerplate in multiple commands. Now adding `--trace` flag is sufficient for a command to support tracing. Finally, it looks how it _should_. Refs TrueCloudLab/frostfs-node#406 Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
50 lines
1 KiB
Go
50 lines
1 KiB
Go
package object
|
|
|
|
import (
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-cli/internal/commonflags"
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
// Cmd represents the object command.
|
|
var Cmd = &cobra.Command{
|
|
Use: "object",
|
|
Short: "Operations with Objects",
|
|
Long: `Operations with Objects`,
|
|
PersistentPreRun: func(cmd *cobra.Command, args []string) {
|
|
// bind exactly that cmd's flags to
|
|
// the viper before execution
|
|
commonflags.Bind(cmd)
|
|
commonflags.BindAPI(cmd)
|
|
},
|
|
}
|
|
|
|
func init() {
|
|
objectChildCommands := []*cobra.Command{
|
|
objectPutCmd,
|
|
objectDelCmd,
|
|
objectGetCmd,
|
|
objectSearchCmd,
|
|
objectHeadCmd,
|
|
objectHashCmd,
|
|
objectRangeCmd,
|
|
objectLockCmd,
|
|
objectNodesCmd,
|
|
}
|
|
|
|
Cmd.AddCommand(objectChildCommands...)
|
|
|
|
for _, objCommand := range objectChildCommands {
|
|
InitBearer(objCommand)
|
|
commonflags.InitAPI(objCommand)
|
|
}
|
|
|
|
initObjectPutCmd()
|
|
initObjectDeleteCmd()
|
|
initObjectGetCmd()
|
|
initObjectSearchCmd()
|
|
initObjectHeadCmd()
|
|
initObjectHashCmd()
|
|
initObjectRangeCmd()
|
|
initCommandObjectLock()
|
|
initObjectNodesCmd()
|
|
}
|