Documentation
¶
Overview ¶
Package config manages the Glean CLI's configuration, providing secure storage of credentials using the system keyring with fallback to file-based storage.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ConfigPath string
ConfigPath is the path to the fallback config file.
var ServiceName = "glean-cli"
ServiceName is the service identifier used for keyring operations.
Functions ¶
func ClearConfig ¶
func ClearConfig() error
ClearConfig removes all stored configuration from both keyring and file storage.
func MaskToken ¶
MaskToken masks a token by showing only the first and last 4 characters and replacing the rest with asterisks.
func NormalizeHost ¶
NormalizeHost ensures the Glean host is in the correct format, transforming short names (e.g., "linkedin") to full hostnames (e.g., "linkedin-be.glean.com"). Full hostnames (containing a ".") are returned unchanged.
func SaveConfig ¶
SaveConfig stores host and token in both the system keyring and file storage. It returns an error only if both storage methods fail.
func ValidateAndTransformHost ¶
ValidateAndTransformHost is a compatibility wrapper around NormalizeHost.
Types ¶
type Config ¶
type Config struct {
GleanHost string `json:"host"`
GleanToken string `json:"token"`
OAuthClientID string `json:"oauth_client_id,omitempty"`
OAuthClientSecret string `json:"oauth_client_secret,omitempty"`
}
Config holds the Glean API credentials and connection settings.
func LoadConfig ¶
LoadConfig retrieves configuration using the following priority order:
- Environment variables (GLEAN_API_TOKEN, GLEAN_HOST)
- System keyring
- ~/.glean/config.json