func ParseSuite(config string) (*Suite, error) {
	c, err := semver.NewConstraint(versionConstraint)
	if err != nil {
		return nil, err
	}

	f, err := ioutil.ReadFile(config)
	if err != nil {
		return nil, err
	}
	s := &Suite{}
	err = yaml.Unmarshal(f, s)
	if err != nil {
		return nil, err
	}
	s.Meta.Source = config

	v, err := semver.NewVersion(s.Meta.Schema.Version)
	if err != nil {
		return nil, err
	}
	if !c.Check(v) {
		return nil, ErrUnsupportedSchemaVersion
	}
	return s, nil
}
// ParseSuite loads a single compliance suite
ParseSuite loads a single compliance suite
// ParseSuite loads a single compliance suite
func ParseSuite(config string) (*Suite, error) {
	c, err := semver.NewConstraint(versionConstraint)
	if err != nil {
		return nil, err
	}
	f, err := ioutil.ReadFile(config)
	if err != nil {
		return nil, err
	}
	s := &Suite{}
	err = yaml.Unmarshal(f, s)
	if err != nil {
		return nil, err
	}
	s.Meta.Source = config
	v, err := semver.NewVersion(s.Meta.Schema.Version)
	if err != nil {
		return nil, err
	}
	if !c.Check(v) {
		return nil, ErrUnsupportedSchemaVersion
	}
	return s, nil
}
func ParseSuite ( config string ) ( * Suite , error ) { c , err := semver . NewConstraint ( versionConstraint ) if err != nil { return nil , err } f , err := ioutil . ReadFile ( config ) if err != nil { return nil , err } s := & Suite { } err = yaml . Unmarshal ( f , s ) if err != nil { return nil , err } s . Meta . Source = config v , err := semver . NewVersion ( s . Meta . Schema . Version ) if err != nil { return nil , err } if ! c . Check ( v ) { return nil , ErrUnsupportedSchemaVersion } return s , nil }
ParseSuite loads a single compliance suite
ParseSuite loads a single compliance suite