config

package
v0.2.9 Latest Latest
Warning

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

Go to latest
Published: Dec 10, 2021 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PathForConfigEnvVar          = "CONFIG_PATH"
	LoginEnvVar                  = "RPORT_USER"
	PasswordEnvVar               = "RPORT_PASSWORD"
	ServerURLEnvVar              = "RPORT_SERVER_URL"
	SessionValiditySecondsEnvVar = "SESSION_VALIDITY_SECONDS"
)
View Source
const (
	ServerURL        = "server"
	Login            = "login"
	Token            = "token"
	Password         = "password"
	DefaultServerURL = "http://localhost:3000"
)
View Source
const (
	BoolRequirementType   = "bool"
	StringRequirementType = "string"
	IntRequirementType    = "int"
)

Variables

View Source
var RequiredValidate = func(fieldName string, val interface{}) error {
	valStr, ok := val.(string)
	if val == nil || (ok && valStr == "") || fmt.Sprint(val) == "" {
		return fmt.Errorf("value '%s' is required and cannot be empty", fieldName)
	}
	return nil
}

RequiredValidate validation logic for required field

Functions

func CheckRequirementsError added in v0.0.6

func CheckRequirementsError(params *options.ParameterBag, requirementsToCheck []ParameterRequirement) error

func CollectParamsFromCommandAndPromptAndEnv added in v0.1.10

func CollectParamsFromCommandAndPromptAndEnv(
	c *cobra.Command,
	reqs []ParameterRequirement,
	promptReader PromptReader,
	altValuesProvider options.ValuesProvider,
) (vp options.ValuesProvider, err error)

func CreateEnvValuesProvider added in v0.1.2

func CreateEnvValuesProvider() options.ValuesProvider

func CreateFileValuesProvider added in v0.1.2

func CreateFileValuesProvider() (options.ValuesProvider, error)

func CreateFlagValuesProvider added in v0.2.3

func CreateFlagValuesProvider(flags *pflag.FlagSet) options.ValuesProvider

func DefineCommandInputs added in v0.0.11

func DefineCommandInputs(c *cobra.Command, reqs []ParameterRequirement)

func DeleteConfig added in v0.2.5

func DeleteConfig() (err error)

func FromValues

func FromValues(inputParams map[string]string) (vp *options.ParameterBag)

func LoadParamsFromFileAndEnv added in v0.0.14

func LoadParamsFromFileAndEnv(flags *pflag.FlagSet) (params *options.ParameterBag)

func LoadParamsFromFileAndEnvAndFlagsAndPrompt added in v0.1.2

func LoadParamsFromFileAndEnvAndFlagsAndPrompt(
	c *cobra.Command,
	reqs []ParameterRequirement,
	promptReader PromptReader,
) (params *options.ParameterBag, err error)

func PromptRequiredValues

func PromptRequiredValues(
	missedRequirements []ParameterRequirement,
	targetKV map[string]interface{},
	promptReader PromptReader,
) error

func WriteConfig

func WriteConfig(params *options.ParameterBag) (err error)

WriteConfig will write config values to file system

Types

type FlagValuesProvider added in v0.2.3

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

func (*FlagValuesProvider) Dump added in v0.2.3

func (fvp *FlagValuesProvider) Dump(w io.Writer) (err error)

func (*FlagValuesProvider) Read added in v0.2.3

func (fvp *FlagValuesProvider) Read(name string) (val interface{}, found bool)

func (*FlagValuesProvider) ToKeyValues added in v0.2.3

func (fvp *FlagValuesProvider) ToKeyValues() map[string]interface{}

type ParameterRequirement

type ParameterRequirement struct {
	Field       string
	ShortName   string
	Help        string
	Validate    Validate
	IsEnabled   func(providedParams *options.ParameterBag) bool
	Default     interface{}
	Description string
	IsSecure    bool
	IsRequired  bool
	Type        string
}

ParameterRequirement contains information about a parameter requirement

func CheckRequirements

func CheckRequirements(params *options.ParameterBag, requirementsToCheck []ParameterRequirement) []ParameterRequirement

CheckRequirements reads parameters which are missing in the configuration or having a default value

type PromptReader

type PromptReader interface {
	ReadString() (string, error)
	ReadPassword() (string, error)
	Output(text string)
}

type Validate

type Validate func(fieldName string, val interface{}) error

Validate validation callback

Jump to

Keyboard shortcuts

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