func Load(env envconfig.Env) *Gitlab { config := env.String("REMOTE_CONFIG", "") url_, err := url.Parse(config) if err != nil { panic(err) } params := url_.Query() url_.RawQuery = "" gitlab := Gitlab{} gitlab.URL = url_.String() gitlab.Client = params.Get("client_id") gitlab.Secret = params.Get("client_secret") gitlab.AllowedOrgs = params["orgs"] gitlab.SkipVerify, _ = strconv.ParseBool(params.Get("skip_verify")) gitlab.Open, _ = strconv.ParseBool(params.Get("open")) switch params.Get("clone_mode") { case "oauth": gitlab.CloneMode = "oauth" default: gitlab.CloneMode = "token" } // this is a temp workaround gitlab.Search, _ = strconv.ParseBool(params.Get("search")) return &gitlab }
func Load(env envconfig.Env) *Github { config := env.String("REMOTE_CONFIG", "") // parse the remote DSN configuration string url_, err := url.Parse(config) if err != nil { log.Fatalln("unable to parse remote dsn. %s", err) } params := url_.Query() url_.Path = "" url_.RawQuery = "" // create the Githbub remote using parameters from // the parsed DSN configuration string. github := Github{} github.URL = url_.String() github.Client = params.Get("client_id") github.Secret = params.Get("client_secret") github.Orgs = params["orgs"] github.PrivateMode, _ = strconv.ParseBool(params.Get("private_mode")) github.SkipVerify, _ = strconv.ParseBool(params.Get("skip_verify")) github.Open, _ = strconv.ParseBool(params.Get("open")) github.GitSSH, _ = strconv.ParseBool(params.Get("ssh")) if github.URL == DefaultURL { github.API = DefaultAPI } else { github.API = github.URL + "/api/v3/" } return &github }
// Load opens a new database connection with the specified driver // and connection string specified in the environment variables. func Load(env envconfig.Env) store.Store { var ( driver = env.String("DATABASE_DRIVER", "sqlite3") config = env.String("DATABASE_CONFIG", "drone.sqlite") ) log.Infof("using database driver %s", driver) log.Infof("using database config %s", config) return New(driver, config) }
func Load(env envconfig.Env) *Gogs { config := env.String("REMOTE_CONFIG", "") // parse the remote DSN configuration string url_, err := url.Parse(config) if err != nil { log.Fatalln("unable to parse remote dsn. %s", err) } params := url_.Query() url_.RawQuery = "" // create the Githbub remote using parameters from // the parsed DSN configuration string. gogs := Gogs{} gogs.URL = url_.String() gogs.PrivateMode, _ = strconv.ParseBool(params.Get("private_mode")) gogs.SkipVerify, _ = strconv.ParseBool(params.Get("skip_verify")) gogs.Open, _ = strconv.ParseBool(params.Get("open")) return &gogs }
func Load(env envconfig.Env) *Server { return &Server{ Addr: env.String("SERVER_ADDR", ":8000"), Cert: env.String("SERVER_CERT", ""), Key: env.String("SERVER_KEY", ""), } }
func Load(env envconfig.Env) *Bitbucket { config := env.String("REMOTE_CONFIG", "") // parse the remote DSN configuration string url_, err := url.Parse(config) if err != nil { log.Fatalln("unable to parse remote dsn. %s", err) } params := url_.Query() url_.Path = "" url_.RawQuery = "" // create the Githbub remote using parameters from // the parsed DSN configuration string. bitbucket := Bitbucket{} bitbucket.Client = params.Get("client_id") bitbucket.Secret = params.Get("client_secret") bitbucket.Orgs = params["orgs"] bitbucket.Open, _ = strconv.ParseBool(params.Get("open")) return &bitbucket }