Documentation ¶
Index ¶
- func CreateComponentStackMap(stacksBasePath string, terraformComponentsBasePath string, ...) (map[string]map[string][]string, error)
- func FindComponentDependencies(stack string, componentType string, component string, baseComponents []string, ...) ([]string, error)
- func FindComponentStacks(componentType string, component string, baseComponent string, ...) ([]string, error)
- func FindComponentsDerivedFromBaseComponents(stack string, allComponents map[string]any, baseComponents []string) ([]string, error)
- func ProcessBaseComponentConfig(baseComponentConfig *cfg.BaseComponentConfig, allComponentsMap map[any]any, ...) error
- func ProcessStackConfig(stacksBasePath string, terraformComponentsBasePath string, ...) (map[any]any, error)
- func ProcessYAMLConfigFile(basePath string, filePath string, importsConfig map[string]map[any]any, ...) (map[any]any, map[string]map[any]any, map[any]any, error)
- func ProcessYAMLConfigFiles(stacksBasePath string, terraformComponentsBasePath string, ...) ([]string, map[string]any, map[string]map[string]any, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CreateComponentStackMap ¶
func CreateComponentStackMap( stacksBasePath string, terraformComponentsBasePath string, helmfileComponentsBasePath string, filePath string, ) (map[string]map[string][]string, error)
CreateComponentStackMap accepts a config file and creates a map of component-stack dependencies
func FindComponentDependencies ¶
func FindComponentDependencies( stack string, componentType string, component string, baseComponents []string, stackImports map[string]map[any]any) ([]string, error)
FindComponentDependencies finds all imports where the component or the base component(s) are defined Component depends on the imported config file if any of the following conditions is true:
- The imported config file has any of the global `backend`, `backend_type`, `env`, `remote_state_backend`, `remote_state_backend_type`, `settings` or `vars` sections which are not empty.
- The imported config file has the component type section, which has any of the `backend`, `backend_type`, `env`, `remote_state_backend`, `remote_state_backend_type`, `settings` or `vars` sections which are not empty.
- The imported config file has the "components" section, which has the component type section, which has the component section.
- The imported config file has the "components" section, which has the component type section, which has the base component(s) section, and the base component section is defined inline (not imported).
func FindComponentStacks ¶
func FindComponentStacks( componentType string, component string, baseComponent string, componentStackMap map[string]map[string][]string) ([]string, error)
FindComponentStacks finds all infrastructure stack config files where the component or the base component is defined
func FindComponentsDerivedFromBaseComponents ¶ added in v1.4.15
func FindComponentsDerivedFromBaseComponents( stack string, allComponents map[string]any, baseComponents []string, ) ([]string, error)
FindComponentsDerivedFromBaseComponents finds all components that derive from the given base components
func ProcessBaseComponentConfig ¶ added in v1.4.15
func ProcessBaseComponentConfig( baseComponentConfig *cfg.BaseComponentConfig, allComponentsMap map[any]any, component string, stack string, baseComponent string, componentBasePath string, checkBaseComponentExists bool, baseComponents *[]string, ) error
ProcessBaseComponentConfig processes base component(s) config
func ProcessStackConfig ¶ added in v1.4.15
func ProcessStackConfig( stacksBasePath string, terraformComponentsBasePath string, helmfileComponentsBasePath string, stack string, config map[any]any, processStackDeps bool, processComponentDeps bool, componentTypeFilter string, componentStackMap map[string]map[string][]string, importsConfig map[string]map[any]any, checkBaseComponentExists bool, ) (map[any]any, error)
ProcessStackConfig takes a raw stack config, deep-merges all variables, settings, environments and backends, and returns the final stack configuration for all Terraform and helmfile components
func ProcessYAMLConfigFile ¶
func ProcessYAMLConfigFile( basePath string, filePath string, importsConfig map[string]map[any]any, context map[string]any, ignoreMissingFiles bool, ) ( map[any]any, map[string]map[any]any, map[any]any, error, )
ProcessYAMLConfigFile takes a path to a YAML stack config file, recursively processes and deep-merges all imports, and returns the final stack config
func ProcessYAMLConfigFiles ¶
func ProcessYAMLConfigFiles( stacksBasePath string, terraformComponentsBasePath string, helmfileComponentsBasePath string, filePaths []string, processStackDeps bool, processComponentDeps bool, ignoreMissingFiles bool, ) ( []string, map[string]any, map[string]map[string]any, error, )
ProcessYAMLConfigFiles takes a list of paths to stack config files, processes and deep-merges all imports, and returns a list of stack configs
Types ¶
This section is empty.