command

package
v0.0.0-...-9e02621 Latest Latest
Warning

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

Go to latest
Published: Jul 30, 2023 License: MIT Imports: 19 Imported by: 2

Documentation

Index

Constants

View Source
const (
	EnvCliNoColor = `NO_COLOR`
)

Variables

This section is empty.

Functions

func ArgumentAsString

func ArgumentAsString(arguments []Argument) string

func ArgumentsString

func ArgumentsString(arguments []Argument) string

func CommandErrorText

func CommandErrorText(cmd NamedCommand) string

func CommandHelp

func CommandHelp(c Command) string

func Commands

func Commands(metaPtr *Meta, commands CommandFunc) map[string]cli.CommandFactory

func ExampleString

func ExampleString(examples map[string]string) string

func FlagString

func FlagString(flags *flag.FlagSet) string

func MergeAutocompleteFlags

func MergeAutocompleteFlags(flags ...complete.Flags) complete.Flags

func ParseArguments

func ParseArguments(args []string, arguments []Argument) (map[string]Argument, error)

func SetupEnv

func SetupEnv(args []string) []string

Types

type Argument

type Argument struct {
	Name        string
	Description string
	Optional    bool
	Type        ArgumentType
	Value       interface{}
	HasValue    bool
}

func (Argument) BoolValue

func (a Argument) BoolValue() bool

func (Argument) IntValue

func (a Argument) IntValue() int

func (Argument) ListValue

func (a Argument) ListValue() []string

func (Argument) StringValue

func (a Argument) StringValue() string

type ArgumentType

type ArgumentType uint
const (
	ArgumentString ArgumentType = 0
	ArgumentInt    ArgumentType = 1 << iota
	ArgumentBool   ArgumentType = 2 << iota
	ArgumentList   ArgumentType = 3 << iota
)

type Command

type Command interface {
	Name() string
	FlagSet() *flag.FlagSet
	Arguments() []Argument
	Synopsis() string
	Examples() map[string]string
}

type CommandFunc

type CommandFunc func(meta Meta) map[string]cli.CommandFactory

type FlagSetFlags

type FlagSetFlags uint
const (
	FlagSetNoe     FlagSetFlags = 0
	FlagSetClient  FlagSetFlags = 1 << iota
	FlagSetDefault              = FlagSetClient
)

type GlobalFlagCommand

type GlobalFlagCommand interface {
	GlobalFlags(*flag.FlagSet)
}

type HumanWriter

type HumanWriter struct {
	Out io.Writer

	NoColor bool

	TimeFormat string

	PartsOrder []string

	PartsExclude []string

	FormatTimestamp     zerolog.Formatter
	FormatLevel         zerolog.Formatter
	FormatCaller        zerolog.Formatter
	FormatMessage       zerolog.Formatter
	FormatFieldName     zerolog.Formatter
	FormatFieldValue    zerolog.Formatter
	FormatErrFieldName  zerolog.Formatter
	FormatErrFieldValue zerolog.Formatter
}

func NewHumanWriter

func NewHumanWriter(options ...func(w *HumanWriter)) HumanWriter

func (HumanWriter) Write

func (w HumanWriter) Write(p []byte) (n int, err error)

type Meta

type Meta struct {
	Ui cli.Ui
	// contains filtered or unexported fields
}

func SetupRun

func SetupRun(appName string, version string, args []string) *Meta

func (*Meta) AutocompleteFlags

func (m *Meta) AutocompleteFlags(fs FlagSetFlags) complete.Flags

func (*Meta) Colorize

func (m *Meta) Colorize() *colorstring.Colorize

func (*Meta) FlagSet

func (m *Meta) FlagSet(n string, fs FlagSetFlags) *flag.FlagSet

type NamedCommand

type NamedCommand interface {
	Name() string
}

type VersionCommand

type VersionCommand struct {
	Meta
}

func (*VersionCommand) Arguments

func (c *VersionCommand) Arguments() []Argument

func (*VersionCommand) AutocompleteArgs

func (c *VersionCommand) AutocompleteArgs() complete.Predictor

func (*VersionCommand) AutocompleteFlags

func (c *VersionCommand) AutocompleteFlags() complete.Flags

func (*VersionCommand) Examples

func (c *VersionCommand) Examples() map[string]string

func (*VersionCommand) FlagSet

func (c *VersionCommand) FlagSet() *flag.FlagSet

func (*VersionCommand) Help

func (c *VersionCommand) Help() string

func (*VersionCommand) Name

func (c *VersionCommand) Name() string

func (*VersionCommand) ParsedArguments

func (c *VersionCommand) ParsedArguments(args []string) (map[string]Argument, error)

func (*VersionCommand) Run

func (c *VersionCommand) Run(args []string) int

func (*VersionCommand) Synopsis

func (c *VersionCommand) Synopsis() string

type ZerologUi

type ZerologUi struct {
	StderrLogger      zerolog.Logger
	StdoutLogger      zerolog.Logger
	OriginalFields    map[string]interface{}
	Ui                cli.Ui
	OutputIndentField bool
}

func HumanZerologUiWithFields

func HumanZerologUiWithFields(ui cli.Ui, fields map[string]interface{}) *ZerologUi

func ZerologUiWithFields

func ZerologUiWithFields(ui cli.Ui, fields map[string]interface{}) *ZerologUi

func (*ZerologUi) Ask

func (u *ZerologUi) Ask(query string) (string, error)

func (*ZerologUi) AskSecret

func (u *ZerologUi) AskSecret(query string) (string, error)

func (*ZerologUi) Error

func (u *ZerologUi) Error(message string)

func (*ZerologUi) Field

func (u *ZerologUi) Field(field string, value interface{}) *ZerologUi

func (*ZerologUi) Fields

func (u *ZerologUi) Fields(newFields map[string]interface{}) *ZerologUi

func (*ZerologUi) Info

func (u *ZerologUi) Info(message string)

func (*ZerologUi) LogHeader1

func (u *ZerologUi) LogHeader1(message string)

func (*ZerologUi) LogHeader2

func (u *ZerologUi) LogHeader2(message string)

func (*ZerologUi) Output

func (u *ZerologUi) Output(message string)

func (*ZerologUi) Warn

func (u *ZerologUi) Warn(message string)

Jump to

Keyboard shortcuts

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