Move to CODEOWNERS (#3489)
* Move to CODEOWNERS No change in who own what; just a move to CODEOWNERS. This allows dreck cleanups. Added .dreck.yaml for alias and exec. Fixes: #3486 Signed-off-by: Miek Gieben <miek@miek.nl> * stickler bot Signed-off-by: Miek Gieben <miek@miek.nl> * sort the file Signed-off-by: Miek Gieben <miek@miek.nl>
This commit is contained in:
parent
d56dbffa95
commit
24176a97e6
44 changed files with 98 additions and 306 deletions
11
.dreck.yaml
Normal file
11
.dreck.yaml
Normal file
|
@ -0,0 +1,11 @@
|
|||
features:
|
||||
- aliases
|
||||
- exec
|
||||
|
||||
aliases:
|
||||
- |
|
||||
/plugin (.*) -> /label plugin/$1
|
||||
- |
|
||||
/wai -> /label works as intended
|
||||
- |
|
||||
/release (.*) -> /exec /opt/bin/release-coredns $1
|
44
CODEOWNERS
Normal file
44
CODEOWNERS
Normal file
|
@ -0,0 +1,44 @@
|
|||
# @miekg, miek@miek.nl, project lead: 11/11/2020
|
||||
|
||||
* @bradbeam @chrisohaver @dilyevsky @fastest963 @greenpau @grobie @isolus @johnbelamaric @miekg @pmoroney @rajansandeep @stp-ip @superq @yongtang
|
||||
|
||||
/plugin/acl/ @miekg @ihac
|
||||
/plugin/any/ @miekg
|
||||
/plugin/auto/ @miekg @stp-ip
|
||||
/plugin/autopath/ @chrisohaver @miekg
|
||||
/plugin/azure/ @miekg @yongtang @darshanime
|
||||
/plugin/bind/ @miekg
|
||||
/plugin/bufsize/ @ykhr53
|
||||
/plugin/cache/ @grobie @miekg
|
||||
/plugin/cancel/ @miekg
|
||||
/plugin/chaos/ @miekg
|
||||
/plugin/clouddns/ @miekg @yongtang
|
||||
/plugin/dnssec/ @isolus @miekg
|
||||
/plugin/dnstap/ @varyoo @yongtang
|
||||
/plugin/erratic/ @miekg
|
||||
/plugin/errors/ @miekg
|
||||
/plugin/etcd/ @miekg @nitisht
|
||||
/plugin/file/ @miekg @yongtang @stp-ip
|
||||
/plugin/forward/ @grobie @johnbelamaric @miekg @rdrozhdzh
|
||||
/plugin/grpc/ @inigohu @miekg
|
||||
/plugin/health/ @fastest963 @miekg
|
||||
/plugin/hosts/ @johnbelamaric @pmoroney
|
||||
/plugin/k8s_external/ @miekg
|
||||
/plugin/kubernetes/ @bradbeam @chrisohaver @johnbelamaric @miekg @rajansandeep @yongtang
|
||||
/plugin/loadbalance/ @miekg
|
||||
/plugin/log/ @miekg @nchrisdk
|
||||
/plugin/loop/ @miekg @chrisohaver
|
||||
/plugin/metadata/ @ekleiner @miekg
|
||||
/plugin/metrics/ @fastest963 @miekg @superq @greenpau
|
||||
/plugin/nsid/ @yongtang
|
||||
/plugin/pprof/ @miekg
|
||||
/plugin/reload/ @johnbelamaric
|
||||
/plugin/rewrite/ @greenpau @johnbelamaric
|
||||
/plugin/root/ @miekg
|
||||
/plugin/route53/ @yongtang @dilyevsky
|
||||
/plugin/secondary/ @bradbeam @miekg
|
||||
/plugin/template/ @rtreffer
|
||||
/plugin/tls/ @johnbelamaric
|
||||
/plugin/trace/ @johnbelamaric
|
||||
/plugin/transfer/ @miekg @chrisohaver
|
||||
/plugin/whoami/ @miekg @chrisohaver
|
32
OWNERS
32
OWNERS
|
@ -1,32 +0,0 @@
|
|||
approvers:
|
||||
- bradbeam
|
||||
- chrisohaver # Infoblox | cohaver@infoblox.com
|
||||
- dilyevsky
|
||||
- fastest963
|
||||
- greenpau
|
||||
- grobie
|
||||
- isolus
|
||||
- johnbelamaric
|
||||
- miekg # miek@miek.nl | project lead: 11/11/2020
|
||||
- pmoroney
|
||||
- rajansandeep
|
||||
- stp-ip
|
||||
- superq
|
||||
- yongtang
|
||||
|
||||
features:
|
||||
- comments
|
||||
- reviewers
|
||||
- aliases
|
||||
- branches
|
||||
- exec
|
||||
|
||||
aliases:
|
||||
- |
|
||||
/plugin: (.*) -> /label add: plugin/$1
|
||||
- |
|
||||
/approve -> /lgtm
|
||||
- |
|
||||
/wai -> /label add: works as intended
|
||||
- |
|
||||
/release: (.*) -> /exec: /opt/bin/release-coredns $1
|
|
@ -5,58 +5,29 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"log"
|
||||
"os"
|
||||
"path"
|
||||
"path/filepath"
|
||||
"sort"
|
||||
|
||||
"gopkg.in/yaml.v2"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func main() {
|
||||
o := map[string]struct{}{}
|
||||
|
||||
// top-level OWNERS file
|
||||
o, err := owners("OWNERS", o)
|
||||
o, err := owners("CODEOWNERS")
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// each of the plugins, in case someone is not in the top-level one
|
||||
err = filepath.Walk("plugin",
|
||||
func(p string, i os.FileInfo, err error) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if i.IsDir() {
|
||||
return nil
|
||||
}
|
||||
if path.Base(p) != "OWNERS" {
|
||||
return nil
|
||||
}
|
||||
o, err = owners(p, o)
|
||||
return err
|
||||
})
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
// sort it and format it
|
||||
list := []string{}
|
||||
for k := range o {
|
||||
list = append(list, k)
|
||||
}
|
||||
sort.Strings(list)
|
||||
golist := `package chaos
|
||||
|
||||
// Owners are all GitHub handlers of all maintainers.
|
||||
var Owners = []string{`
|
||||
c := ", "
|
||||
for i, a := range list {
|
||||
if i == len(list)-1 {
|
||||
for i, a := range o {
|
||||
if i == len(o)-1 {
|
||||
c = "}"
|
||||
}
|
||||
golist += fmt.Sprintf("%q%s", a, c)
|
||||
|
@ -70,27 +41,50 @@ var Owners = []string{`
|
|||
return
|
||||
}
|
||||
|
||||
// owners parses a owner file without knowing a whole lot about its structure.
|
||||
func owners(path string, owners map[string]struct{}) (map[string]struct{}, error) {
|
||||
file, err := ioutil.ReadFile(path)
|
||||
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
|
||||
}
|
||||
c := yaml.MapSlice{}
|
||||
err = yaml.Unmarshal(file, &c)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
for _, mi := range c {
|
||||
key, ok := mi.Key.(string)
|
||||
if !ok {
|
||||
scanner := bufio.NewScanner(f)
|
||||
users := map[string]struct{}{}
|
||||
for scanner.Scan() {
|
||||
text := scanner.Text()
|
||||
if len(text) == 0 {
|
||||
continue
|
||||
}
|
||||
if key == "approvers" {
|
||||
for _, k := range mi.Value.([]interface{}) {
|
||||
owners[k.(string)] = struct{}{}
|
||||
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{}{}
|
||||
}
|
||||
}
|
||||
return owners, nil
|
||||
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
|
||||
}
|
||||
|
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- ihac
|
||||
approvers:
|
||||
- miekg
|
||||
- ihac
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,5 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- stp-ip
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- chrisohaver
|
||||
- miekg
|
||||
approvers:
|
||||
- chrisohaver
|
||||
- miekg
|
|
@ -1,8 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- yongtang
|
||||
- darshanime
|
||||
approvers:
|
||||
- miekg
|
||||
- yongtang
|
||||
- darshanime
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- ykhr53
|
||||
approvers:
|
||||
- ykhr53
|
6
plugin/cache/OWNERS
vendored
6
plugin/cache/OWNERS
vendored
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- grobie
|
||||
- miekg
|
||||
approvers:
|
||||
- grobie
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- yongtang
|
||||
approvers:
|
||||
- miekg
|
||||
- yongtang
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- isolus
|
||||
- miekg
|
||||
approvers:
|
||||
- isolus
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- varyoo
|
||||
- yongtang
|
||||
approvers:
|
||||
- varyoo
|
||||
- yongtang
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- nitisht
|
||||
approvers:
|
||||
- miekg
|
||||
- nitisht
|
|
@ -1,7 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- yongtang
|
||||
- stp-ip
|
||||
approvers:
|
||||
- miekg
|
||||
- yongtang
|
|
@ -1,10 +0,0 @@
|
|||
reviewers:
|
||||
- grobie
|
||||
- johnbelamaric
|
||||
- miekg
|
||||
- rdrozhdzh
|
||||
approvers:
|
||||
- grobie
|
||||
- johnbelamaric
|
||||
- rdrozhdzh
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- inigohu
|
||||
- miekg
|
||||
approvers:
|
||||
- inigohu
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- fastest963
|
||||
- miekg
|
||||
approvers:
|
||||
- fastest963
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- johnbelamaric
|
||||
- pmoroney
|
||||
approvers:
|
||||
- johnbelamaric
|
||||
- pmoroney
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,14 +0,0 @@
|
|||
reviewers:
|
||||
- bradbeam
|
||||
- chrisohaver
|
||||
- johnbelamaric
|
||||
- miekg
|
||||
- rajansandeep
|
||||
- yongtang
|
||||
approvers:
|
||||
- bradbeam
|
||||
- chrisohaver
|
||||
- johnbelamaric
|
||||
- miekg
|
||||
- rajansandeep
|
||||
- yongtang
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- nchrisdk
|
||||
approvers:
|
||||
- miekg
|
||||
- nchrisdk
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- chrisohaver
|
||||
approvers:
|
||||
- miekg
|
||||
- chrisohaver
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- ekleiner
|
||||
- miekg
|
||||
approvers:
|
||||
- ekleiner
|
||||
- miekg
|
|
@ -1,9 +0,0 @@
|
|||
reviewers:
|
||||
- fastest963
|
||||
- miekg
|
||||
- superq
|
||||
- greenpau
|
||||
approvers:
|
||||
- fastest963
|
||||
- miekg
|
||||
- superq
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- yongtang
|
||||
approvers:
|
||||
- yongtang
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- johnbelamaric
|
||||
approvers:
|
||||
- johnbelamaric
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- greenpau
|
||||
- johnbelamaric
|
||||
approvers:
|
||||
- greenpau
|
||||
- johnbelamaric
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
approvers:
|
||||
- miekg
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- yongtang
|
||||
- dilyevsky
|
||||
approvers:
|
||||
- yongtang
|
||||
- dilyevsky
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- bradbeam
|
||||
- miekg
|
||||
approvers:
|
||||
- bradbeam
|
||||
- miekg
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- rtreffer
|
||||
approvers:
|
||||
- rtreffer
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- johnbelamaric
|
||||
approvers:
|
||||
- johnbelamaric
|
|
@ -1,4 +0,0 @@
|
|||
reviewers:
|
||||
- johnbelamaric
|
||||
approvers:
|
||||
- johnbelamaric
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- chrisohaver
|
||||
approvers:
|
||||
- miekg
|
||||
- chrisohaver
|
|
@ -1,6 +0,0 @@
|
|||
reviewers:
|
||||
- miekg
|
||||
- chrisohaver
|
||||
approvers:
|
||||
- miekg
|
||||
- chrisohaver
|
Loading…
Add table
Reference in a new issue