From 73f1688e419258406628a74bb367497c2aff4657 Mon Sep 17 00:00:00 2001 From: zzjc1234 <2359047351@qq.com> Date: Mon, 23 Sep 2024 12:57:17 +0800 Subject: [PATCH] fix: filter stages --- cmd/joj3/conf.go | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/cmd/joj3/conf.go b/cmd/joj3/conf.go index 544c9d0..bcf28d8 100644 --- a/cmd/joj3/conf.go +++ b/cmd/joj3/conf.go @@ -85,11 +85,25 @@ func parseConfFile(path string, jobtype JobType) (conf Conf, err error) { slog.Error("parse stages conf", "error", err) return } + + if err = d.Validate(&conf); err != nil { + slog.Error("validate stages conf", "error", err) + return + } + + filteredStages := []Stage{} + for _, stage := range conf.Stages { + if filterStage(stage, jobtype) { + filteredStages = append(filteredStages, stage) + } + } + + conf.Stages = filteredStages + return } -func filterStage(stage Stage, jobtype JobType, -) bool { +func filterStage(stage Stage, jobtype JobType) bool { switch jobtype { case HC: return stage.Name == "healthcheck"