func()

in plugin/step/winsanitycheck/sanity_check.go [42:64]


func (s *SanityCheck) Execute() error {
	go2chef.GetGlobalLogger().Debugf(1, "executing sanity checks")
	checks := make(map[string]CheckFn)
	for _, en := range s.Enabled {
		if sc, ok := sanityCheckRegistry[en]; ok {
			checks[en] = sc
		} else {
			return fmt.Errorf("sanity check %s does not exist", en)
		}
	}
	for n, c := range checks {
		go2chef.GetGlobalLogger().Debugf(1, "running sanity check %s", n)
		fix, err := c(s)
		if err == ErrSanityCheckNeedsFix && fix != nil {
			if err := fix(s); err != nil {
				return err
			}
		} else {
			return err
		}
	}
	return nil
}