Compare commits

...

3 commits

Author SHA1 Message Date
a922c08eda git-ignore the created executable 2021-10-29 20:21:34 +02:00
65c9d16717 Add initial code
Enough to read and dump the config file
2021-10-29 20:21:25 +02:00
8433a06b18 Fix YAML syntax 2021-10-29 20:21:08 +02:00
5 changed files with 72 additions and 13 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
gerritcp

View file

@ -10,23 +10,23 @@ sites:
branch: chromeos-2016.05
authentication: cookie
cookieName: o
cookieValue: {somefunnystring}
cookieValue: "{somefunnystring}"
workstreams:
main:
neverModify:
util/crossgcc/
3rdparty/
util/nvidia/cbootimage/
.checkpatch.conf
.gitmodules
OWNERS
- util/crossgcc/
- 3rdparty/
- util/nvidia/cbootimage/
- .checkpatch.conf
- .gitmodules
- OWNERS
coreboot-sdk:
onlyIfTouching:
util/crossgcc/
- util/crossgcc/
neverModify:
3rdparty/
util/nvidia/cbootimage/
.checkpatch.conf
.gitmodules
OWNERS
- 3rdparty/
- util/nvidia/cbootimage/
- .checkpatch.conf
- .gitmodules
- OWNERS

50
gerritcp.go Normal file
View file

@ -0,0 +1,50 @@
package main
import (
"flag"
"fmt"
"os"
"gopkg.in/yaml.v2"
)
type Repo struct {
Url string `yaml:"url"`
Repo string `yaml:"repo"`
Branch string `yaml:"branch"`
Authentication string `yaml:"authentication"`
CookieName string `yaml:"cookieName"`
CookieValue string `yaml:"cookieValue"`
}
type Workstreams struct {
OnlyIfTouching []string `yaml:"onlyIfTouching"`
NeverModify []string `yaml:"neverModify"`
}
type configFormat struct {
Sites map[string]Repo `yaml:"sites"`
Workstreams map[string]Workstreams `yaml:"workstreams"`
}
func main() {
// dir := flag.String("dir", "repo", "path to local git repo")
configFile := flag.String("config", "config.yaml", "path to configuration")
flag.Parse()
file, err := os.Open(*configFile)
if err != nil {
panic(fmt.Sprintf("Could not open '%s': %s", *configFile, err))
}
defer file.Close()
config := new(configFormat)
configDecoder := yaml.NewDecoder(file)
err = configDecoder.Decode(&config)
if err != nil {
panic(fmt.Sprintf("Failed parsing '%s': %s", *configFile, err))
}
fmt.Println(config)
}

5
go.mod Normal file
View file

@ -0,0 +1,5 @@
module review.coreboot.org/gerritcp/v2
go 1.17
require gopkg.in/yaml.v2 v2.4.0

3
go.sum Normal file
View file

@ -0,0 +1,3 @@
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=