cli

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2024 License: Apache-2.0 Imports: 75 Imported by: 1

Documentation

Index

Constants

View Source
const (
	DefaultDurableConsumerName string = "natscli-bench"
	DefaultStreamName          string = "benchstream"
	DefaultBucketName          string = "benchbucket"
)

Variables

View Source
var SkipContexts bool

SkipContexts used during tests

View Source
var (
	Version = "development"
)

Functions

func SetContext

func SetContext(c context.Context)

SetContext sets the context to use

func SetLogger

func SetLogger(l Logger)

SetLogger sets a custom logger to use

func SetVersion

func SetVersion(v string)

func ValidStyles added in v0.1.0

func ValidStyles() []string

ValidStyles are valid color styles this package supports

Types

type ActTLSCmd added in v0.1.0

type ActTLSCmd struct {
	// contains filtered or unexported fields
}

type Logger

type Logger interface {
	Printf(format string, a ...any)
	Fatalf(format string, a ...any)
	Print(a ...any)
	Fatal(a ...any)
	Println(a ...any)
}

Logger provides a plugable logger implementation

type Options

type Options struct {
	// Config is a nats configuration context
	Config *natscontext.Context
	// Servers is the list of servers to connect to
	Servers string
	// Creds is nats credentials to authenticate with
	Creds string
	// TlsCert is the TLS Public Certificate
	TlsCert string
	// TlsKey is the TLS Private Key
	TlsKey string
	// TlsCA is the certificate authority to verify the connection with
	TlsCA string
	// Timeout is how long to wait for operations
	Timeout time.Duration
	// ConnectionName is the name to use for the underlying NATS connection
	ConnectionName string
	// Username is the username or token to connect with
	Username string
	// Password is the password to connect with
	Password string
	// Nkey is the file holding a nkey to connect with
	Nkey string
	// JsApiPrefix is the JetStream API prefix
	JsApiPrefix string
	// JsEventPrefix is the JetStream events prefix
	JsEventPrefix string
	// JsDomain is the domain to connect to
	JsDomain string
	// CfgCtx is the context name to use
	CfgCtx string
	// Trace enables verbose debug logging
	Trace bool
	// Customer inbox Prefix
	InboxPrefix string
	// Conn sets a prepared connect to connect with
	Conn *nats.Conn
	// Mgr sets a prepared jsm Manager to use for JetStream access
	Mgr *jsm.Manager
	// JSc is a prepared NATS JetStream context to use for KV and Object access
	JSc nats.JetStreamContext
	// Disables registering of CLI cheats
	NoCheats bool
	// PrometheusNamespace is the namespace to use for prometheus format output in server check
	PrometheusNamespace string
	// SocksProxy is a SOCKS5 proxy to use for NATS connections
	SocksProxy string
	// ColorScheme influence table colors and more based on ValidStyles()
	ColorScheme string
	// TlsFirst configures theTLSHandshakeFirst behavior in nats.go
	TlsFirst bool
}

Options configure the CLI

func ConfigureInApp

func ConfigureInApp(app *fisk.Application, cliOpts *Options, prepare bool, disable ...string) (*Options, error)

ConfigureInApp attaches the cli commands to app, prepare will load the context on demand and should be true unless override nats, manager and js context is given in a custom PreAction in the caller. Disable is a list of command names to skip.

func ConfigureInCommand

func ConfigureInCommand(cmd *fisk.CmdClause, cliOpts *Options, prepare bool, disable ...string) (*Options, error)

ConfigureInCommand attaches the cli commands to cmd, prepare will load the context on demand and should be true unless override nats, manager and js context is given in a custom PreAction in the caller. Disable is a list of command names to skip.

type SchemaValidator

type SchemaValidator struct{}

func (SchemaValidator) ValidateStruct

func (v SchemaValidator) ValidateStruct(data any, schemaType string) (ok bool, errs []string)

type SrvCheckCmd

type SrvCheckCmd struct {
	// contains filtered or unexported fields
}

type SrvClusterCmd added in v0.1.0

type SrvClusterCmd struct {
	// contains filtered or unexported fields
}

type SrvConfigCmd added in v0.1.0

type SrvConfigCmd struct {
	// contains filtered or unexported fields
}

type SrvInfoCmd

type SrvInfoCmd struct {
	// contains filtered or unexported fields
}

type SrvLsCmd

type SrvLsCmd struct {
	// contains filtered or unexported fields
}

type SrvMappingCmd added in v0.0.34

type SrvMappingCmd struct {
	// contains filtered or unexported fields
}

type SrvPasswdCmd

type SrvPasswdCmd struct {
	// contains filtered or unexported fields
}

type SrvPingCmd

type SrvPingCmd struct {
	// contains filtered or unexported fields
}

type SrvReportCmd

type SrvReportCmd struct {
	// contains filtered or unexported fields
}

type SrvRequestCmd

type SrvRequestCmd struct {
	// contains filtered or unexported fields
}

type SrvRunCmd

type SrvRunCmd struct {
	// contains filtered or unexported fields
}

type SrvRunConfig

type SrvRunConfig struct {
	Name                 string
	Port                 string
	UserPassword         string
	UserPasswordCrypt    string
	ServicePassword      string
	ServicePasswordCrypt string
	SystemPassword       string
	SystemPasswordCrypt  string
	ExtendDemoNetwork    bool
	ExtendWithContext    bool
	JetStream            bool
	JSDomain             string
	Verbose              bool
	Debug                bool
	StoreDir             string
	Clean                bool
	MonitorPort          int
	Context              *natscontext.Context
}

Jump to

Keyboard shortcuts

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