Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ConfigExists ¶
ConfigExists checks if a configuration file exists at the given path
func GetDefaultConfigPath ¶
GetDefaultConfigPath returns the default configuration file path
func WriteConfig ¶
WriteConfig writes the configuration to a file with proper permissions It creates the directory if it doesn't exist and uses atomic write for safety
Types ¶
type AuthConfig ¶
AuthConfig contains authentication settings
type Config ¶
type Config struct {
GitLab GitLabConfig `yaml:"gitlab"`
Auth AuthConfig `yaml:"auth"`
Validation ValidationConfig `yaml:"validation"`
Output OutputConfig `yaml:"output"`
}
Config represents the application configuration
type ConfigFlags ¶
type ConfigFlags struct {
ConfigFile string
Token string
Netrc bool
Instance string
Timeout string
Project string
SkipAPI bool
Strict bool
Output string
Verbose bool
Color string
}
ConfigFlags represents CLI flag values
type GitLabConfig ¶
type GitLabConfig struct {
Instance string `yaml:"instance"`
Timeout time.Duration `yaml:"timeout"`
}
GitLabConfig contains GitLab instance settings
type Loader ¶
type Loader struct {
// contains filtered or unexported fields
}
Loader handles loading configuration from multiple sources with priority
func NewLoader ¶
func NewLoader(flags *ConfigFlags) *Loader
NewLoader creates a new configuration loader
type OutputConfig ¶
type OutputConfig struct {
Format string `yaml:"format"` // text, json, yaml
Verbose bool `yaml:"verbose"`
Color string `yaml:"color"` // auto, always, never
}
OutputConfig contains output formatting settings
type ValidationConfig ¶
type ValidationConfig struct {
SkipAPI bool `yaml:"skip_api"`
Strict bool `yaml:"strict"`
Project string `yaml:"project"`
}
ValidationConfig contains validation behavior settings