config

package
v1.54.3 Latest Latest
Warning

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

Go to latest
Published: Mar 19, 2026 License: MIT Imports: 9 Imported by: 22

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ConfigControl

func ConfigControl(ctx ProcessContext, configCtx *ConfigContext, driverConfig *DriverConfig, drive ConfigDriver)

ConfigControl Setup initializes the directory structures in preparation for parsing templates.

Types

type ConfigContext

type ConfigContext struct {
	ResultMap            map[string]*string
	EnvSlice             []string
	ProjectSectionsSlice []string
	ResultChannel        chan *ResultData
	FileSysIndex         int
	DiffFileCount        int32
	EnvLength            int
	ConfigWg             sync.WaitGroup
	Mutex                *sync.Mutex
}

func (*ConfigContext) GetDiffFileCount

func (cfgContext *ConfigContext) GetDiffFileCount() int32

func (*ConfigContext) SetDiffFileCount

func (cfgContext *ConfigContext) SetDiffFileCount(cnt int)

type ConfigDriver

type ConfigDriver func(ctx ProcessContext, configCtx *ConfigContext, driverConfig *DriverConfig) (any, error)

type DriverConfig

type DriverConfig struct {
	CoreConfig *coreconfig.CoreConfig

	// Process context used by new tool implementations in callbacks.
	// Tools can attach their own context here for later access in
	// certain callbacks.
	Context ProcessContext

	// Internal systems...
	IsShellSubProcess bool // If subshell
	IsDrone           bool // If running as drone
	IsShellCommand    bool // If running from trcshcmd kernel plugin
	ShellRunner       func(*DriverConfig, string, string)

	FileFilter    []string // Which systems to operate on.
	SubPathFilter []string // Which subpaths to operate on.
	PathParam     string   // Path parameter for dynamic pathing...

	SecretMode bool
	// Tierceron source and destination I/O
	StartDir            []string // Starting directory. possibly multiple
	EndDir              string
	SubOutputMemCache   bool
	ReadMemCache        bool
	OutputMemCache      bool
	MemFs               trcshio.MemoryFileSystem
	CertPathOverrides   map[string]string // certFileName -> certDest
	OutputFileSystemDir string            // Optional: output to filesystem in addition to MemFs (KernelZ only)

	// Config modes....
	NoVault     bool // Working straight from seed files
	ZeroConfig  bool
	GenAuth     bool
	TrcShellRaw string   // Used for TrcShell
	Trcxe       []string // Used for TRCXE
	Trcxr       bool     // Used for TRCXR

	Clean  bool
	Update func(*ConfigContext, *string, string)

	// KeyStore Output tooling
	KeyStore         *keystore.KeyStore
	KeystorePassword string
	WantKeystore     string // If provided and non nil, pem files will be put into a java compatible keystore.

	// Diff tooling
	Diff          bool
	DiffCounter   int
	VersionInfo   func(map[string]any, bool, string, bool)
	VersionFilter []string

	// Vault Pathing....
	// This section stores information useful in directing I/O with Vault.
	ServicesWanted  []string // Once assigned, this should not be changed.
	ProjectSections []string
	SectionKey      string // Restricted or Index
	SectionName     string // extension provided name
	SubSectionName  string // extension provided subsection name
	SubSectionValue string
	ServiceFilter   []string // Which tables to use.

	DeploymentConfig         *map[string]any // For trcsh to indicate which deployment to work on
	DeploymentCtlMessageChan chan string
}

DriverConfig -- contains many structures necessary for Tierceron tool functionality.

type ProcessContext

type ProcessContext any

type ResultData

type ResultData struct {
	Done   bool
	InData *string
	InPath string
}

Jump to

Keyboard shortcuts

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