cmdutil

package
v1.9.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 25, 2019 License: Apache-2.0 Imports: 14 Imported by: 46

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateAlias added in v1.8.8

func CreateAlias(cmd *cobra.Command, invocation string) *cobra.Command

CreateAlias generates a nested command tree for the invocation specified, which should be space-delimited as on the command-line. The 'Use' field of 'cmd' should specify '{{alias}}' instead of the command name as that will be filled in based on each invocation. Similarly, for the 'Example' field, '{{alias}}' will be replaced with the full command path. These commands can later be merged into the final Command tree using 'MergeCommands' below.

func CreateDocsAlias added in v1.8.8

func CreateDocsAlias(command *cobra.Command, invocation string, pattern string) *cobra.Command

CreateDocsAlias sets the usage string for a docs-style command. Docs commands have no functionality except to output some docs and related commands, and should not specify a 'Run' attribute.

func ErrorAndExit

func ErrorAndExit(format string, args ...interface{})

ErrorAndExit errors with the given format and args, and then exits.

func Main

func Main(do func(interface{}) error, appEnv interface{}, decoders ...Decoder)

Main runs the common functionality needed in a go main function. appEnv will be populated and passed to do, defaultEnv can be nil if there is an error, os.Exit(1) will be called.

func MergeCommands added in v1.8.8

func MergeCommands(root *cobra.Command, children []*cobra.Command)

MergeCommands merges several command aliases (generated by 'CreateAlias' above) into a single coherent cobra command tree (with root command 'root'). Because 'CreateAlias' generates empty commands to preserve the right hierarchy, we go through a little extra effort to allow intermediate 'docs' commands to be preserved in the final command structure.

func ParseBranch added in v1.8.8

func ParseBranch(arg string) (*pfs.Branch, error)

ParseBranch takes an argument of the form "repo[@branch]" and returns the corresponding *pfs.Branch. This uses ParseCommit under the hood because a branch name is usually interchangeable with a commit-id.

func ParseBranches added in v1.7.0

func ParseBranches(args []string) ([]*pfs.Branch, error)

ParseBranches converts all arguments to *pfs.Commit structs using the semantics of ParseBranch

func ParseCommit added in v1.8.8

func ParseCommit(arg string) (*pfs.Commit, error)

ParseCommit takes an argument of the form "repo[@branch-or-commit]" and returns the corresponding *pfs.Commit.

func ParseCommits

func ParseCommits(args []string) ([]*pfs.Commit, error)

ParseCommits converts all arguments to *pfs.Commit structs using the semantics of ParseCommit

func ParseFile added in v1.8.8

func ParseFile(arg string) (*pfs.File, error)

ParseFile takes an argument of the form "repo[@branch-or-commit[:path]]", and returns the corresponding *pfs.File.

func ParseFiles added in v1.8.8

func ParseFiles(args []string) ([]*pfs.File, error)

ParseFiles converts all arguments to *pfs.Commit structs using the semantics of ParseFile

func ParseHistory added in v1.8.8

func ParseHistory(history string) (int64, error)

ParseHistory parses a --history flag argument. Permissable values are "all" "none", and integers greater than or equal to -1 (as strings).

func Populate

func Populate(object interface{}, decoders ...Decoder) error

Populate populates an object with environment variables.

The environment has precedence over the decoders, earlier decoders have precedence over later decoders.

func Run

func Run(run func(args []string) error) func(*cobra.Command, []string)

Run makes a new cobra run function that wraps the given function.

func RunBoundedArgs

func RunBoundedArgs(min int, max int, run func([]string) error) func(*cobra.Command, []string)

RunBoundedArgs wraps a function in a function that checks its argument count is within a range.

func RunCmdFixedArgs added in v1.8.8

func RunCmdFixedArgs(numArgs int, run func(*cobra.Command, []string) error) func(*cobra.Command, []string)

RunCmdFixedArgs wraps a function in a function that checks its exact argument count. The only difference between this and RunFixedArgs is that this passes in the cobra command.

func RunFixedArgs

func RunFixedArgs(numArgs int, run func([]string) error) func(*cobra.Command, []string)

RunFixedArgs wraps a function in a function that checks its exact argument count.

func RunIO

func RunIO(ioObj IO, args ...string) error

RunIO runs the command with the given IO and arguments.

func RunIODirPath

func RunIODirPath(ioObj IO, dirPath string, args ...string) error

RunIODirPath runs the command with the given IO and arguments in the given directory specified by dirPath.

func RunMinimumArgs added in v1.8.8

func RunMinimumArgs(min int, run func([]string) error) func(*cobra.Command, []string)

RunMinimumArgs wraps a function in a function that checks its argument count is above a minimum amount

func RunStdin

func RunStdin(stdin io.Reader, args ...string) error

RunStdin runs the command with the given stdin and arguments.

Types

type Decoder

type Decoder interface {
	Decode() (map[string]string, error)
}

Decoder decodes an env file.

type IO

type IO struct {
	Stdin  io.Reader
	Stdout io.Writer
	Stderr io.Writer
}

IO defines the inputs and outputs for a command.

type RepeatedStringArg

type RepeatedStringArg []string

RepeatedStringArg is an alias for []string

func (*RepeatedStringArg) Set

func (r *RepeatedStringArg) Set(s string) error

Set adds a string to r

func (*RepeatedStringArg) String

func (r *RepeatedStringArg) String() string

func (*RepeatedStringArg) Type

func (r *RepeatedStringArg) Type() string

Type returns the string representation of the type of r

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL