func validateMandatoryStringLists()

in internal/policygen/iam.go [243:261]


func validateMandatoryStringLists(instance map[string]interface{}, mandatoryFields []string) error {
	for _, k := range mandatoryFields {
		field, ok := instance[k]
		if !ok {
			return fmt.Errorf("mandatory field %q missing from instance: %v", k, instance)
		}
		lst, ok := field.([]interface{})
		if !ok {
			return fmt.Errorf("value for %q should be a []interface{}, got %T", k, field)
		}
		for _, s := range lst {
			if _, ok := s.(string); !ok {
				return fmt.Errorf("%q should be a string, got %T", s, s)
			}
		}

	}
	return nil
}