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