Add read-only configuration inspection commands
This commit is contained in:
@@ -31,10 +31,10 @@ func Validate(cfg *Config) error {
|
||||
return fmt.Errorf("session config is required")
|
||||
}
|
||||
|
||||
if err := validatePipeline(cfg.Pipeline); err != nil {
|
||||
if err := ValidatePipelineConfig(cfg.Pipeline); err != nil {
|
||||
return fmt.Errorf("pipeline config %q invalid: %w", shortName(cfg.PipelinePath, "pipeline.yml"), err)
|
||||
}
|
||||
if err := validateCampaign(cfg.Campaign); err != nil {
|
||||
if err := ValidateCampaignConfig(cfg.Campaign); err != nil {
|
||||
return fmt.Errorf("campaign config %q invalid: %w", shortName(cfg.CampaignPath, "campaign.yml"), err)
|
||||
}
|
||||
if err := validateSession(cfg.Session); err != nil {
|
||||
@@ -50,6 +50,23 @@ func Validate(cfg *Config) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
// ValidatePipelineConfig validates a loaded, defaulted pipeline without
|
||||
// requiring session configuration. Callers that require party-driven artifact
|
||||
// expansion must resolve a campaign first through LoadPipelineCampaign.
|
||||
func ValidatePipelineConfig(cfg *PipelineConfig) error {
|
||||
if cfg == nil {
|
||||
return fmt.Errorf("pipeline config is required")
|
||||
}
|
||||
return validatePipeline(cfg)
|
||||
}
|
||||
|
||||
// ValidateCampaignConfig validates a loaded campaign without requiring a
|
||||
// session. Party parsing and canonical-party checks remain owned by
|
||||
// LoadPipelineCampaign, which has the campaign source path available.
|
||||
func ValidateCampaignConfig(cfg *CampaignConfig) error {
|
||||
return validateCampaign(cfg)
|
||||
}
|
||||
|
||||
func validateCampaign(cfg *CampaignConfig) error {
|
||||
if cfg == nil {
|
||||
return fmt.Errorf("campaign config is required")
|
||||
|
||||
Reference in New Issue
Block a user