Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BootstrapStep ¶ added in v0.6.0
type BootstrapStep struct {
Name string `mapstructure:"name"`
Type string `mapstructure:"type"` // secret, command, check, etc.
Source string `mapstructure:"source"` // Where to fetch from (op://, sops://, etc.)
Target string `mapstructure:"target"` // Where to save (file path)
Mode string `mapstructure:"mode"` // File permissions (e.g., "0600")
Command string `mapstructure:"command"` // For type: command
Check string `mapstructure:"check"` // Command to check if step is needed
Optional bool `mapstructure:"optional"` // Skip if fails
}
BootstrapStep represents a single bootstrap operation
type Component ¶
type Component struct {
Stack string `json:"stack"`
Backend Backend `json:"backend"`
Appends map[string][]string `json:"appends"`
Name string `json:"name"`
Path string `json:"path"`
Inputs map[string]interface{} `json:"inputs"`
Providers map[string]interface{} `json:"providers"`
ProviderDependencies map[string]string `json:"provider_dependencies,omitempty"` // component -> stack mapping for failed dependencies
}
func (*Component) EnsurePath ¶ added in v0.1.0
copy component to workdir if needed
func (*Component) PropertyRef ¶ added in v0.1.0
property ref template to resolve later
type Config ¶
type Config struct {
LogLevel string `mapstructure:"log_level"`
Command string `mapstructure:"tf_command"`
StacksDir string `mapstructure:"stacks_dir"`
WorkDir string `mapstructure:"work_dir"`
GenerateBackend bool `mapstructure:"generate_backend"`
Env map[string]string `mapstructure:"env"`
Bootstrap []*BootstrapStep `mapstructure:"bootstrap"`
}
type KubeconfgCluster ¶ added in v0.3.0
type KubeconfgCluster struct {
Context string `json:"context"`
Host string `json:"host"`
Cert string `json:"cert"`
Token string `json:"token"` // Static token authentication
ExecApiVersion string `json:"exec_apiversion"`
ExecCommand string `json:"exec_command"`
ExecArgs interface{} `json:"exec_args"` // Can be []string or string (template)
}
type Kubeconfig ¶ added in v0.3.0
type Kubeconfig struct {
Current int `json:"current"`
Clusters []*KubeconfgCluster `json:"clusters"`
}
type OutputMeta ¶ added in v0.0.2
type OutputMeta struct {
Sensitive bool `json:"sensitive"`
Type json.RawMessage `json:"type"`
Value json.RawMessage `json:"value"`
}
func (*OutputMeta) String ¶ added in v0.1.0
func (o *OutputMeta) String() string
type Stack ¶
type Stack struct {
Path string `json:"path"`
Type string `json:"type"`
Name string `json:"name"`
Options any `json:"options"`
Metadata *Metadata `json:"metadata,omitempty"`
Backend Backend `json:"backend"`
Appends map[string][]string `json:"appends"`
Components []*Component `json:"components"`
Kubeconfig *Kubeconfig `json:"kubeconfig"`
Envs map[string]string `json:"envs,omitempty"` // Environment variables to set for this stack
}
func (*Stack) AddComponent ¶
func (*Stack) ApplyEnvs ¶ added in v0.7.0
func (s *Stack) ApplyEnvs() func()
ApplyEnvs sets the environment variables defined in this stack. Returns a cleanup function to restore the previous values.
func (*Stack) GetComponent ¶ added in v0.1.0
func (*Stack) GetComponents ¶ added in v0.1.0
type Stacks ¶
type Stacks struct {
// contains filtered or unexported fields
}
func (*Stacks) OrderByName ¶
Click to show internal directories.
Click to hide internal directories.