Documentation ¶
Index ¶
- Constants
- Variables
- func AuthTokenFromEnv(hostname string) (string, string)
- func AuthTokenProvidedFromEnv() bool
- func ConfigDir() string
- func ConfigFile() string
- func DataDir() string
- func HomeDirPath(subdir string) (string, error)
- func HostsConfigFile() string
- func IsEnterpriseEnv(src string) bool
- func IsHostEnv(src string) bool
- func NewBlankRoot() *yaml.Node
- func StateDir() string
- func StubBackupConfig() func()
- func StubWriteConfig(wc io.Writer, wh io.Writer) func()
- func ValidateKey(key string) error
- func ValidateValue(key, value string) error
- type AliasConfig
- type Config
- type ConfigEntry
- type ConfigMap
- type ConfigOption
- type ConfigStub
- func (c ConfigStub) Aliases() (*AliasConfig, error)
- func (c ConfigStub) CheckWriteable(host, key string) error
- func (c ConfigStub) DefaultHost() (string, error)
- func (c ConfigStub) DefaultHostWithSource() (string, string, error)
- func (c ConfigStub) Get(host, key string) (string, error)
- func (c ConfigStub) GetWithSource(host, key string) (string, string, error)
- func (c ConfigStub) Hosts() ([]string, error)
- func (c ConfigStub) Set(host, key, value string) error
- func (c ConfigStub) UnsetHost(hostname string)
- func (c ConfigStub) Write() error
- type HostConfig
- type InvalidValueError
- type NotFoundError
- type ReadOnlyEnvError
Constants ¶
const ( GH_CONFIG_DIR = "GH_CONFIG_DIR" XDG_CONFIG_HOME = "XDG_CONFIG_HOME" XDG_STATE_HOME = "XDG_STATE_HOME" XDG_DATA_HOME = "XDG_DATA_HOME" APP_DATA = "AppData" LOCAL_APP_DATA = "LocalAppData" )
const ( GH_HOST = "GH_HOST" GH_TOKEN = "GH_TOKEN" GITHUB_TOKEN = "GITHUB_TOKEN" GH_ENTERPRISE_TOKEN = "GH_ENTERPRISE_TOKEN" GITHUB_ENTERPRISE_TOKEN = "GITHUB_ENTERPRISE_TOKEN" )
Variables ¶
var BackupConfigFile = func(filename string) error { return os.Rename(filename, filename+".bak") }
var ReadConfigFile = func(filename string) ([]byte, error) { f, err := os.Open(filename) if err != nil { return nil, pathError(err) } defer f.Close() data, err := ioutil.ReadAll(f) if err != nil { return nil, err } return data, nil }
var WriteConfigFile = func(filename string, data []byte) error { err := os.MkdirAll(filepath.Dir(filename), 0771) if err != nil { return pathError(err) } cfgFile, err := os.OpenFile(filename, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0600) if err != nil { return err } defer cfgFile.Close() _, err = cfgFile.Write(data) return err }
Functions ¶
func AuthTokenFromEnv ¶ added in v1.3.0
func AuthTokenProvidedFromEnv ¶ added in v1.3.1
func AuthTokenProvidedFromEnv() bool
func ConfigDir ¶
func ConfigDir() string
Config path precedence 1. GH_CONFIG_DIR 2. XDG_CONFIG_HOME 3. AppData (windows only) 4. HOME
func ConfigFile ¶
func ConfigFile() string
func DataDir ¶ added in v1.11.0
func DataDir() string
Data path precedence 1. XDG_DATA_HOME 2. LocalAppData (windows only) 3. HOME
func HomeDirPath ¶ added in v1.6.0
func HostsConfigFile ¶ added in v1.6.0
func HostsConfigFile() string
func IsEnterpriseEnv ¶ added in v1.14.0
func NewBlankRoot ¶ added in v0.11.0
func NewBlankRoot() *yaml.Node
func StateDir ¶ added in v1.11.0
func StateDir() string
State path precedence 1. XDG_CONFIG_HOME 2. LocalAppData (windows only) 3. HOME
func StubBackupConfig ¶
func StubBackupConfig() func()
func ValidateKey ¶ added in v1.2.1
func ValidateValue ¶ added in v1.2.1
Types ¶
type AliasConfig ¶ added in v0.10.0
func (*AliasConfig) Add ¶ added in v0.10.0
func (a *AliasConfig) Add(alias, expansion string) error
func (*AliasConfig) All ¶ added in v0.10.0
func (a *AliasConfig) All() map[string]string
func (*AliasConfig) Delete ¶ added in v0.10.0
func (a *AliasConfig) Delete(alias string) error
type Config ¶
type Config interface { Get(string, string) (string, error) GetWithSource(string, string) (string, string, error) Set(string, string, string) error UnsetHost(string) Hosts() ([]string, error) DefaultHost() (string, error) DefaultHostWithSource() (string, string, error) Aliases() (*AliasConfig, error) CheckWriteable(string, string) error Write() error }
This interface describes interacting with some persistent configuration for gh.
func InheritEnv ¶ added in v0.12.0
func NewBlankConfig ¶ added in v0.10.0
func NewBlankConfig() Config
NewBlankConfig initializes a config file pre-populated with comments and default values
func NewFromString ¶ added in v0.12.0
NewFromString initializes a Config from a yaml string
func ParseDefaultConfig ¶
type ConfigEntry ¶ added in v0.10.0
type ConfigEntry struct { KeyNode *yaml.Node ValueNode *yaml.Node Index int }
type ConfigMap ¶
type ConfigMap struct {
Root *yaml.Node
}
This type implements a low-level get/set config that is backed by an in-memory tree of Yaml nodes. It allows us to interact with a yaml-based config programmatically, preserving any comments that were present when the yaml was parsed.
func (*ConfigMap) FindEntry ¶
func (cm *ConfigMap) FindEntry(key string) (ce *ConfigEntry, err error)
func (*ConfigMap) RemoveEntry ¶ added in v0.10.0
func (*ConfigMap) SetStringValue ¶
type ConfigOption ¶ added in v1.2.0
type ConfigOption struct { Key string Description string DefaultValue string AllowedValues []string }
func ConfigOptions ¶ added in v1.2.0
func ConfigOptions() []ConfigOption
type ConfigStub ¶ added in v1.2.1
func (ConfigStub) Aliases ¶ added in v1.2.1
func (c ConfigStub) Aliases() (*AliasConfig, error)
func (ConfigStub) CheckWriteable ¶ added in v1.2.1
func (c ConfigStub) CheckWriteable(host, key string) error
func (ConfigStub) DefaultHost ¶ added in v1.8.0
func (c ConfigStub) DefaultHost() (string, error)
func (ConfigStub) DefaultHostWithSource ¶ added in v1.8.0
func (c ConfigStub) DefaultHostWithSource() (string, string, error)
func (ConfigStub) GetWithSource ¶ added in v1.2.1
func (c ConfigStub) GetWithSource(host, key string) (string, string, error)
func (ConfigStub) Hosts ¶ added in v1.2.1
func (c ConfigStub) Hosts() ([]string, error)
func (ConfigStub) Set ¶ added in v1.2.1
func (c ConfigStub) Set(host, key, value string) error
func (ConfigStub) UnsetHost ¶ added in v1.2.1
func (c ConfigStub) UnsetHost(hostname string)
func (ConfigStub) Write ¶ added in v1.2.1
func (c ConfigStub) Write() error
type HostConfig ¶
type InvalidValueError ¶ added in v1.2.0
type InvalidValueError struct {
ValidValues []string
}
func (InvalidValueError) Error ¶ added in v1.2.0
func (e InvalidValueError) Error() string
type NotFoundError ¶
type NotFoundError struct {
// contains filtered or unexported fields
}
type ReadOnlyEnvError ¶ added in v1.5.0
type ReadOnlyEnvError struct {
Variable string
}
func (*ReadOnlyEnvError) Error ¶ added in v1.5.0
func (e *ReadOnlyEnvError) Error() string