config

package
v1.0.22 Latest Latest
Warning

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

Go to latest
Published: Oct 28, 2021 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Interface

type Interface interface {
	Init() error
	ReadConfig(configFilePath string) error
	Set(key string, value interface{})
	SetDefault(key string, value interface{})
	SetOptionsFromAnswers(answerValues map[string]interface{})

	AllSettings() map[string]interface{}
	IsSet(key string) bool
	Get(key string) interface{}
	GetBool(key string) bool
	GetInt(key string) int
	GetString(key string) string
	GetStringSlice(key string) []string
	UnmarshalKey(key string, rawVal interface{}, decoderOpts ...viper.DecoderConfigOption) error

	GetProvidedAnswerList() ([]map[string]interface{}, error)
	InternalQuestionKeys() []string
	GetQuestion(questionKey string) (Question, error)
	GetQuestions() (map[string]Question, error)

	GetPacTemplate() (template.PacTemplate, error)
	GetConfigTemplates() (map[string]template.ConfigTemplate, error)
	GetActiveConfigTemplate() (template.ConfigTemplate, error)
	GetCustomTemplates() (map[string]template.FileTemplate, error)
	GetActiveCustomTemplates() ([]template.FileTemplate, error)
}

Create mock using: mockgen -source=pkg/config/interface.go -destination=pkg/config/mock/mock_config.go

func Create

func Create() (Interface, error)

type Question

type Question struct {
	Description  string                 `mapstructure:"description"`
	DefaultValue interface{}            `mapstructure:"default_value"`
	Schema       map[string]interface{} `mapstructure:"schema"`
}

func (*Question) GetType

func (q *Question) GetType() string

func (*Question) Required added in v1.0.4

func (q *Question) Required() bool

func (*Question) Validate

func (q *Question) Validate(questionKey string, answerValue interface{}) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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