cli

package
v1.7.3 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2018 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAppNotPointer when app-instance not pointer to struct
	ErrAppNotPointer = errors.New("app must be a pointer to a struct")
	// ErrConfigNotPointer when app-instance not pointer to struct
	ErrConfigNotPointer = errors.New("config must be a pointer to a struct")
)

Functions

func Run added in v1.7.1

func Run(opts ...Option) error

Run creates instance of cli.App with Options. Validate options with https://github.com/go-playground/validator Required: - App instance - Logger

Types

type Instance

type Instance interface {
	Run(RunOptions) error
	Shutdown(ctx context.Context) error
}

Instance abstraction layer above Application

type MigrateOption

type MigrateOption func(o *MigrateOptions)

MigrateOption closure

func MigrateDirection

func MigrateDirection(direction MigrationDirection) MigrateOption

MigrateDirection closure to set field in MigrateOptions

func MigrateSteps

func MigrateSteps(steps int) MigrateOption

MigrateSteps closure to set field in MigrateOptions

type MigrateOptions

type MigrateOptions struct {
	Steps     int
	Direction MigrationDirection
}

MigrateOptions struct used for Migrate method

type MigrationDirection

type MigrationDirection int

MigrationDirection type

const (

	// MigrationUp to migrate step up
	MigrationUp MigrationDirection
	// MigrationDown to migrate step down
	MigrationDown
)

type MigrationLogger

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

MigrationLogger abstraction for migrate-logger

func NewMigrationLogger

func NewMigrationLogger(logger logger.Logger) MigrationLogger

NewMigrationLogger creates abstraction for migrate-logger

func (MigrationLogger) Printf

func (m MigrationLogger) Printf(format string, v ...interface{})

Printf implementation of migrate.Logger

func (MigrationLogger) Verbose

func (m MigrationLogger) Verbose() bool

Verbose implementation of migrate.Logger

type Option

type Option func(*Options)

Option closure

func App

func App(app Instance) Option

App closure to set field in Options

func BuildTime

func BuildTime(buildTime string) Option

BuildTime closure to set field in Options

func BuildVersion

func BuildVersion(buildVersion string) Option

BuildVersion closure to set field in Options

func Config added in v1.7.1

func Config(src, conf interface{}) Option

Config closure to set config source and interface in Options

func Debug added in v1.7.1

func Debug(args ...bool) Option

Debug closure to set debug and quiet state of logger in Options

func Logger

func Logger(log logger.Logger) Option

Logger closure to set field in Options

func Name

func Name(name string) Option

Name closure to set field in Options

func Usage

func Usage(descr string) Option

Usage closure to set field in Options

func Users

func Users(users []cli.Author) Option

Users closure to set field in Options

type Options

type Options struct {
	App             Instance      `validate:"required"`
	Logger          logger.Logger `validate:"required"`
	ConfigSource    interface{}   `validate:"required"`
	ConfigInterface interface{}   `validate:"required"`
	DB              *pg.DB
	Redis           *redis.Client
	Users           []cli.Author
	Debug           bool
	Quiet           bool
	Usage           string
	Name            string
	BuildTime       string
	BuildVersion    string
}

Options for creating cli.App instance

func (Options) Migrate

func (o Options) Migrate(opts ...MigrateOption) error

Migrate db using MigrateOptions

type RunOptions added in v1.7.1

type RunOptions struct {
	DB           *pg.DB
	Redis        *redis.Client
	Logger       logger.Logger
	Debug        bool
	BuildTime    string
	BuildVersion string
}

RunOptions for pass db, redis, etc to application:

Jump to

Keyboard shortcuts

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