config

package
v1.0.21 Latest Latest
Warning

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

Go to latest
Published: Sep 9, 2022 License: MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ConfPath = ""

Functions

This section is empty.

Types

type Config

type Config interface {
	ListEntries() map[string]interface{}
}

Config is the interface definition of generic config storage

type Env

type Env struct {
	Vars  []string
	Files map[string]*File
}

Env contains envrionment vars and file content and paths

type File

type File struct {
	Path    string
	Content string
}

File contains path and content of a file fetched from env by Kaigara

type KaigaraConfig

type KaigaraConfig struct {
	Storage      string `yaml:"secret_store" env:"KAIGARA_STORAGE_DRIVER" env-default:"sql"`
	DeploymentID string `yaml:"deployment_id" env:"KAIGARA_DEPLOYMENT_ID" env-default:"opendax_uat"`
	AppNames     string `yaml:"app_names" env:"KAIGARA_APP_NAME"`
	Scopes       string `yaml:"scopes" env:"KAIGARA_SCOPES" env-default:"public,private,secret"`

	VaultToken string `yaml:"vault_token" env:"KAIGARA_VAULT_TOKEN" env-default:"changeme"`
	VaultAddr  string `yaml:"vault_addr" env:"KAIGARA_VAULT_ADDR" env-default:"http://127.0.0.1:8200"`

	EncryptMethod string `yaml:"encryption_method" env:"KAIGARA_ENCRYPTOR" env-default:"plaintext"`
	AesKey        string `yaml:"aes_key" env:"KAIGARA_ENCRYPTOR_AES_KEY" env-default:"changemechangeme"`

	KubeConfig string `yaml:"kubeconfig" env:"KUBECONFIG"`

	LogLevel int                `yaml:"log_level" env:"KAIGARA_LOG_LEVEL" env-default:"1"`
	RedisURL string             `yaml:"redis_url" env:"KAIGARA_REDIS_URL"`
	DBConfig sql.DatabaseConfig `yaml:"database"`
}

KaigaraConfig contains cli options

func NewKaigaraConfig

func NewKaigaraConfig() (*KaigaraConfig, error)

Jump to

Keyboard shortcuts

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