MCPcopy Create free account
hub / github.com/chainloop-dev/chainloop / loadConfig

Method loadConfig

app/cli/internal/policydevel/lint.go:347–367  ·  view source on GitHub ↗

Attempts to load configuration in this order: 1. User-specified config 2. Default config Returns nil config if no config found at all

()

Source from the content-addressed store, hash-verified

345// 2. Default config
346// Returns nil config if no config found at all
347func (p *PolicyToLint) loadConfig() (*config.Config, error) {
348 // 1. Try user-specified config first
349 if p.Config != "" {
350 userCfg, err := config.FromPath(p.Config)
351 if err == nil {
352 return &userCfg, nil
353 }
354 // If user config fails, we'll fall through to default config
355 userErr := fmt.Errorf("failed to load user config from %q: %w (using default config)", p.Config, err)
356
357 // Continue to try default config
358 defaultCfg, defaultErr := p.loadDefaultConfig()
359 if defaultErr == nil {
360 return defaultCfg, userErr
361 }
362 return nil, fmt.Errorf("%w; also %w", userErr, defaultErr)
363 }
364
365 // 2. No user config specified - try default config
366 return p.loadDefaultConfig()
367}
368
369func (p *PolicyToLint) loadDefaultConfig() (*config.Config, error) {
370 cfgData, err := regalConfigFS.ReadFile(".regal.yaml")

Callers 1

runRegalLinterMethod · 0.95

Calls 1

loadDefaultConfigMethod · 0.95

Tested by

no test coverage detected