// GetString returns a config value as a string. func (c *LiveConfig) GetString(ns, key string) (string, error) { if ns == NSRoot { return viper.GetString(key), nil } nskey := fmt.Sprintf("%s.%s", ns, key) if _, ok := viper.AllSettings()[fmt.Sprintf("%s.required", nskey)]; ok { if viper.GetString(nskey) == "" { return "", NewMissingArgsErr(nskey) } } return viper.GetString(nskey), nil }
// GetGodoClient returns a GodoClient. func (c *LiveConfig) GetGodoClient() *godo.Client { token := viper.GetString("access-token") tokenSource := &TokenSource{AccessToken: token} oauthClient := oauth2.NewClient(oauth2.NoContext, tokenSource) return godo.NewClient(oauthClient) }