Browse Source

bailout on incompatible duration format (#1326)

Thibault "bui" Koechlin 3 years ago
parent
commit
5a15f9b39b
1 changed files with 8 additions and 0 deletions
  1. 8 0
      pkg/csconfig/profiles.go

+ 8 - 0
pkg/csconfig/profiles.go

@@ -4,6 +4,7 @@ import (
 	"fmt"
 	"fmt"
 	"io"
 	"io"
 	"os"
 	"os"
+	"time"
 
 
 	"github.com/antonmedv/expr"
 	"github.com/antonmedv/expr"
 	"github.com/antonmedv/expr/vm"
 	"github.com/antonmedv/expr/vm"
@@ -71,6 +72,13 @@ func (c *LocalApiServerCfg) LoadProfiles() error {
 			}
 			}
 			c.Profiles[pIdx].DebugFilters[fIdx] = debugFilter
 			c.Profiles[pIdx].DebugFilters[fIdx] = debugFilter
 		}
 		}
+
+		for _, decision := range profile.Decisions {
+			if _, err := time.ParseDuration(*decision.Duration); err != nil {
+				return errors.Wrapf(err, "Error parsing duration '%s' of %s", *decision.Duration, profile.Name)
+			}
+		}
+
 	}
 	}
 	if len(c.Profiles) == 0 {
 	if len(c.Profiles) == 0 {
 		return fmt.Errorf("zero profiles loaded for LAPI")
 		return fmt.Errorf("zero profiles loaded for LAPI")