diff --git a/cmd/pop/eval.go b/cmd/pop/eval.go index 82e5de1..31dc4f0 100644 --- a/cmd/pop/eval.go +++ b/cmd/pop/eval.go @@ -29,9 +29,9 @@ func mixCmd() *cli.Command { var out interface{} = mix switch *system { case "alerts": - out = mix.PrometheusAlerts + out = map[string]interface{}{"groups": mix.PrometheusAlerts} case "rules": - out = mix.PrometheusRules + out = map[string]interface{}{"groups": mix.PrometheusRules} case "grafana": out = mix.GrafanaDashboards } diff --git a/pkg/pop/pop.go b/pkg/pop/pop.go index a801154..7ec1940 100644 --- a/pkg/pop/pop.go +++ b/pkg/pop/pop.go @@ -65,6 +65,10 @@ func (p Pop) Mixin() (*Mixin, error) { return nil, mixed.Err() } + if err := mixed.Validate(cue.Concrete(true)); err != nil { + return nil, err + } + mixin := mixer.LookupPath(cue.ParsePath("mixin")) m := Mixin{