55 lines
869 B
Go
55 lines
869 B
Go
package main
|
|
|
|
import (
|
|
"io/ioutil"
|
|
"os"
|
|
"path/filepath"
|
|
|
|
"gopkg.in/yaml.v2"
|
|
)
|
|
|
|
func verifyTideliftYamlExists(directory string) bool {
|
|
os.Chdir(directory)
|
|
if _, err := os.Stat(".tidelift.yml"); err == nil {
|
|
return true
|
|
}
|
|
|
|
return false
|
|
}
|
|
|
|
func passesMinimumRequirements(directory string) string {
|
|
os.Chdir(directory)
|
|
filename, _ := filepath.Abs("./.tidelift.yml")
|
|
|
|
yamlFile, err := ioutil.ReadFile(filename)
|
|
check(err)
|
|
|
|
type TideliftYML struct {
|
|
TeamName string `yaml:"team-name"`
|
|
RepositoryName string `yaml:"repository-name"`
|
|
}
|
|
|
|
var yml TideliftYML
|
|
|
|
err = yaml.Unmarshal(yamlFile, &yml)
|
|
check(err)
|
|
|
|
// Check for Team name
|
|
if len(yml.TeamName) <= 0 {
|
|
return "team-name"
|
|
}
|
|
|
|
// Check for Repository Name
|
|
if len(yml.RepositoryName) <= 0 {
|
|
return "repository-name"
|
|
}
|
|
|
|
return ""
|
|
}
|
|
|
|
func check(e error) {
|
|
if e != nil {
|
|
panic(e)
|
|
}
|
|
}
|