generator

package
v1.5.0 Latest Latest
Warning

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

Go to latest
Published: Aug 19, 2022 License: MIT Imports: 13 Imported by: 5

Documentation

Overview

*

  • Azure KeyVault implementation

*

Index

Constants

View Source
const (

	// AWS SecretsManager prefix
	SecretMgrPrefix = "AWSSECRETS"
	// AWS Parameter Store prefix
	ParamStorePrefix = "AWSPARAMSTR"
	// Azure Key Vault Secrets prefix
	AzKeyVaultSecretsPrefix = "AZKVSECRET"
)

Variables

View Source
var (
	// default varPrefix used by the replacer function
	// any token msut beging with one of these else
	// it will be skipped as not a replaceable token
	VarPrefix = map[string]bool{SecretMgrPrefix: true, ParamStorePrefix: true, AzKeyVaultSecretsPrefix: true}
)

Functions

This section is empty.

Types

type DefaultStrategy

type DefaultStrategy struct {
}

func NewDefatultStrategy

func NewDefatultStrategy() *DefaultStrategy

type GenVars

type GenVars struct {
	Generatoriface
	// contains filtered or unexported fields
}

GenVars is the main struct holding the strategy patterns iface any initialised config if overridded with withers as well as the final outString and the initial rawMap which wil be passed in a loop into a goroutine to perform the relevant strategy network calls to the config store implementations

func NewGenerator

func NewGenerator() *GenVars

NewGenerator returns a new instance of Generator with a default strategy pattern wil be overwritten during the first run of a found tokens map

func (*GenVars) Config added in v1.3.0

func (c *GenVars) Config() *GenVarsConfig

Config gets Config on the GenVars

func (*GenVars) ConfigOutputPath added in v1.4.2

func (c *GenVars) ConfigOutputPath() string

ConfigOutputPath returns the output path set on GenVars create withconfig or default value

func (*GenVars) ConvertToExportVar

func (c *GenVars) ConvertToExportVar() []string

ConvertToExportVar assigns the k/v out as unix style export key=val pairs separated by `\n`

func (*GenVars) FlushToFile

func (c *GenVars) FlushToFile(w io.Writer) error

FlushToFile saves contents to file provided in the config input into the generator default location is ./app.env

func (*GenVars) Generate

func (c *GenVars) Generate(tokens []string) (ParsedMap, error)

Generate generates a k/v map of the tokens with their corresponding secret/paramstore values the standard pattern of a token should follow a path like

func (*GenVars) StrToFile added in v1.3.0

func (c *GenVars) StrToFile(w io.Writer, str string) error

StrToFile

func (*GenVars) WithConfig

func (c *GenVars) WithConfig(cfg *GenVarsConfig) *GenVars

WithConfig uses custom config

type GenVarsConfig

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

GenVarsConfig defines the input config object to be passed

func NewConfig

func NewConfig() *GenVarsConfig

NewConfig

func (*GenVarsConfig) WithKeySeparator

func (c *GenVarsConfig) WithKeySeparator(keySeparator string) *GenVarsConfig

WithKeySeparator adds a custom key separotor

func (*GenVarsConfig) WithOutputPath

func (c *GenVarsConfig) WithOutputPath(out string) *GenVarsConfig

WithOutputPath

func (*GenVarsConfig) WithTokenSeparator

func (c *GenVarsConfig) WithTokenSeparator(tokenSeparator string) *GenVarsConfig

WithTokenSeparator adds a custom token separator token is the actual value of the parameter/secret in the provider store

type GenVarsPublicConfig added in v1.4.2

type GenVarsPublicConfig struct {
	Outpath        string
	TokenSeparator string
	KeySeparator   string
}

this is a bit pointless GenVarsConfig defines the input config object to be passed

type Generatoriface

type Generatoriface interface {
	Generate(tokens []string) (ParsedMap, error)
	ConvertToExportVar() []string
	FlushToFile(w io.Writer) error
	StrToFile(w io.Writer, str string) error
}

Generatoriface describes the exported methods on the GenVars struct.

type KvScrtStore added in v1.2.0

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

func NewKvScrtStore added in v1.2.0

func NewKvScrtStore(ctx context.Context) (*KvScrtStore, error)

NewKvScrtStore returns a KvScrtStore requires `AZURE_SUBSCRIPTION_ID` environment variable to be present to successfully work

func NewKvScrtStoreWithToken added in v1.2.0

func NewKvScrtStoreWithToken(ctx context.Context, token, tokenSeparator, keySeparator string) (*KvScrtStore, error)

NewKvScrtStoreWithToken returns a KvScrtStore requires `AZURE_SUBSCRIPTION_ID` environment variable to be present to successfully work

type ParamStore

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

func NewParamStore

func NewParamStore(ctx context.Context) (*ParamStore, error)

type ParsedMap

type ParsedMap map[string]any

ParsedMap is the internal working object definition and the return type if results are not flushed to file

type SecretsMgr

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

func NewSecretsMgr

func NewSecretsMgr(ctx context.Context) (*SecretsMgr, error)

Jump to

Keyboard shortcuts

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