Add Config Cache
This commit is contained in:
parent
2a7cc5d14f
commit
fc73cc3156
37
main.go
37
main.go
@ -1,7 +1,9 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
|
||||
"github.com/AlecAivazis/survey/v2"
|
||||
@ -21,16 +23,41 @@ type Cache struct {
|
||||
pullBaseBranch string `json:pullBaseBranch`
|
||||
}
|
||||
|
||||
func main() {
|
||||
func loadCache() (cache *Cache) {
|
||||
// default values
|
||||
var values = Cache{
|
||||
cache = &Cache{
|
||||
token: "XXXXXXXXXXXXXXXXXX",
|
||||
baseURL: "https://inf-git.fh-rosenheim.de",
|
||||
orgName: "vv-inf-sose21",
|
||||
baseURL: "https://gitlab.com",
|
||||
orgName: "organisation",
|
||||
repoExclude: "exclude*",
|
||||
pullBaseBranch: "devel*",
|
||||
}
|
||||
|
||||
data, err := ioutil.ReadFile(".cache.json")
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
var c Cache
|
||||
if err := json.Unmarshal(data, &c); err != nil {
|
||||
return
|
||||
}
|
||||
return &c
|
||||
}
|
||||
|
||||
func saveCache(cache *Cache) {
|
||||
data, err := json.Marshal(cache)
|
||||
if err != nil {
|
||||
fmt.Printf("ERROR: marshal cache: %v\n", err)
|
||||
}
|
||||
err = ioutil.WriteFile(".cache.json", data, 0666)
|
||||
if err != nil {
|
||||
fmt.Printf("ERROR: save cache: %v\n", err)
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
values := loadCache()
|
||||
|
||||
// ask for infos
|
||||
if err := survey.AskOne(&survey.Input{Message: "GitLab Base URL:", Default: values.baseURL}, &values.baseURL); err != nil {
|
||||
os.Exit(1)
|
||||
@ -48,6 +75,8 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
saveCache(values)
|
||||
|
||||
// Compile glob regex
|
||||
excludeRule, err := glob.Compile(values.repoExclude)
|
||||
if err != nil {
|
||||
|
Loading…
Reference in New Issue
Block a user