diff options
| author | 韩丁康 <[email protected]> | 2023-12-19 20:19:26 +0800 |
|---|---|---|
| committer | 韩丁康 <[email protected]> | 2023-12-19 20:19:26 +0800 |
| commit | 800d6e26ba47d43b3369778db222472d6792e2d2 (patch) | |
| tree | 21500715e4ca9102636a9c5189a5d2181f916689 | |
| parent | a84c1f2ef9b6f3e53ac6cfb16b9dec034cbabc77 (diff) | |
删除owner信息生成功能
| -rw-r--r-- | coredns.go | 1 | ||||
| -rw-r--r-- | owners_generate.go | 89 |
2 files changed, 0 insertions, 90 deletions
@@ -1,7 +1,6 @@ package main //go:generate go run directives_generate.go -//go:generate go run owners_generate.go import ( _ "ohmydns/core/plugin" // Plug in CoreDNS. diff --git a/owners_generate.go b/owners_generate.go deleted file mode 100644 index ebae010..0000000 --- a/owners_generate.go +++ /dev/null @@ -1,89 +0,0 @@ -//go:build ignore - -// generates plugin/chaos/zowners.go. - -package main - -import ( - "bufio" - "fmt" - "log" - "os" - "sort" - "strings" -) - -func main() { - // top-level OWNERS file - o, err := owners("CODEOWNERS") - if err != nil { - log.Fatal(err) - } - - golist := `package chaos - -// Owners are all GitHub handlers of all maintainers. -var Owners = []string{` - c := ", " - for i, a := range o { - if i == len(o)-1 { - c = "}" - } - golist += fmt.Sprintf("%q%s", a, c) - } - // to prevent `No newline at end of file` with gofmt - golist += "\n" - - if err := os.WriteFile("plugin/chaos/zowners.go", []byte(golist), 0644); err != nil { - log.Fatal(err) - } - return -} - -func owners(path string) ([]string, error) { - // simple line, by line based format - // - // # In this example, @doctocat owns any files in the build/logs - // # directory at the root of the repository and any of its - // # subdirectories. - // /build/logs/ @doctocat - f, err := os.Open(path) - if err != nil { - return nil, err - } - scanner := bufio.NewScanner(f) - users := map[string]struct{}{} - for scanner.Scan() { - text := scanner.Text() - if len(text) == 0 { - continue - } - if text[0] == '#' { - continue - } - ele := strings.Fields(text) - if len(ele) == 0 { - continue - } - - // ok ele[0] is the path, the rest are (in our case) github usernames prefixed with @ - for _, s := range ele[1:] { - if len(s) <= 1 { - continue - } - users[s[1:]] = struct{}{} - } - } - if err := scanner.Err(); err != nil { - return nil, err - } - u := []string{} - for k := range users { - if strings.HasPrefix(k, "@") { - k = k[1:] - } - u = append(u, k) - } - sort.Strings(u) - return u, nil -} |
